summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks
diff options
context:
space:
mode:
authorQt by Nokia <qt-info@nokia.com>2011-04-27 12:05:43 +0200
committeraxis <qt-info@nokia.com>2011-04-27 12:05:43 +0200
commit38be0d13830efd2d98281c645c3a60afe05ffece (patch)
tree6ea73f3ec77f7d153333779883e8120f82820abe /tests/benchmarks
Initial import from the monolithic Qt.
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12
Diffstat (limited to 'tests/benchmarks')
-rw-r--r--tests/benchmarks/README81
-rw-r--r--tests/benchmarks/benchmarks.pro13
-rw-r--r--tests/benchmarks/corelib/codecs/codecs.pro3
-rw-r--r--tests/benchmarks/corelib/codecs/qtextcodec/main.cpp185
-rw-r--r--tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro16
-rw-r--r--tests/benchmarks/corelib/codecs/qtextcodec/utf-8.txt72
-rw-r--r--tests/benchmarks/corelib/corelib.pro17
-rw-r--r--tests/benchmarks/corelib/io/io.pro9
-rw-r--r--tests/benchmarks/corelib/io/qdir/10000/10000.pro10
-rw-r--r--tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp198
-rw-r--r--tests/benchmarks/corelib/io/qdir/qdir.pro2
-rw-r--r--tests/benchmarks/corelib/io/qdir/tree/4.6.0-list.txt11963
-rw-r--r--tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp240
-rw-r--r--tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.qrc5
-rw-r--r--tests/benchmarks/corelib/io/qdir/tree/tree.pro11
-rw-r--r--tests/benchmarks/corelib/io/qdiriterator/main.cpp251
-rwxr-xr-xtests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro23
-rw-r--r--tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp678
-rw-r--r--tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h99
-rw-r--r--tests/benchmarks/corelib/io/qfile/main.cpp684
-rw-r--r--tests/benchmarks/corelib/io/qfile/qfile.pro7
-rw-r--r--tests/benchmarks/corelib/io/qfileinfo/main.cpp125
-rw-r--r--tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro12
-rw-r--r--tests/benchmarks/corelib/io/qiodevice/main.cpp107
-rwxr-xr-xtests/benchmarks/corelib/io/qiodevice/qiodevice.pro13
-rw-r--r--tests/benchmarks/corelib/io/qtemporaryfile/main.cpp103
-rw-r--r--tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro12
-rw-r--r--tests/benchmarks/corelib/io/qurl/main.cpp244
-rw-r--r--tests/benchmarks/corelib/io/qurl/qurl.pro7
-rw-r--r--tests/benchmarks/corelib/kernel/events/events.pro8
-rw-r--r--tests/benchmarks/corelib/kernel/events/main.cpp187
-rw-r--r--tests/benchmarks/corelib/kernel/kernel.pro7
-rw-r--r--tests/benchmarks/corelib/kernel/qmetaobject/main.cpp264
-rw-r--r--tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro5
-rw-r--r--tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro7
-rw-r--r--tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp285
-rw-r--r--tests/benchmarks/corelib/kernel/qobject/main.cpp185
-rw-r--r--tests/benchmarks/corelib/kernel/qobject/object.cpp68
-rw-r--r--tests/benchmarks/corelib/kernel/qobject/object.h76
-rw-r--r--tests/benchmarks/corelib/kernel/qobject/qobject.pro9
-rw-r--r--tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro12
-rw-r--r--tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp96
-rw-r--r--tests/benchmarks/corelib/kernel/qvariant/qvariant.pro11
-rw-r--r--tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp272
-rw-r--r--tests/benchmarks/corelib/plugin/plugin.pro2
-rw-r--r--tests/benchmarks/corelib/plugin/quuid/quuid.pro6
-rw-r--r--tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp66
-rw-r--r--tests/benchmarks/corelib/thread/qmutex/qmutex.pro6
-rw-r--r--tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp452
-rw-r--r--tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro6
-rw-r--r--tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp124
-rw-r--r--tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro5
-rw-r--r--tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp210
-rw-r--r--tests/benchmarks/corelib/thread/thread.pro3
-rw-r--r--tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro9
-rw-r--r--tests/benchmarks/corelib/tools/containers-associative/main.cpp142
-rw-r--r--tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro9
-rw-r--r--tests/benchmarks/corelib/tools/containers-sequential/main.cpp265
-rw-r--r--tests/benchmarks/corelib/tools/qbytearray/main.cpp92
-rwxr-xr-xtests/benchmarks/corelib/tools/qbytearray/qbytearray.pro12
-rw-r--r--tests/benchmarks/corelib/tools/qhash/data.txt195
-rw-r--r--tests/benchmarks/corelib/tools/qhash/outofline.cpp90
-rw-r--r--tests/benchmarks/corelib/tools/qhash/qhash.pro6
-rw-r--r--tests/benchmarks/corelib/tools/qhash/qhash_string.cpp131
-rw-r--r--tests/benchmarks/corelib/tools/qhash/qhash_string.h52
-rw-r--r--tests/benchmarks/corelib/tools/qrect/main.cpp329
-rw-r--r--tests/benchmarks/corelib/tools/qrect/qrect.pro12
-rw-r--r--tests/benchmarks/corelib/tools/qregexp/main.cpp594
-rw-r--r--tests/benchmarks/corelib/tools/qregexp/qregexp.pro21
-rw-r--r--tests/benchmarks/corelib/tools/qregexp/qregexp.qrc6
-rw-r--r--tests/benchmarks/corelib/tools/qstring/data.cpp1281
-rw-r--r--tests/benchmarks/corelib/tools/qstring/data.h70
-rw-r--r--tests/benchmarks/corelib/tools/qstring/fromlatin1.cpp43065
-rw-r--r--tests/benchmarks/corelib/tools/qstring/fromutf8.cpp28567
-rw-r--r--tests/benchmarks/corelib/tools/qstring/generatelist.pl198
-rw-r--r--tests/benchmarks/corelib/tools/qstring/generatelist_char.pl208
-rw-r--r--tests/benchmarks/corelib/tools/qstring/main.cpp2601
-rw-r--r--tests/benchmarks/corelib/tools/qstring/qstring.pro20
-rw-r--r--tests/benchmarks/corelib/tools/qstring/utf-8.txt72
-rw-r--r--tests/benchmarks/corelib/tools/qstringbuilder/main.cpp433
-rw-r--r--tests/benchmarks/corelib/tools/qstringbuilder/qstringbuilder.pro12
-rw-r--r--tests/benchmarks/corelib/tools/qstringlist/.gitignore1
-rw-r--r--tests/benchmarks/corelib/tools/qstringlist/main.cpp218
-rw-r--r--tests/benchmarks/corelib/tools/qstringlist/qstringlist.pro8
-rw-r--r--tests/benchmarks/corelib/tools/qvector/main.cpp390
-rw-r--r--tests/benchmarks/corelib/tools/qvector/outofline.cpp81
-rw-r--r--tests/benchmarks/corelib/tools/qvector/qrawvector.h742
-rw-r--r--tests/benchmarks/corelib/tools/qvector/qvector.pro6
-rw-r--r--tests/benchmarks/corelib/tools/tools.pro11
-rw-r--r--tests/benchmarks/dbus/dbus.pro4
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/.gitignore2
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/qdbusperformance.pro4
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/server/server.cpp64
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/server/server.pro5
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/serverobject.h115
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/test/test.pro7
-rw-r--r--tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp230
-rw-r--r--tests/benchmarks/dbus/qdbustype/main.cpp115
-rw-r--r--tests/benchmarks/dbus/qdbustype/qdbustype.pro8
-rw-r--r--tests/benchmarks/gui/animation/animation.pro2
-rw-r--r--tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp61
-rw-r--r--tests/benchmarks/gui/animation/qanimation/dummyanimation.h60
-rw-r--r--tests/benchmarks/gui/animation/qanimation/dummyobject.cpp66
-rw-r--r--tests/benchmarks/gui/animation/qanimation/dummyobject.h64
-rw-r--r--tests/benchmarks/gui/animation/qanimation/main.cpp191
-rw-r--r--tests/benchmarks/gui/animation/qanimation/qanimation.pro18
-rw-r--r--tests/benchmarks/gui/animation/qanimation/rectanimation.cpp94
-rw-r--r--tests/benchmarks/gui/animation/qanimation/rectanimation.h70
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.pro71
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.qrc85
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp805
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_001_58x58.pngbin0 -> 6598 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_002_58x58.pngbin0 -> 6687 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_003_58x58.pngbin0 -> 6261 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_004_58x58.pngbin0 -> 6783 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_005_58x58.pngbin0 -> 6317 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_006_58x58.pngbin0 -> 7020 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_007_58x58.pngbin0 -> 3706 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_008_58x58.pngbin0 -> 6749 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_009_58x58.pngbin0 -> 5436 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_010_58x58.pngbin0 -> 1454 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_001_58x58.pngbin0 -> 2983 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_002_58x58.pngbin0 -> 3463 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_003_58x58.pngbin0 -> 763 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_004_58x58.pngbin0 -> 2252 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_005_58x58.pngbin0 -> 2451 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_001_58x58.pngbin0 -> 6330 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_002_58x58.pngbin0 -> 6237 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_003_58x58.pngbin0 -> 6192 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_004_58x58.pngbin0 -> 7489 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_005_58x58.pngbin0 -> 6764 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_006_58x58.pngbin0 -> 6218 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_007_58x58.pngbin0 -> 6122 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_008_58x58.pngbin0 -> 6658 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_009_58x58.pngbin0 -> 8293 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_010_58x58.pngbin0 -> 4783 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_360x640px.svg14
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_horisontal_640x360px.svg16
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_default_icon_52x52px.svg22
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_divider_360x76px.svg7
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_highlighter_360x76px.svg10
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_idle_33x33px.svg55
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_offline_33x33px.svg55
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_online_33x33px.svg56
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scroll_16x80px.svg39
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scrollbar_7x14px.svg7
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_left_14x24px.svg24
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_middle_14x24px.svg11
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_right_14x24px.svg13
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_356x96px.svg2007
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_horisontal_636x96px.svg4060
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_default_icon_68x68px.svg22
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_idle_38x38px.svg55
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_offline_38x38px.svg55
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_online_38x38px.svg55
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/areacodes.txt62
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesF.txt100
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesM.txt100
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/lastnames.txt150
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_360x640px.svg40
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_horisontal_640x360px.svg39
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_53x53px.svg30
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_highlight_53x53px.svg31
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_divider_360x76px.svg7
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_highlighter_357x80px.svg11
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_idle_27x47.svg63
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_offline_27x47.svg58
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_online_27x47.svg63
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scroll_5x80px.svg12
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scrollbar_5x14px.svg7
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_left_14x24px.svg30
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_middle_10x24px.svg18
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_right_14x24px.svg19
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_356x96px.svg26
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_horisontal_636x96px.svg26
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_default_icon_84x68px.svg32
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_idle_24x24px.svg53
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_offline_24x24px.svg53
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_online_24x24px.svg53
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp401
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h111
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp443
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h118
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp249
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h101
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp117
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h96
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp85
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h72
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp209
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h102
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp196
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h52
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp141
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h72
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp59
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h58
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp169
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h96
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp275
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h85
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.pri19
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp79
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h67
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp98
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h76
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp314
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h109
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp92
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h69
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp211
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h92
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp146
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h82
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp132
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h87
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp344
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h123
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp202
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h84
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp147
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h83
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h97
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp299
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h97
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp305
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h79
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h103
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp59
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h116
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp164
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h80
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp500
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h92
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp240
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h134
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp53
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h64
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp359
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h126
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp304
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h81
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h99
-rw-r--r--tests/benchmarks/gui/graphicsview/functional/functional.pro3
-rw-r--r--tests/benchmarks/gui/graphicsview/graphicsview.pro8
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/qgraphicsanchorlayout.pro6
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp433
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsitem/qgraphicsitem.pro5
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp246
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro6
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp133
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsscene/qgraphicsscene.pro6
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp259
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp176
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.debugbin0 -> 863805 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h68
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.pro19
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/fileprint.pngbin0 -> 1456 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/images.qrc10
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp57
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp87
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h66
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/qt4logo.pngbin0 -> 48333 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateleft.pngbin0 -> 1754 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateright.pngbin0 -> 1732 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp264
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h86
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomin.pngbin0 -> 1622 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomout.pngbin0 -> 1601 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp112
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/moveItems.pro1
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp152
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/scrolltest.pro1
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp182
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h68
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp144
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h85
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.pri12
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/images.qrc5
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/qt4logo.pngbin0 -> 48333 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/images/designer.pngbin0 -> 4205 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine-big.jpegbin0 -> 12249 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine.jpegbin0 -> 2265 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.pro16
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.qrc9
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/random.databin0 -> 800 bytes
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp917
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicswidget/qgraphicswidget.pro6
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp94
-rw-r--r--tests/benchmarks/gui/gui.pro18
-rw-r--r--tests/benchmarks/gui/image/blendbench/blendbench.pro8
-rw-r--r--tests/benchmarks/gui/image/blendbench/main.cpp227
-rw-r--r--tests/benchmarks/gui/image/image.pro7
-rw-r--r--tests/benchmarks/gui/image/qimageconversion/qimageconversion.pro10
-rw-r--r--tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp108
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/16bpp.bmpbin0 -> 153654 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/4bpp-rle.bmpbin0 -> 23662 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.jpgbin0 -> 3699 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.pngbin0 -> 230 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/YCbCr_rgb.jpgbin0 -> 2045 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/away.pngbin0 -> 753 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/ball.mngbin0 -> 34394 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/bat1.gifbin0 -> 953 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/bat2.gifbin0 -> 980 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/beavis.jpgbin0 -> 20688 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/black.pngbin0 -> 697 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/black.xpm65
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/colorful.bmpbin0 -> 65002 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt-colors.xpm26
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt-data.tifbin0 -> 8590 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt-pixels.xpm7
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt.bmpbin0 -> 116 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt.gifbin0 -> 2608 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt.jpgbin0 -> 18 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt.mngbin0 -> 183 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt.pngbin0 -> 95 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/corrupt.xbm5
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/crash-signed-char.bmpbin0 -> 45748 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/earth.gifbin0 -> 51712 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/fire.mngbin0 -> 44430 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/font.bmpbin0 -> 1026 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/gnus.xbm622
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/image.pbm8
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/image.pgm10
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/image.pngbin0 -> 549 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/image.ppm7
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/kollada-noextbin0 -> 13907 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/kollada.pngbin0 -> 13907 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/marble.xpm470
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/namedcolors.xpm18
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/negativeheight.bmpbin0 -> 24630 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/noclearcode.bmpbin0 -> 326 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/noclearcode.gifbin0 -> 130 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/nontransparent.xpm788
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/rgba_adobedeflate_littleendian.tifbin0 -> 4784 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/rgba_lzw_littleendian.tifbin0 -> 26690 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_bigendian.tifbin0 -> 160384 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_littleendian.tifbin0 -> 160388 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/rgba_packbits_littleendian.tifbin0 -> 161370 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/rgba_zipdeflate_littleendian.tifbin0 -> 14728 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/runners.ppmbin0 -> 960016 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/task210380.jpgbin0 -> 975535 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/teapot.ppm31
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/test.ppm2
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/test.xpm260
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/transparent.xpm788
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/trolltech.gifbin0 -> 42629 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/tst7.bmpbin0 -> 582 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/images/tst7.pngbin0 -> 167 bytes
-rw-r--r--tests/benchmarks/gui/image/qimagereader/qimagereader.pro27
-rw-r--r--tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp244
-rw-r--r--tests/benchmarks/gui/image/qpixmap/qpixmap.pro5
-rw-r--r--tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp315
-rw-r--r--tests/benchmarks/gui/image/qpixmapcache/qpixmapcache.pro6
-rw-r--r--tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp226
-rw-r--r--tests/benchmarks/gui/itemviews/itemviews.pro3
-rw-r--r--tests/benchmarks/gui/itemviews/qtableview/qtableview.pro6
-rw-r--r--tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp367
-rw-r--r--tests/benchmarks/gui/kernel/kernel.pro4
-rw-r--r--tests/benchmarks/gui/kernel/qapplication/main.cpp71
-rw-r--r--tests/benchmarks/gui/kernel/qapplication/qapplication.pro10
-rw-r--r--tests/benchmarks/gui/kernel/qguimetatype/qguimetatype.pro6
-rw-r--r--tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp113
-rw-r--r--tests/benchmarks/gui/kernel/qguivariant/qguivariant.pro6
-rw-r--r--tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp111
-rw-r--r--tests/benchmarks/gui/kernel/qwidget/qwidget.pro4
-rw-r--r--tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp260
-rw-r--r--tests/benchmarks/gui/math3d/math3d.pro4
-rw-r--r--tests/benchmarks/gui/math3d/qmatrix4x4/qmatrix4x4.pro6
-rw-r--r--tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp672
-rw-r--r--tests/benchmarks/gui/math3d/qquaternion/qquaternion.pro6
-rw-r--r--tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp124
-rw-r--r--tests/benchmarks/gui/painting/painting.pro7
-rw-r--r--tests/benchmarks/gui/painting/qpainter/qpainter.pro5
-rw-r--r--tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp1666
-rw-r--r--tests/benchmarks/gui/painting/qregion/main.cpp139
-rw-r--r--tests/benchmarks/gui/painting/qregion/qregion.pro10
-rw-r--r--tests/benchmarks/gui/painting/qtbench/benchmarktests.h841
-rw-r--r--tests/benchmarks/gui/painting/qtbench/qtbench.pro6
-rw-r--r--tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp254
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/qtracebench.pro10
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/qtracebench.qrc10
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/traces/basicdrawing.tracebin0 -> 366739 bytes
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/traces/creator.tracebin0 -> 541031 bytes
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/traces/qmlphoneconcept.tracebin0 -> 337439 bytes
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/traces/qmlsamegame.tracebin0 -> 246423 bytes
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/traces/textedit.tracebin0 -> 60042 bytes
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/traces/webkit.tracebin0 -> 451391 bytes
-rw-r--r--tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp262
-rw-r--r--tests/benchmarks/gui/painting/qtransform/qtransform.pro6
-rw-r--r--tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp592
-rw-r--r--tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp201
-rw-r--r--tests/benchmarks/gui/styles/qstylesheetstyle/qstylesheetstyle.pro11
-rw-r--r--tests/benchmarks/gui/styles/styles.pro3
-rw-r--r--tests/benchmarks/gui/text/qfontmetrics/main.cpp112
-rw-r--r--tests/benchmarks/gui/text/qfontmetrics/qfontmetrics.pro5
-rw-r--r--tests/benchmarks/gui/text/qtext/bidi.txt4
-rw-r--r--tests/benchmarks/gui/text/qtext/main.cpp500
-rw-r--r--tests/benchmarks/gui/text/qtext/qtext.pro14
-rw-r--r--tests/benchmarks/gui/text/text.pro4
-rw-r--r--tests/benchmarks/network/access/access.pro5
-rw-r--r--tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp196
-rw-r--r--tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/qfile_vs_qnetworkaccessmanager.pro13
-rw-r--r--tests/benchmarks/network/access/qnetworkdiskcache/qnetworkdiskcache.pro15
-rw-r--r--tests/benchmarks/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp435
-rw-r--r--tests/benchmarks/network/access/qnetworkreply/qnetworkreply.pro13
-rw-r--r--tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp744
-rw-r--r--tests/benchmarks/network/kernel/kernel.pro3
-rw-r--r--tests/benchmarks/network/kernel/qhostinfo/main.cpp120
-rwxr-xr-xtests/benchmarks/network/kernel/qhostinfo/qhostinfo.pro13
-rw-r--r--tests/benchmarks/network/network.pro13
-rw-r--r--tests/benchmarks/network/socket/qtcpserver/qtcpserver.pro13
-rw-r--r--tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp280
-rw-r--r--tests/benchmarks/network/socket/socket.pro3
-rw-r--r--tests/benchmarks/network/ssl/qsslsocket/qsslsocket.pro13
-rw-r--r--tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp114
-rw-r--r--tests/benchmarks/network/ssl/ssl.pro3
-rw-r--r--tests/benchmarks/opengl/main.cpp430
-rw-r--r--tests/benchmarks/opengl/opengl.pro12
-rw-r--r--tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp92
-rw-r--r--tests/benchmarks/plugins/imageformats/jpeg/jpeg.pro18
-rw-r--r--tests/benchmarks/plugins/imageformats/jpeg/n900.jpegbin0 -> 19016 bytes
-rw-r--r--tests/benchmarks/trusted-benchmarks.pri11
423 files changed, 133776 insertions, 0 deletions
diff --git a/tests/benchmarks/README b/tests/benchmarks/README
new file mode 100644
index 0000000000..d437299fee
--- /dev/null
+++ b/tests/benchmarks/README
@@ -0,0 +1,81 @@
+The most reliable way of running benchmarks is to do it in an otherwise idle
+system. On a busy system, the results will vary according to the other tasks
+demanding attention in the system.
+
+We have managed to obtain quite reliable results by doing the following on
+Linux (and you need root):
+
+ - switching the scheduler to a Real-Time mode
+ - setting the processor affinity to one single processor
+ - disabling the other thread of the same core
+
+This should work rather well for CPU-intensive tasks. A task that is in Real-
+Time mode will simply not be preempted by the OS. But if you make OS syscalls,
+especially I/O ones, your task will be de-scheduled. Note that this includes
+page faults, so if you can, make sure your benchmark's warmup code paths touch
+most of the data.
+
+To do this you need a tool called schedtool (package schedtool), from
+http://freequaos.host.sk/schedtool/
+
+From this point on, we are using CPU0 for all tasks:
+
+If you have a Hyperthreaded multi-core processor (Core-i5 and Core-i7), you
+have to disable the other thread of the same core as CPU0. To discover which
+one it is:
+
+$ cat /sys/devices/system/cpu/cpu0/topology/thread_siblings_list
+
+This will print something like 0,4, meaning that CPUs 0 and 4 are sibling
+threads on the same core. So we'll turn CPU 4 off:
+
+(as root)
+# echo 0 > /sys/devices/system/cpu/cpu4/online
+
+To turn it back on, echo 1 into the same file.
+
+To run a task on CPU 0 exclusively, using FIFO RT priority 10, you run the
+following:
+
+(as root)
+# schedtool -F -p 10 -a 1 -e ./taskname
+
+For example:
+# schedtool -F -p 10 -a 1 -e ./tst_bench_qstring -tickcounter
+
+Warning: if your task livelocks or takes far too long to complete, your system
+may be unusable for a long time, especially if you don't have other cores to
+run stuff on. To prevent that, run it before schedtool and time it.
+
+You can also limit the CPU time that the task is allowed to take. Run in the
+same shell as you'll run schedtool:
+
+$ ulimit -s 300
+To limit to 300 seconds (5 minutes)
+
+If your task runs away, it will get a SIGXCPU after consuming 5 minutes of CPU
+time (5 minutes running at 100%).
+
+If your app is multithreaded, you may want to give it more CPUs, like CPU0 and
+CPU1 with -a 3 (it's a bitmask).
+
+For best results, you should disable ALL other cores and threads of the same
+processor. The new Core-i7 have one processor with 4 cores,
+each core can run 2 threads; the older Mac Pros have two processors with 4
+cores each. So on those Mac Pros, you'd disable cores 1, 2 and 3, while on the
+Core-i7, you'll need to disable all other CPUs.
+
+However, disabling just the sibling thread seems to produce very reliable
+results for me already, with variance often below 0.5% (even though there are
+some measurable spikes).
+
+Other things to try:
+
+Running the benchmark with highest priority, i.e. "sudo nice -19"
+usually produces stable results on some machines. If the benchmark also
+involves displaying something on the screen (on X11), running it with
+"-sync" is a must. Though, in that case the "real" cost is not correct,
+but it is useful to discover regressions.
+
+Also; not many people know about ionice (1)
+ ionice - get/set program io scheduling class and priority
diff --git a/tests/benchmarks/benchmarks.pro b/tests/benchmarks/benchmarks.pro
new file mode 100644
index 0000000000..b5e3a4b8b3
--- /dev/null
+++ b/tests/benchmarks/benchmarks.pro
@@ -0,0 +1,13 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ corelib \
+ gui \
+ network \
+ script \
+ svg
+contains(QT_CONFIG, opengl): SUBDIRS += opengl
+contains(QT_CONFIG, declarative): SUBDIRS += declarative
+contains(QT_CONFIG, dbus): SUBDIRS += dbus
+
+check-trusted.CONFIG += recursive
+QMAKE_EXTRA_TARGETS += check-trusted
diff --git a/tests/benchmarks/corelib/codecs/codecs.pro b/tests/benchmarks/corelib/codecs/codecs.pro
new file mode 100644
index 0000000000..dab324b859
--- /dev/null
+++ b/tests/benchmarks/corelib/codecs/codecs.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = qtextcodec
+
diff --git a/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp b/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp
new file mode 100644
index 0000000000..5e87167bd5
--- /dev/null
+++ b/tests/benchmarks/corelib/codecs/qtextcodec/main.cpp
@@ -0,0 +1,185 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QTextCodec>
+#include <QFile>
+#include <qtest.h>
+
+#ifdef Q_OS_SYMBIAN
+// In Symbian OS test data is located in applications private dir
+// Application private dir is default serach path for files, so SRCDIR can be set to empty
+#define SRCDIR ""
+#endif
+
+Q_DECLARE_METATYPE(QList<QByteArray>)
+Q_DECLARE_METATYPE(QTextCodec *)
+
+class tst_QTextCodec: public QObject
+{
+ Q_OBJECT
+private slots:
+ void codecForName() const;
+ void codecForName_data() const;
+ void codecForMib() const;
+ void fromUnicode_data() const;
+ void fromUnicode() const;
+ void toUnicode_data() const;
+ void toUnicode() const;
+};
+
+void tst_QTextCodec::codecForName() const
+{
+ QFETCH(QList<QByteArray>, codecs);
+
+ QBENCHMARK {
+ foreach(const QByteArray& c, codecs) {
+ QVERIFY(QTextCodec::codecForName(c));
+ QVERIFY(QTextCodec::codecForName(c + "-"));
+ }
+ foreach(const QByteArray& c, codecs) {
+ QVERIFY(QTextCodec::codecForName(c + "+"));
+ QVERIFY(QTextCodec::codecForName(c + "*"));
+ }
+ }
+}
+
+void tst_QTextCodec::codecForName_data() const
+{
+ QTest::addColumn<QList<QByteArray> >("codecs");
+
+ QTest::newRow("all") << QTextCodec::availableCodecs();
+ QTest::newRow("many utf-8") << (QList<QByteArray>()
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8"
+ << "utf-8" << "utf-8" << "utf-8" << "utf-8" << "utf-8" );
+}
+
+void tst_QTextCodec::codecForMib() const
+{
+ QBENCHMARK {
+ QTextCodec::codecForMib(106);
+ QTextCodec::codecForMib(111);
+ QTextCodec::codecForMib(106);
+ QTextCodec::codecForMib(2254);
+ QTextCodec::codecForMib(2255);
+ QTextCodec::codecForMib(2256);
+ QTextCodec::codecForMib(2257);
+ QTextCodec::codecForMib(2258);
+ QTextCodec::codecForMib(111);
+ QTextCodec::codecForMib(2250);
+ QTextCodec::codecForMib(2251);
+ QTextCodec::codecForMib(2252);
+ QTextCodec::codecForMib(106);
+ QTextCodec::codecForMib(106);
+ QTextCodec::codecForMib(106);
+ QTextCodec::codecForMib(106);
+ }
+}
+
+void tst_QTextCodec::fromUnicode_data() const
+{
+ QTest::addColumn<QTextCodec*>("codec");
+
+ QTest::newRow("utf-8") << QTextCodec::codecForName("utf-8");
+ QTest::newRow("latin 1") << QTextCodec::codecForName("latin 1");
+ QTest::newRow("utf-16") << QTextCodec::codecForName("utf16"); ;
+ QTest::newRow("utf-32") << QTextCodec::codecForName("utf32");
+ QTest::newRow("latin15") << QTextCodec::codecForName("iso-8859-15");
+ QTest::newRow("eucKr") << QTextCodec::codecForName("eucKr");
+}
+
+
+void tst_QTextCodec::fromUnicode() const
+{
+ QFETCH(QTextCodec*, codec);
+ QFile file(SRCDIR "utf-8.txt");
+ if (!file.open(QFile::ReadOnly)) {
+ qFatal("Cannot open input file");
+ return;
+ }
+ QByteArray data = file.readAll();
+ const char *d = data.constData();
+ int size = data.size();
+ QString s = QString::fromUtf8(d, size);
+ s = s + s + s;
+ s = s + s + s;
+ QBENCHMARK {
+ for (int i = 0; i < 10; i ++)
+ codec->fromUnicode(s);
+ }
+}
+
+
+void tst_QTextCodec::toUnicode_data() const
+{
+ fromUnicode_data();
+}
+
+
+void tst_QTextCodec::toUnicode() const
+{
+ QFETCH(QTextCodec*, codec);
+ QFile file(SRCDIR "utf-8.txt");
+ QVERIFY(file.open(QFile::ReadOnly));
+ QByteArray data = file.readAll();
+ const char *d = data.constData();
+ int size = data.size();
+ QString s = QString::fromUtf8(d, size);
+ s = s + s + s;
+ s = s + s + s;
+ QByteArray orig = codec->fromUnicode(s);
+ QBENCHMARK {
+ for (int i = 0; i < 10; i ++)
+ codec->toUnicode(orig);
+ }
+}
+
+
+
+
+QTEST_MAIN(tst_QTextCodec)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro b/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro
new file mode 100644
index 0000000000..f26d623ad3
--- /dev/null
+++ b/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro
@@ -0,0 +1,16 @@
+load(qttest_p4)
+TARGET = tst_bench_qtextcodec
+QT -= gui
+SOURCES += main.cpp
+
+wince*:{
+ DEFINES += SRCDIR=\\\"\\\"
+} else:symbian* {
+ addFiles.files = utf-8.txt
+ addFiles.path = .
+ DEPLOYMENT += addFiles
+ TARGET.EPOCHEAPSIZE="0x100 0x1000000"
+} else {
+ DEFINES += SRCDIR=\\\"$$PWD/\\\"
+}
+
diff --git a/tests/benchmarks/corelib/codecs/qtextcodec/utf-8.txt b/tests/benchmarks/corelib/codecs/qtextcodec/utf-8.txt
new file mode 100644
index 0000000000..a8a58defe9
--- /dev/null
+++ b/tests/benchmarks/corelib/codecs/qtextcodec/utf-8.txt
@@ -0,0 +1,72 @@
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
diff --git a/tests/benchmarks/corelib/corelib.pro b/tests/benchmarks/corelib/corelib.pro
new file mode 100644
index 0000000000..a2efe91a61
--- /dev/null
+++ b/tests/benchmarks/corelib/corelib.pro
@@ -0,0 +1,17 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ io \
+ kernel \
+ thread \
+ tools \
+ codecs \
+ plugin
+
+TRUSTED_BENCHMARKS += \
+ kernel/qmetaobject \
+ kernel/qmetatype \
+ kernel/qobject \
+ thread/qthreadstorage \
+ io/qdir/tree
+
+include(../trusted-benchmarks.pri) \ No newline at end of file
diff --git a/tests/benchmarks/corelib/io/io.pro b/tests/benchmarks/corelib/io/io.pro
new file mode 100644
index 0000000000..97445d7c6c
--- /dev/null
+++ b/tests/benchmarks/corelib/io/io.pro
@@ -0,0 +1,9 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qdir \
+ qdiriterator \
+ qfile \
+ qfileinfo \
+ qiodevice \
+ qtemporaryfile
+
diff --git a/tests/benchmarks/corelib/io/qdir/10000/10000.pro b/tests/benchmarks/corelib/io/qdir/10000/10000.pro
new file mode 100644
index 0000000000..93b0992763
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/10000/10000.pro
@@ -0,0 +1,10 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = bench_qdir_10000
+DEPENDPATH += .
+INCLUDEPATH += .
+
+# Input
+SOURCES += bench_qdir_10000.cpp
+
+QT -= gui
diff --git a/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp b/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp
new file mode 100644
index 0000000000..2ed3183cca
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/10000/bench_qdir_10000.cpp
@@ -0,0 +1,198 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QtTest>
+
+#ifdef Q_OS_WIN
+# include <windows.h>
+#else
+# include <sys/stat.h>
+# include <sys/types.h>
+# include <dirent.h>
+# include <unistd.h>
+#endif
+
+class bench_QDir_10000 : public QObject{
+ Q_OBJECT
+public slots:
+ void initTestCase() {
+ QDir testdir = QDir::tempPath();
+
+ const QString subfolder_name = QLatin1String("test_speed");
+ QVERIFY(testdir.mkdir(subfolder_name));
+ QVERIFY(testdir.cd(subfolder_name));
+
+ for (uint i=0; i<10000; ++i) {
+ QFile file(testdir.absolutePath() + "/testfile_" + QString::number(i));
+ file.open(QIODevice::WriteOnly);
+ }
+ }
+ void cleanupTestCase() {
+ {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ testdir.setSorting(QDir::Unsorted);
+ testdir.setFilter(QDir::AllEntries | QDir::System | QDir::Hidden);
+ foreach (const QString &filename, testdir.entryList()) {
+ testdir.remove(filename);
+ }
+ }
+ const QDir temp = QDir(QDir::tempPath());
+ temp.rmdir(QLatin1String("test_speed"));
+ }
+private slots:
+ void baseline() {}
+
+ void sizeSpeed() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ QBENCHMARK {
+ QFileInfoList fileInfoList = testdir.entryInfoList(QDir::Files, QDir::Unsorted);
+ foreach (const QFileInfo &fileInfo, fileInfoList) {
+ fileInfo.isDir();
+ fileInfo.size();
+ }
+ }
+ }
+ void sizeSpeedIterator() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ QBENCHMARK {
+ QDirIterator dit(testdir.path(), QDir::Files);
+ while (dit.hasNext()) {
+ dit.next();
+ dit.fileInfo().isDir();
+ dit.fileInfo().size();
+ }
+ }
+ }
+
+ void sizeSpeedWithoutFilter() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ QBENCHMARK {
+ QFileInfoList fileInfoList = testdir.entryInfoList(QDir::NoFilter, QDir::Unsorted);
+ foreach (const QFileInfo &fileInfo, fileInfoList) {
+ fileInfo.size();
+ }
+ }
+ }
+ void sizeSpeedWithoutFilterIterator() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ QBENCHMARK {
+ QDirIterator dit(testdir.path());
+ while (dit.hasNext()) {
+ dit.next();
+ dit.fileInfo().isDir();
+ dit.fileInfo().size();
+ }
+ }
+ }
+
+ void sizeSpeedWithoutFileInfoList() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ testdir.setSorting(QDir::Unsorted);
+ QBENCHMARK {
+ QStringList fileList = testdir.entryList(QDir::NoFilter, QDir::Unsorted);
+ foreach (const QString &filename, fileList) {
+ QFileInfo fileInfo(filename);
+ fileInfo.size();
+ }
+ }
+ }
+
+ void iDontWantAnyStat() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+ testdir.setSorting(QDir::Unsorted);
+ testdir.setFilter(QDir::AllEntries | QDir::System | QDir::Hidden);
+ QBENCHMARK {
+ QStringList fileList = testdir.entryList(QDir::NoFilter, QDir::Unsorted);
+ foreach (const QString &filename, fileList) {
+
+ }
+ }
+ }
+ void iDontWantAnyStatIterator() {
+ QBENCHMARK {
+ QDirIterator dit(QDir::tempPath() + QLatin1String("/test_speed"));
+ while (dit.hasNext()) {
+ dit.next();
+ }
+ }
+ }
+
+ void sizeSpeedWithoutFilterLowLevel() {
+ QDir testdir(QDir::tempPath() + QLatin1String("/test_speed"));
+#ifdef Q_OS_WIN
+ const wchar_t *dirpath = (wchar_t*)testdir.absolutePath().utf16();
+ wchar_t appendedPath[MAX_PATH];
+ wcscpy(appendedPath, dirpath);
+ wcscat(appendedPath, L"\\*");
+
+ WIN32_FIND_DATA fd;
+ HANDLE hSearch = FindFirstFileW(appendedPath, &fd);
+ QVERIFY(hSearch != INVALID_HANDLE_VALUE);
+
+ QBENCHMARK {
+ do {
+
+ } while (FindNextFile(hSearch, &fd));
+ }
+ FindClose(hSearch);
+#else
+ DIR *dir = opendir(qPrintable(testdir.absolutePath()));
+ QVERIFY(dir);
+
+ QVERIFY(!chdir(qPrintable(testdir.absolutePath())));
+ QBENCHMARK {
+ struct dirent *item = readdir(dir);
+ while (item) {
+ char *fileName = item->d_name;
+
+ struct stat fileStat;
+ QVERIFY(!stat(fileName, &fileStat));
+
+ item = readdir(dir);
+ }
+ }
+ closedir(dir);
+#endif
+ }
+};
+
+QTEST_MAIN(bench_QDir_10000)
+#include "bench_qdir_10000.moc"
diff --git a/tests/benchmarks/corelib/io/qdir/qdir.pro b/tests/benchmarks/corelib/io/qdir/qdir.pro
new file mode 100644
index 0000000000..c572566759
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/qdir.pro
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = 10000
diff --git a/tests/benchmarks/corelib/io/qdir/tree/4.6.0-list.txt b/tests/benchmarks/corelib/io/qdir/tree/4.6.0-list.txt
new file mode 100644
index 0000000000..b915320e9e
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/tree/4.6.0-list.txt
@@ -0,0 +1,11963 @@
+0 src/
+0 3rdparty/
+0 ce-compat/
+0 ce_time.c
+ ce_time.h
+2 clucene/
+0 APACHE.license
+ AUTHORS
+ ChangeLog
+ COPYING
+ LGPL.license
+ README
+ src/
+0 CLucene/
+0 analysis/
+0 AnalysisHeader.cpp
+ AnalysisHeader.h
+ Analyzers.cpp
+ Analyzers.h
+ standard/
+0 StandardAnalyzer.cpp
+ StandardAnalyzer.h
+ StandardFilter.cpp
+ StandardFilter.h
+ StandardTokenizerConstants.h
+ StandardTokenizer.cpp
+ StandardTokenizer.h
+3 CLBackwards.h
+ CLConfig.h
+ CLMonolithic.cpp
+ config/
+0 CompilerAcc.h
+ CompilerBcb.h
+ CompilerGcc.h
+ compiler.h
+ CompilerMsvc.h
+ define_std.h
+ gunichartables.cpp
+ gunichartables.h
+ PlatformMac.h
+ PlatformUnix.h
+ PlatformWin32.h
+ repl_lltot.cpp
+ repl_tchar.h
+ repl_tcscasecmp.cpp
+ repl_tcslwr.cpp
+ repl_tcstod.cpp
+ repl_tcstoll.cpp
+ repl_tprintf.cpp
+ repl_wchar.h
+ threadCSection.h
+ threadPthread.h
+ threads.cpp
+ utf8.cpp
+2 debug/
+0 condition.cpp
+ condition.h
+ error.cpp
+ error.h
+ lucenebase.h
+ mem.h
+ memtracking.cpp
+2 document/
+0 DateField.cpp
+ DateField.h
+ Document.cpp
+ Document.h
+ Field.cpp
+ Field.h
+3 CLucene.h
+ CLucene/index/
+0 CompoundFile.cpp
+ CompoundFile.h
+ DocumentWriter.cpp
+ DocumentWriter.h
+ FieldInfo.h
+ FieldInfos.cpp
+ FieldInfos.h
+ FieldsReader.cpp
+ FieldsReader.h
+ FieldsWriter.cpp
+ FieldsWriter.h
+ IndexModifier.cpp
+ IndexModifier.h
+ IndexReader.cpp
+ IndexReader.h
+ IndexWriter.cpp
+ IndexWriter.h
+ MultiReader.cpp
+ MultiReader.h
+ SegmentHeader.h
+ SegmentInfos.cpp
+ SegmentInfos.h
+ SegmentMergeInfo.cpp
+ SegmentMergeInfo.h
+ SegmentMergeQueue.cpp
+ SegmentMergeQueue.h
+ SegmentMerger.cpp
+ SegmentMerger.h
+ SegmentReader.cpp
+ SegmentTermDocs.cpp
+ SegmentTermEnum.cpp
+ SegmentTermEnum.h
+ SegmentTermPositions.cpp
+ SegmentTermVector.cpp
+ Term.cpp
+ Term.h
+ TermInfo.cpp
+ TermInfo.h
+ TermInfosReader.cpp
+ TermInfosReader.h
+ TermInfosWriter.cpp
+ TermInfosWriter.h
+ Terms.h
+ TermVector.h
+ TermVectorReader.cpp
+ TermVectorWriter.cpp
+2 CLucene/LuceneThreads.h
+ CLucene/queryParser/
+0 Lexer.cpp
+ Lexer.h
+ MultiFieldQueryParser.cpp
+ MultiFieldQueryParser.h
+ QueryParserBase.cpp
+ QueryParserBase.h
+ QueryParser.cpp
+ QueryParser.h
+ QueryToken.cpp
+ QueryToken.h
+ TokenList.cpp
+ TokenList.h
+2 CLucene/search/
+0 BooleanClause.h
+ BooleanQuery.cpp
+ BooleanQuery.h
+ BooleanScorer.cpp
+ BooleanScorer.h
+ CachingWrapperFilter.cpp
+ CachingWrapperFilter.h
+ ChainedFilter.cpp
+ ChainedFilter.h
+ Compare.h
+ ConjunctionScorer.cpp
+ ConjunctionScorer.h
+ DateFilter.cpp
+ DateFilter.h
+ ExactPhraseScorer.cpp
+ ExactPhraseScorer.h
+ Explanation.cpp
+ Explanation.h
+ FieldCache.cpp
+ FieldCache.h
+ FieldCacheImpl.cpp
+ FieldCacheImpl.h
+ FieldDoc.h
+ FieldDocSortedHitQueue.cpp
+ FieldDocSortedHitQueue.h
+ FieldSortedHitQueue.cpp
+ FieldSortedHitQueue.h
+ FilteredTermEnum.cpp
+ FilteredTermEnum.h
+ Filter.h
+ FuzzyQuery.cpp
+ FuzzyQuery.h
+ HitQueue.cpp
+ HitQueue.h
+ Hits.cpp
+ IndexSearcher.cpp
+ IndexSearcher.h
+ MultiSearcher.cpp
+ MultiSearcher.h
+ MultiTermQuery.cpp
+ MultiTermQuery.h
+ PhrasePositions.cpp
+ PhrasePositions.h
+ PhraseQuery.cpp
+ PhraseQuery.h
+ PhraseQueue.h
+ PhraseScorer.cpp
+ PhraseScorer.h
+ PrefixQuery.cpp
+ PrefixQuery.h
+ QueryFilter.cpp
+ QueryFilter.h
+ RangeFilter.cpp
+ RangeFilter.h
+ RangeQuery.cpp
+ RangeQuery.h
+ Scorer.h
+ SearchHeader.cpp
+ SearchHeader.h
+ Similarity.cpp
+ Similarity.h
+ SloppyPhraseScorer.cpp
+ SloppyPhraseScorer.h
+ Sort.cpp
+ Sort.h
+ TermQuery.cpp
+ TermQuery.h
+ TermScorer.cpp
+ TermScorer.h
+ WildcardQuery.cpp
+ WildcardQuery.h
+ WildcardTermEnum.cpp
+ WildcardTermEnum.h
+2 CLucene/StdHeader.cpp
+ CLucene/StdHeader.h
+ CLucene/store/
+0 Directory.h
+ FSDirectory.cpp
+ FSDirectory.h
+ IndexInput.cpp
+ IndexInput.h
+ IndexOutput.cpp
+ IndexOutput.h
+ InputStream.h
+ Lock.cpp
+ Lock.h
+ MMapInput.cpp
+ OutputStream.h
+ RAMDirectory.cpp
+ RAMDirectory.h
+ TransactionalRAMDirectory.cpp
+ TransactionalRAMDirectory.h
+2 CLucene/util/
+0 Arrays.h
+ BitSet.cpp
+ BitSet.h
+ bufferedstream.h
+ dirent.cpp
+ dirent.h
+ Equators.cpp
+ Equators.h
+ FastCharStream.cpp
+ FastCharStream.h
+ fileinputstream.cpp
+ fileinputstream.h
+ inputstreambuffer.h
+ jstreamsconfig.h
+ Misc.cpp
+ Misc.h
+ PriorityQueue.h
+ Reader.cpp
+ Reader.h
+ streambase.h
+ StringBuffer.cpp
+ StringBuffer.h
+ StringIntern.cpp
+ StringIntern.h
+ stringreader.h
+ subinputstream.h
+ ThreadLocal.cpp
+ ThreadLocal.h
+ VoidList.h
+ VoidMap.h
+4 des/
+0 des.cpp
+2 easing/
+0 easing.cpp
+ legal.qdoc
+2 fonts/
+0 5x7.bdf
+ 6x13.bdf
+ COPYING.Cursor
+ COPYING.Helvetica
+ COPYING.Utopia
+ COPYRIGHT.BH
+ COPYRIGHT.Charter
+ COPYRIGHT.Courier
+ COPYRIGHT.DejaVu
+ COPYRIGHT.IBM
+ COPYRIGHT.Unifont
+ COPYRIGHT.Vera
+ helvB08.bdf
+ helvB10.bdf
+ helvB12.bdf
+ helvB14.bdf
+ helvB18.bdf
+ helvB24.bdf
+ helvBO08.bdf
+ helvBO10.bdf
+ helvBO12.bdf
+ helvBO14.bdf
+ helvBO18.bdf
+ helvBO24.bdf
+ helvO08.bdf
+ helvO10.bdf
+ helvO12.bdf
+ helvO14.bdf
+ helvO18.bdf
+ helvO24.bdf
+ helvR08.bdf
+ helvR10.bdf
+ helvR12.bdf
+ helvR14.bdf
+ helvR18.bdf
+ helvR24.bdf
+ micro.bdf
+ README.DejaVu
+ unifont.bdf
+2 freetype/
+0 autogen.sh
+ builds/
+0 amiga/
+0 include/
+0 freetype/
+0 config/
+0 ftconfig.h
+ ftmodule.h
+4 makefile
+0 .os4
+2 README
+ smakefile
+ src/
+0 base/
+0 ftdebug.c
+ ftsystem.c
+4 ansi/
+0 ansi-def.mk
+ ansi.mk
+2 atari/
+0 ATARI.H
+ FNames.SIC
+ FREETYPE.PRJ
+ README.TXT
+2 beos/
+0 beos-def.mk
+ beos.mk
+ detect.mk
+2 compiler/
+0 ansi-cc.mk
+ bcc-dev.mk
+ bcc.mk
+ emx.mk
+ gcc-dev.mk
+ gcc.mk
+ intelc.mk
+ unix-lcc.mk
+ visualage.mk
+ visualc.mk
+ watcom.mk
+ win-lcc.mk
+2 detect.mk
+ dos/
+0 detect.mk
+ dos-def.mk
+ dos-emx.mk
+ dos-gcc.mk
+ dos-wat.mk
+2 exports.mk
+ freetype.mk
+ link_dos.mk
+ link_std.mk
+ mac/
+0 ascii2mpw.py
+ FreeType.m68k_cfm.make.txt
+ FreeType.m68k_far.make.txt
+ FreeType.ppc_carbon.make.txt
+ FreeType.ppc_classic.make.txt
+ ftlib.prj.xml
+ ftmac.c
+ README
+2 modules.mk
+ newline
+ os2/
+0 detect.mk
+ os2-def.mk
+ os2-dev.mk
+ os2-gcc.mk
+2 symbian/
+0 bld.inf
+ freetype.mmp
+2 toplevel.mk
+ unix/
+0 aclocal.m4
+ config.guess
+ config.sub
+ configure
+0 .ac
+ .raw
+2 detect.mk
+ freetype2.in
+ freetype2.m4
+ freetype-config.in
+ ft2unix.h
+ ftconfig.h
+ ftconfig.in
+ ft-munmap.m4
+ ftsystem.c
+ install.mk
+ install-sh
+ ltmain.sh
+ mkinstalldirs
+ unix-cc.in
+ unixddef.mk
+ unix-def.in
+ unix-dev.mk
+ unix-lcc.mk
+ unix.mk
+2 vms/
+0 ftconfig.h
+ ftsystem.c
+2 win32/
+0 detect.mk
+ ftdebug.c
+ vc2005/
+0 freetype.sln
+ freetype.vcproj
+ index.html
+2 vc2008/
+0 freetype.sln
+ freetype.vcproj
+ index.html
+2 visualc/
+0 freetype.dsp
+ freetype.dsw
+ index.html
+2 w32-bccd.mk
+ w32-bcc.mk
+ w32-dev.mk
+ w32-gcc.mk
+ w32-icc.mk
+ w32-intl.mk
+ w32-lcc.mk
+ w32-mingw32.mk
+ w32-vcc.mk
+ w32-wat.mk
+ win32-def.mk
+2 wince/
+0 ftdebug.c
+ vc2005-ce/
+0 freetype.sln
+ freetype.vcproj
+ index.html
+2 vc2008-ce/
+0 freetype.sln
+ freetype.vcproj
+ index.html
+4 ChangeLog
+0 .20
+ .21
+ .22
+2 configure
+ devel/
+0 ft2build.h
+ ftoption.h
+2 docs/
+0 CHANGES
+ CUSTOMIZE
+ DEBUG
+ formats.txt
+ FTL.TXT
+ GPL.TXT
+ INSTALL
+0 .ANY
+ .CROSS
+ .GNU
+ .MAC
+ .UNIX
+ .VMS
+2 LICENSE.TXT
+ MAKEPP
+ PATENTS
+ PROBLEMS
+ raster.txt
+ reference/
+0 ft2-base_interface.html
+ ft2-basic_types.html
+ ft2-bdf_fonts.html
+ ft2-bitmap_handling.html
+ ft2-cache_subsystem.html
+ ft2-cid_fonts.html
+ ft2-computations.html
+ ft2-font_formats.html
+ ft2-gasp_table.html
+ ft2-glyph_management.html
+ ft2-glyph_stroker.html
+ ft2-glyph_variants.html
+ ft2-gx_validation.html
+ ft2-gzip.html
+ ft2-header_file_macros.html
+ ft2-incremental.html
+ ft2-index.html
+ ft2-lcd_filtering.html
+ ft2-list_processing.html
+ ft2-lzw.html
+ ft2-mac_specific.html
+ ft2-module_management.html
+ ft2-multiple_masters.html
+ ft2-ot_validation.html
+ ft2-outline_processing.html
+ ft2-pfr_fonts.html
+ ft2-quick_advance.html
+ ft2-raster.html
+ ft2-sfnt_names.html
+ ft2-sizes_management.html
+ ft2-system_interface.html
+ ft2-toc.html
+ ft2-truetype_engine.html
+ ft2-truetype_tables.html
+ ft2-type1_tables.html
+ ft2-user_allocation.html
+ ft2-version.html
+ ft2-winfnt_fonts.html
+ README
+2 release
+ TODO
+ TRUETYPE
+ UPGRADE.UNIX
+ VERSION.DLL
+2 include/
+0 freetype/
+0 config/
+0 ftconfig.h
+ ftheader.h
+ ftmodule.h
+ ftoption.h
+ ftstdlib.h
+2 freetype.h
+ ftadvanc.h
+ ftbbox.h
+ ftbdf.h
+ ftbitmap.h
+ ftcache.h
+ ftchapters.h
+ ftcid.h
+ fterrdef.h
+ fterrors.h
+ ftgasp.h
+ ftglyph.h
+ ftgxval.h
+ ftgzip.h
+ ftimage.h
+ ftincrem.h
+ ftlcdfil.h
+ ftlist.h
+ ftlzw.h
+ ftmac.h
+ ftmm.h
+ ftmodapi.h
+ ftmoderr.h
+ ftotval.h
+ ftoutln.h
+ ftpfr.h
+ ftrender.h
+ ftsizes.h
+ ftsnames.h
+ ftstroke.h
+ ftsynth.h
+ ftsystem.h
+ fttrigon.h
+ fttypes.h
+ ftwinfnt.h
+ ftxf86.h
+ internal/
+0 autohint.h
+ ftcalc.h
+ ftdebug.h
+ ftdriver.h
+ ftgloadr.h
+ ftmemory.h
+ ftobjs.h
+ ftrfork.h
+ ftserv.h
+ ftstream.h
+ fttrace.h
+ ftvalid.h
+ internal.h
+ pcftypes.h
+ psaux.h
+ pshints.h
+ services/
+0 svbdf.h
+ svcid.h
+ svgldict.h
+ svgxval.h
+ svkern.h
+ svmm.h
+ svotval.h
+ svpfr.h
+ svpostnm.h
+ svpscmap.h
+ svpsinfo.h
+ svsfnt.h
+ svttcmap.h
+ svtteng.h
+ svttglyf.h
+ svwinfnt.h
+ svxf86nm.h
+2 sfnt.h
+ t1types.h
+ tttypes.h
+2 t1tables.h
+ ttnameid.h
+ tttables.h
+ tttags.h
+ ttunpat.h
+2 ft2build.h
+2 Jamfile
+ Jamrules
+ Makefile
+ modules.cfg
+ objs/
+0 README
+2 README
+0 .CVS
+2 src/
+0 autofit/
+0 afangles.c
+ afangles.h
+ afcjk.c
+ afcjk.h
+ afdummy.c
+ afdummy.h
+ aferrors.h
+ afglobal.c
+ afglobal.h
+ afhints.c
+ afhints.h
+ afindic.c
+ afindic.h
+ aflatin2.c
+ aflatin2.h
+ aflatin.c
+ aflatin.h
+ afloader.c
+ afloader.h
+ afmodule.c
+ afmodule.h
+ aftypes.h
+ afwarp.c
+ afwarp.h
+ autofit.c
+ Jamfile
+ module.mk
+ rules.mk
+2 base/
+0 ftadvanc.c
+ ftapi.c
+ ftbase.c
+ ftbase.h
+ ftbbox.c
+ ftbdf.c
+ ftbitmap.c
+ ftcalc.c
+ ftcid.c
+ ftdbgmem.c
+ ftdebug.c
+ ftfstype.c
+ ftgasp.c
+ ftgloadr.c
+ ftglyph.c
+ ftgxval.c
+ ftinit.c
+ ftlcdfil.c
+ ftmac.c
+ ftmm.c
+ ftnames.c
+ ftobjs.c
+ ftotval.c
+ ftoutln.c
+ ftpatent.c
+ ftpfr.c
+ ftrfork.c
+ ftstream.c
+ ftstroke.c
+ ftsynth.c
+ ftsystem.c
+ fttrigon.c
+ fttype1.c
+ ftutil.c
+ ftwinfnt.c
+ ftxf86.c
+ Jamfile
+ rules.mk
+2 bdf/
+0 bdf.c
+ bdfdrivr.c
+ bdfdrivr.h
+ bdferror.h
+ bdf.h
+ bdflib.c
+ Jamfile
+ module.mk
+ README
+ rules.mk
+2 cache/
+0 ftcache.c
+ ftcbasic.c
+ ftccache.c
+ ftccache.h
+ ftccback.h
+ ftccmap.c
+ ftcerror.h
+ ftcglyph.c
+ ftcglyph.h
+ ftcimage.c
+ ftcimage.h
+ ftcmanag.c
+ ftcmanag.h
+ ftcmru.c
+ ftcmru.h
+ ftcsbits.c
+ ftcsbits.h
+ Jamfile
+ rules.mk
+2 cff/
+0 cff.c
+ cffcmap.c
+ cffcmap.h
+ cffdrivr.c
+ cffdrivr.h
+ cfferrs.h
+ cffgload.c
+ cffgload.h
+ cffload.c
+ cffload.h
+ cffobjs.c
+ cffobjs.h
+ cffparse.c
+ cffparse.h
+ cfftoken.h
+ cfftypes.h
+ Jamfile
+ module.mk
+ rules.mk
+2 cid/
+0 ciderrs.h
+ cidgload.c
+ cidgload.h
+ cidload.c
+ cidload.h
+ cidobjs.c
+ cidobjs.h
+ cidparse.c
+ cidparse.h
+ cidriver.c
+ cidriver.h
+ cidtoken.h
+ Jamfile
+ module.mk
+ rules.mk
+ type1cid.c
+2 gxvalid/
+0 gxvalid.c
+ gxvalid.h
+ gxvbsln.c
+ gxvcommn.c
+ gxvcommn.h
+ gxverror.h
+ gxvfeat.c
+ gxvfeat.h
+ gxvfgen.c
+ gxvjust.c
+ gxvkern.c
+ gxvlcar.c
+ gxvmod.c
+ gxvmod.h
+ gxvmort0.c
+ gxvmort1.c
+ gxvmort2.c
+ gxvmort4.c
+ gxvmort5.c
+ gxvmort.c
+ gxvmort.h
+ gxvmorx0.c
+ gxvmorx1.c
+ gxvmorx2.c
+ gxvmorx4.c
+ gxvmorx5.c
+ gxvmorx.c
+ gxvmorx.h
+ gxvopbd.c
+ gxvprop.c
+ gxvtrak.c
+ Jamfile
+ module.mk
+ README
+ rules.mk
+2 gzip/
+0 adler32.c
+ ftgzip.c
+ infblock.c
+ infblock.h
+ infcodes.c
+ infcodes.h
+ inffixed.h
+ inflate.c
+ inftrees.c
+ inftrees.h
+ infutil.c
+ infutil.h
+ Jamfile
+ rules.mk
+ zconf.h
+ zlib.h
+ zutil.c
+ zutil.h
+2 Jamfile
+ lzw/
+0 ftlzw.c
+ ftzopen.c
+ ftzopen.h
+ Jamfile
+ rules.mk
+2 otvalid/
+0 Jamfile
+ module.mk
+ otvalid.c
+ otvalid.h
+ otvbase.c
+ otvcommn.c
+ otvcommn.h
+ otverror.h
+ otvgdef.c
+ otvgpos.c
+ otvgpos.h
+ otvgsub.c
+ otvjstf.c
+ otvmath.c
+ otvmod.c
+ otvmod.h
+ rules.mk
+2 pcf/
+0 Jamfile
+ module.mk
+ pcf.c
+ pcfdrivr.c
+ pcfdrivr.h
+ pcferror.h
+ pcf.h
+ pcfread.c
+ pcfread.h
+ pcfutil.c
+ pcfutil.h
+ README
+ rules.mk
+2 pfr/
+0 Jamfile
+ module.mk
+ pfr.c
+ pfrcmap.c
+ pfrcmap.h
+ pfrdrivr.c
+ pfrdrivr.h
+ pfrerror.h
+ pfrgload.c
+ pfrgload.h
+ pfrload.c
+ pfrload.h
+ pfrobjs.c
+ pfrobjs.h
+ pfrsbit.c
+ pfrsbit.h
+ pfrtypes.h
+ rules.mk
+2 psaux/
+0 afmparse.c
+ afmparse.h
+ Jamfile
+ module.mk
+ psaux.c
+ psauxerr.h
+ psauxmod.c
+ psauxmod.h
+ psconv.c
+ psconv.h
+ psobjs.c
+ psobjs.h
+ rules.mk
+ t1cmap.c
+ t1cmap.h
+ t1decode.c
+ t1decode.h
+2 pshinter/
+0 Jamfile
+ module.mk
+ pshalgo.c
+ pshalgo.h
+ pshglob.c
+ pshglob.h
+ pshinter.c
+ pshmod.c
+ pshmod.h
+ pshnterr.h
+ pshrec.c
+ pshrec.h
+ rules.mk
+2 psnames/
+0 Jamfile
+ module.mk
+ psmodule.c
+ psmodule.h
+ psnamerr.h
+ psnames.c
+ pstables.h
+ rules.mk
+2 raster/
+0 ftmisc.h
+ ftraster.c
+ ftraster.h
+ ftrend1.c
+ ftrend1.h
+ Jamfile
+ module.mk
+ raster.c
+ rasterrs.h
+ rules.mk
+2 sfnt/
+0 Jamfile
+ module.mk
+ rules.mk
+ sfdriver.c
+ sfdriver.h
+ sferrors.h
+ sfnt.c
+ sfobjs.c
+ sfobjs.h
+ ttbdf.c
+ ttbdf.h
+ ttcmap.c
+ ttcmap.h
+ ttkern.c
+ ttkern.h
+ ttload.c
+ ttload.h
+ ttmtx.c
+ ttmtx.h
+ ttpost.c
+ ttpost.h
+ ttsbit0.c
+ ttsbit.c
+ ttsbit.h
+2 smooth/
+0 ftgrays.c
+ ftgrays.h
+ ftsmerrs.h
+ ftsmooth.c
+ ftsmooth.h
+ Jamfile
+ module.mk
+ rules.mk
+ smooth.c
+2 tools/
+0 apinames.c
+ cordic.py
+ docmaker/
+0 content.py
+ docbeauty.py
+ docmaker.py
+ formatter.py
+ sources.py
+ tohtml.py
+ utils.py
+2 ftrandom/
+0 ftrandom.c
+ Makefile
+ README
+2 glnames.py
+ Jamfile
+ test_afm.c
+ test_bbox.c
+ test_trig.c
+2 truetype/
+0 Jamfile
+ module.mk
+ rules.mk
+ truetype.c
+ ttdriver.c
+ ttdriver.h
+ tterrors.h
+ ttgload.c
+ ttgload.h
+ ttgxvar.c
+ ttgxvar.h
+ ttinterp.c
+ ttinterp.h
+ ttobjs.c
+ ttobjs.h
+ ttpload.c
+ ttpload.h
+2 type1/
+0 Jamfile
+ module.mk
+ rules.mk
+ t1afm.c
+ t1afm.h
+ t1driver.c
+ t1driver.h
+ t1errors.h
+ t1gload.c
+ t1gload.h
+ t1load.c
+ t1load.h
+ t1objs.c
+ t1objs.h
+ t1parse.c
+ t1parse.h
+ t1tokens.h
+ type1.c
+2 type42/
+0 Jamfile
+ module.mk
+ rules.mk
+ t42drivr.c
+ t42drivr.h
+ t42error.h
+ t42objs.c
+ t42objs.h
+ t42parse.c
+ t42parse.h
+ t42types.h
+ type42.c
+2 winfonts/
+0 fnterrs.h
+ Jamfile
+ module.mk
+ rules.mk
+ winfnt.c
+ winfnt.h
+3 version.sed
+ vms_make.com
+2 .gitattributes
+ harfbuzz/
+0 AUTHORS
+ autogen.sh
+ ChangeLog
+ configure.ac
+ COPYING
+ .gitignore
+ Makefile.am
+ NEWS
+ README
+ src/
+0 .gitignore
+ harfbuzz-arabic.c
+ harfbuzz-buffer.c
+ harfbuzz-buffer.h
+ harfbuzz-buffer-private.h
+ harfbuzz.c
+ harfbuzz-dump.c
+ harfbuzz-dump.h
+ harfbuzz-dump-main.c
+ harfbuzz-external.h
+ harfbuzz-gdef.c
+ harfbuzz-gdef.h
+ harfbuzz-gdef-private.h
+ harfbuzz-global.h
+ harfbuzz-gpos.c
+ harfbuzz-gpos.h
+ harfbuzz-gpos-private.h
+ harfbuzz-gsub.c
+ harfbuzz-gsub.h
+ harfbuzz-gsub-private.h
+ harfbuzz.h
+ harfbuzz-hangul.c
+ harfbuzz-hebrew.c
+ harfbuzz-impl.c
+ harfbuzz-impl.h
+ harfbuzz-indic.cpp
+ harfbuzz-khmer.c
+ harfbuzz-myanmar.c
+ harfbuzz-open.c
+ harfbuzz-open.h
+ harfbuzz-open-private.h
+ harfbuzz-shape.h
+ harfbuzz-shaper-all.cpp
+ harfbuzz-shaper.cpp
+ harfbuzz-shaper.h
+ harfbuzz-shaper-private.h
+ harfbuzz-stream.c
+ harfbuzz-stream.h
+ harfbuzz-stream-private.h
+ harfbuzz-thai.c
+ harfbuzz-tibetan.c
+ Makefile.am
+2 tests/
+0 linebreaking/
+0 .gitignore
+ harfbuzz-qt.cpp
+ main.cpp
+ Makefile.am
+2 Makefile.am
+ shaping/
+0 .gitignore
+ main.cpp
+ Makefile.am
+ README
+4 javascriptcore/
+0 JavaScriptCore/
+0 API/
+0 APICast.h
+ JavaScriptCore.h
+ JavaScript.h
+ JSBase.cpp
+ JSBase.h
+ JSBasePrivate.h
+ JSCallbackConstructor.cpp
+ JSCallbackConstructor.h
+ JSCallbackFunction.cpp
+ JSCallbackFunction.h
+ JSCallbackObject.cpp
+ JSCallbackObjectFunctions.h
+ JSCallbackObject.h
+ JSClassRef.cpp
+ JSClassRef.h
+ JSContextRef.cpp
+ JSContextRef.h
+ JSObjectRef.cpp
+ JSObjectRef.h
+ JSProfilerPrivate.cpp
+ JSProfilerPrivate.h
+ JSRetainPtr.h
+ JSStringRefBSTR.cpp
+ JSStringRefBSTR.h
+ JSStringRefCF.cpp
+ JSStringRefCF.h
+ JSStringRef.cpp
+ JSStringRef.h
+ JSValueRef.cpp
+ JSValueRef.h
+ OpaqueJSString.cpp
+ OpaqueJSString.h
+ WebKitAvailability.h
+2 assembler/
+0 AbstractMacroAssembler.h
+ ARMAssembler.cpp
+ ARMAssembler.h
+ ARMv7Assembler.h
+ AssemblerBuffer.h
+ AssemblerBufferWithConstantPool.h
+ CodeLocation.h
+ LinkBuffer.h
+ MacroAssemblerARM.cpp
+ MacroAssemblerARM.h
+ MacroAssemblerARMv7.h
+ MacroAssemblerCodeRef.h
+ MacroAssembler.h
+ MacroAssemblerX86_64.h
+ MacroAssemblerX86Common.h
+ MacroAssemblerX86.h
+ RepatchBuffer.h
+ X86Assembler.h
+2 AUTHORS
+ bytecode/
+0 CodeBlock.cpp
+ CodeBlock.h
+ EvalCodeCache.h
+ Instruction.h
+ JumpTable.cpp
+ JumpTable.h
+ Opcode.cpp
+ Opcode.h
+ SamplingTool.cpp
+ SamplingTool.h
+ StructureStubInfo.cpp
+ StructureStubInfo.h
+2 bytecompiler/
+0 BytecodeGenerator.cpp
+ BytecodeGenerator.h
+ Label.h
+ LabelScope.h
+ RegisterID.h
+2 ChangeLog
+0 -2002-12-03
+ -2003-10-25
+ -2007-10-14
+ -2008-08-10
+ -2009-06-16
+2 config.h
+ COPYING.LIB
+ create_hash_table
+ debugger/
+0 DebuggerActivation.cpp
+ DebuggerActivation.h
+ DebuggerCallFrame.cpp
+ DebuggerCallFrame.h
+ Debugger.cpp
+ Debugger.h
+2 DerivedSources.make
+ docs/
+0 make-bytecode-docs.pl
+2 ForwardingHeaders/
+0 JavaScriptCore/
+0 APICast.h
+ JavaScriptCore.h
+ JavaScript.h
+ JSBase.h
+ JSContextRef.h
+ JSObjectRef.h
+ JSRetainPtr.h
+ JSStringRefCF.h
+ JSStringRef.h
+ JSValueRef.h
+ OpaqueJSString.h
+ WebKitAvailability.h
+3 generated/
+0 ArrayPrototype.lut.h
+ chartables.c
+ DatePrototype.lut.h
+ Grammar.cpp
+ Grammar.h
+ JSONObject.lut.h
+ Lexer.lut.h
+ MathObject.lut.h
+ NumberConstructor.lut.h
+ RegExpConstructor.lut.h
+ RegExpObject.lut.h
+ StringPrototype.lut.h
+2 headers.pri
+ Info.plist
+ interpreter/
+0 CachedCall.h
+ CallFrameClosure.h
+ CallFrame.cpp
+ CallFrame.h
+ Interpreter.cpp
+ Interpreter.h
+ RegisterFile.cpp
+ RegisterFile.h
+ Register.h
+2 JavaScriptCore.gypi
+ JavaScriptCore.order
+ JavaScriptCorePrefix.h
+ JavaScriptCore.pri
+ jit/
+0 ExecutableAllocator.cpp
+ ExecutableAllocatorFixedVMPool.cpp
+ ExecutableAllocator.h
+ ExecutableAllocatorPosix.cpp
+ ExecutableAllocatorWin.cpp
+ JITArithmetic.cpp
+ JITCall.cpp
+ JITCode.h
+ JIT.cpp
+ JIT.h
+ JITInlineMethods.h
+ JITOpcodes.cpp
+ JITPropertyAccess.cpp
+ JITStubCall.h
+ JITStubs.cpp
+ JITStubs.h
+2 jsc.cpp
+ make-generated-sources.sh
+ os-win32/
+0 stdbool.h
+ stdint.h
+2 parser/
+0 Grammar.y
+ Keywords.table
+ Lexer.cpp
+ Lexer.h
+ NodeConstructors.h
+ NodeInfo.h
+ Nodes.cpp
+ Nodes.h
+ ParserArena.cpp
+ ParserArena.h
+ Parser.cpp
+ Parser.h
+ ResultType.h
+ SourceCode.h
+ SourceProvider.h
+2 pcre/
+0 AUTHORS
+ COPYING
+ dftables
+ pcre_compile.cpp
+ pcre_exec.cpp
+ pcre.h
+ pcre_internal.h
+ pcre.pri
+ pcre_tables.cpp
+ pcre_ucp_searchfuncs.cpp
+ pcre_xclass.cpp
+ ucpinternal.h
+ ucptable.cpp
+2 profiler/
+0 CallIdentifier.h
+ HeavyProfile.cpp
+ HeavyProfile.h
+ Profile.cpp
+ ProfileGenerator.cpp
+ ProfileGenerator.h
+ Profile.h
+ ProfileNode.cpp
+ ProfileNode.h
+ Profiler.cpp
+ Profiler.h
+ ProfilerServer.h
+ ProfilerServer.mm
+ TreeProfile.cpp
+ TreeProfile.h
+2 runtime/
+0 ArgList.cpp
+ ArgList.h
+ Arguments.cpp
+ Arguments.h
+ ArrayConstructor.cpp
+ ArrayConstructor.h
+ ArrayPrototype.cpp
+ ArrayPrototype.h
+ BatchedTransitionOptimizer.h
+ BooleanConstructor.cpp
+ BooleanConstructor.h
+ BooleanObject.cpp
+ BooleanObject.h
+ BooleanPrototype.cpp
+ BooleanPrototype.h
+ CallData.cpp
+ CallData.h
+ ClassInfo.h
+ Collector.cpp
+ Collector.h
+ CollectorHeapIterator.h
+ CommonIdentifiers.cpp
+ CommonIdentifiers.h
+ Completion.cpp
+ Completion.h
+ ConstructData.cpp
+ ConstructData.h
+ DateConstructor.cpp
+ DateConstructor.h
+ DateConversion.cpp
+ DateConversion.h
+ DateInstance.cpp
+ DateInstance.h
+ DatePrototype.cpp
+ DatePrototype.h
+ ErrorConstructor.cpp
+ ErrorConstructor.h
+ Error.cpp
+ Error.h
+ ErrorInstance.cpp
+ ErrorInstance.h
+ ErrorPrototype.cpp
+ ErrorPrototype.h
+ ExceptionHelpers.cpp
+ ExceptionHelpers.h
+ Executable.cpp
+ Executable.h
+ FunctionConstructor.cpp
+ FunctionConstructor.h
+ FunctionPrototype.cpp
+ FunctionPrototype.h
+ GetterSetter.cpp
+ GetterSetter.h
+ GlobalEvalFunction.cpp
+ GlobalEvalFunction.h
+ Identifier.cpp
+ Identifier.h
+ InitializeThreading.cpp
+ InitializeThreading.h
+ InternalFunction.cpp
+ InternalFunction.h
+ JSActivation.cpp
+ JSActivation.h
+ JSAPIValueWrapper.cpp
+ JSAPIValueWrapper.h
+ JSArray.cpp
+ JSArray.h
+ JSByteArray.cpp
+ JSByteArray.h
+ JSCell.cpp
+ JSCell.h
+ JSFunction.cpp
+ JSFunction.h
+ JSGlobalData.cpp
+ JSGlobalData.h
+ JSGlobalObject.cpp
+ JSGlobalObjectFunctions.cpp
+ JSGlobalObjectFunctions.h
+ JSGlobalObject.h
+ JSImmediate.cpp
+ JSImmediate.h
+ JSLock.cpp
+ JSLock.h
+ JSNotAnObject.cpp
+ JSNotAnObject.h
+ JSNumberCell.cpp
+ JSNumberCell.h
+ JSObject.cpp
+ JSObject.h
+ JSONObject.cpp
+ JSONObject.h
+ JSPropertyNameIterator.cpp
+ JSPropertyNameIterator.h
+ JSStaticScopeObject.cpp
+ JSStaticScopeObject.h
+ JSString.cpp
+ JSString.h
+ JSType.h
+ JSTypeInfo.h
+ JSValue.cpp
+ JSValue.h
+ JSVariableObject.cpp
+ JSVariableObject.h
+ JSWrapperObject.cpp
+ JSWrapperObject.h
+ LiteralParser.cpp
+ LiteralParser.h
+ Lookup.cpp
+ Lookup.h
+ MarkStack.cpp
+ MarkStack.h
+ MarkStackPosix.cpp
+ MarkStackWin.cpp
+ MathObject.cpp
+ MathObject.h
+ NativeErrorConstructor.cpp
+ NativeErrorConstructor.h
+ NativeErrorPrototype.cpp
+ NativeErrorPrototype.h
+ NativeFunctionWrapper.h
+ NumberConstructor.cpp
+ NumberConstructor.h
+ NumberObject.cpp
+ NumberObject.h
+ NumberPrototype.cpp
+ NumberPrototype.h
+ NumericStrings.h
+ ObjectConstructor.cpp
+ ObjectConstructor.h
+ ObjectPrototype.cpp
+ ObjectPrototype.h
+ Operations.cpp
+ Operations.h
+ PropertyDescriptor.cpp
+ PropertyDescriptor.h
+ PropertyMapHashTable.h
+ PropertyNameArray.cpp
+ PropertyNameArray.h
+ PropertySlot.cpp
+ PropertySlot.h
+ Protect.h
+ PrototypeFunction.cpp
+ PrototypeFunction.h
+ PutPropertySlot.h
+ RegExpConstructor.cpp
+ RegExpConstructor.h
+ RegExp.cpp
+ RegExp.h
+ RegExpMatchesArray.h
+ RegExpObject.cpp
+ RegExpObject.h
+ RegExpPrototype.cpp
+ RegExpPrototype.h
+ ScopeChain.cpp
+ ScopeChain.h
+ ScopeChainMark.h
+ SmallStrings.cpp
+ SmallStrings.h
+ StringConstructor.cpp
+ StringConstructor.h
+ StringObject.cpp
+ StringObject.h
+ StringObjectThatMasqueradesAsUndefined.h
+ StringPrototype.cpp
+ StringPrototype.h
+ StructureChain.cpp
+ StructureChain.h
+ Structure.cpp
+ Structure.h
+ StructureTransitionTable.h
+ SymbolTable.h
+ TimeoutChecker.cpp
+ TimeoutChecker.h
+ Tracing.h
+ UString.cpp
+ UString.h
+2 THANKS
+ wrec/
+0 CharacterClassConstructor.cpp
+ CharacterClassConstructor.h
+ CharacterClass.cpp
+ CharacterClass.h
+ Escapes.h
+ Quantifier.h
+ WREC.cpp
+ WRECFunctors.cpp
+ WRECFunctors.h
+ WRECGenerator.cpp
+ WRECGenerator.h
+ WREC.h
+ WRECParser.cpp
+ WRECParser.h
+2 wscript
+ wtf/
+0 AlwaysInline.h
+ ASCIICType.h
+ Assertions.cpp
+ Assertions.h
+ AVLTree.h
+ ByteArray.cpp
+ ByteArray.h
+ CONTRIBUTORS.pthreads-win32
+ CrossThreadRefCounted.h
+ CurrentTime.cpp
+ CurrentTime.h
+ DateMath.cpp
+ DateMath.h
+ Deque.h
+ DisallowCType.h
+ dtoa.cpp
+ dtoa.h
+ FastAllocBase.h
+ FastMalloc.cpp
+ FastMalloc.h
+ Forward.h
+ GetPtr.h
+ GOwnPtr.cpp
+ GOwnPtr.h
+ HashCountedSet.h
+ HashFunctions.h
+ HashIterators.h
+ HashMap.h
+ HashSet.h
+ HashTable.cpp
+ HashTable.h
+ HashTraits.h
+ ListHashSet.h
+ ListRefPtr.h
+ Locker.h
+ MainThread.cpp
+ MainThread.h
+ MallocZoneSupport.h
+ MathExtras.h
+ MessageQueue.h
+ Noncopyable.h
+ NotFound.h
+ OwnArrayPtr.h
+ OwnFastMallocPtr.h
+ OwnPtrCommon.h
+ OwnPtr.h
+ OwnPtrWin.cpp
+ PassOwnPtr.h
+ PassRefPtr.h
+ Platform.h
+ PossiblyNull.h
+ PtrAndFlags.h
+ qt/
+0 MainThreadQt.cpp
+ ThreadingQt.cpp
+2 RandomNumber.cpp
+ RandomNumber.h
+ RandomNumberSeed.h
+ RefCounted.h
+ RefCountedLeakCounter.cpp
+ RefCountedLeakCounter.h
+ RefPtr.h
+ RefPtrHashMap.h
+ RetainPtr.h
+ SegmentedVector.h
+ StdLibExtras.h
+ StringExtras.h
+ TCPackedCache.h
+ TCPageMap.h
+ TCSpinLock.h
+ TCSystemAlloc.cpp
+ TCSystemAlloc.h
+ Threading.cpp
+ Threading.h
+ ThreadingNone.cpp
+ ThreadingPthreads.cpp
+ ThreadingWin.cpp
+ ThreadSpecific.h
+ ThreadSpecificWin.cpp
+ TypeTraits.cpp
+ TypeTraits.h
+ unicode/
+0 CollatorDefault.cpp
+ Collator.h
+ glib/
+0 UnicodeGLib.cpp
+ UnicodeGLib.h
+ UnicodeMacrosFromICU.h
+2 icu/
+0 CollatorICU.cpp
+ UnicodeIcu.h
+2 qt4/
+0 UnicodeQt4.h
+2 Unicode.h
+ UTF8.cpp
+ UTF8.h
+ wince/
+0 UnicodeWince.cpp
+ UnicodeWince.h
+3 UnusedParam.h
+ Vector.h
+ VectorTraits.h
+ VMTags.h
+ wince/
+0 FastMallocWince.h
+ MemoryManager.cpp
+ MemoryManager.h
+ mt19937ar.c
+3 yarr/
+0 RegexCompiler.cpp
+ RegexCompiler.h
+ RegexInterpreter.cpp
+ RegexInterpreter.h
+ RegexJIT.cpp
+ RegexJIT.h
+ RegexParser.h
+ RegexPattern.h
+3 VERSION
+ WebKit.pri
+2 libjpeg/
+0 change.log
+ coderules.doc
+ filelist.doc
+ install.doc
+ jcapimin.c
+ jcapistd.c
+ jccoefct.c
+ jccolor.c
+ jcdctmgr.c
+ jchuff.c
+ jchuff.h
+ jcinit.c
+ jcmainct.c
+ jcmarker.c
+ jcmaster.c
+ jcomapi.c
+ jconfig.bcc
+ jconfig.cfg
+ jconfig.dj
+ jconfig.doc
+ jconfig.h
+ jconfig.mac
+ jconfig.manx
+ jconfig.mc6
+ jconfig.sas
+ jconfig.st
+ jconfig.vc
+ jconfig.vms
+ jconfig.wat
+ jcparam.c
+ jcphuff.c
+ jcprepct.c
+ jcsample.c
+ jctrans.c
+ jdapimin.c
+ jdapistd.c
+ jdatadst.c
+ jdatasrc.c
+ jdcoefct.c
+ jdcolor.c
+ jdct.h
+ jddctmgr.c
+ jdhuff.c
+ jdhuff.h
+ jdinput.c
+ jdmainct.c
+ jdmarker.c
+ jdmaster.c
+ jdmerge.c
+ jdphuff.c
+ jdpostct.c
+ jdsample.c
+ jdtrans.c
+ jerror.c
+ jerror.h
+ jfdctflt.c
+ jfdctfst.c
+ jfdctint.c
+ jidctflt.c
+ jidctfst.c
+ jidctint.c
+ jidctred.c
+ jinclude.h
+ jmemmgr.c
+ jmemnobs.c
+ jmemsys.h
+ jmorecfg.h
+ jpegint.h
+ jpeglib.h
+ jquant1.c
+ jquant2.c
+ jutils.c
+ jversion.h
+ libjpeg.doc
+ makefile.ansi
+ makefile.bcc
+ makefile.cfg
+ makefile.dj
+ makefile.manx
+ makefile.mc6
+ makefile.mms
+ makefile.sas
+ makefile.unix
+ makefile.vc
+ makefile.vms
+ makefile.wat
+ README
+ structure.doc
+ usage.doc
+ wizard.doc
+2 libmng/
+0 CHANGES
+ doc/
+0 doc.readme
+ libmng.txt
+ man/
+0 jng.5
+ libmng.3
+ mng.5
+2 misc/
+0 magic.dif
+2 Plan1.png
+ Plan2.png
+ rpm/
+0 libmng-1.0.10-rhconf.patch
+ libmng.spec
+3 libmng_callback_xs.c
+ libmng_chunk_descr.c
+ libmng_chunk_descr.h
+ libmng_chunk_io.c
+ libmng_chunk_io.h
+ libmng_chunk_prc.c
+ libmng_chunk_prc.h
+ libmng_chunks.h
+ libmng_chunk_xs.c
+ libmng_cms.c
+ libmng_cms.h
+ libmng_conf.h
+ libmng_data.h
+ libmng_display.c
+ libmng_display.h
+ libmng_dither.c
+ libmng_dither.h
+ libmng_error.c
+ libmng_error.h
+ libmng_filter.c
+ libmng_filter.h
+ libmng.h
+ libmng_hlapi.c
+ libmng_jpeg.c
+ libmng_jpeg.h
+ libmng_memory.h
+ libmng_object_prc.c
+ libmng_object_prc.h
+ libmng_objects.h
+ libmng_pixels.c
+ libmng_pixels.h
+ libmng_prop_xs.c
+ libmng_read.c
+ libmng_read.h
+ libmng_trace.c
+ libmng_trace.h
+ libmng_types.h
+ libmng_write.c
+ libmng_write.h
+ libmng_zlib.c
+ libmng_zlib.h
+ LICENSE
+ makefiles/
+0 configure.in
+ Makefile.am
+ makefile.bcb3
+ makefile.dj
+ makefile.linux
+ makefile.mingw
+0 dll
+2 makefile.qnx
+ makefile.unix
+ makefile.vcwin32
+ README
+2 README
+0 .autoconf
+ .config
+ .contrib
+ .dll
+ .examples
+ .footprint
+ .packaging
+2 unmaintained/
+0 autogen.sh
+3 libpng/
+0 ANNOUNCE
+ CHANGES
+ configure
+ example.c
+ INSTALL
+ KNOWNBUG
+ libpng-1.2.40.txt
+ libpng.3
+ libpngpf.3
+ LICENSE
+ png.5
+ pngbar.jpg
+ pngbar.png
+ png.c
+ pngconf.h
+ pngerror.c
+ pnggccrd.c
+ pngget.c
+ png.h
+ pngmem.c
+ pngnow.png
+ pngpread.c
+ pngread.c
+ pngrio.c
+ pngrtran.c
+ pngrutil.c
+ pngset.c
+ pngtest.c
+ pngtest.png
+ pngtrans.c
+ pngvcrd.c
+ pngwio.c
+ pngwrite.c
+ pngwtran.c
+ pngwutil.c
+ projects/
+0 beos/
+0 x86-shared.proj
+ x86-shared.txt
+ x86-static.proj
+ x86-static.txt
+2 cbuilder5/
+0 libpng.bpf
+ libpng.bpg
+ libpng.bpr
+ libpng.cpp
+ libpng.readme.txt
+ libpngstat.bpf
+ libpngstat.bpr
+ zlib.readme.txt
+2 netware.txt
+ visualc6/
+0 libpng.dsp
+ libpng.dsw
+ pngtest.dsp
+ README.txt
+2 visualc71/
+0 libpng.sln
+ libpng.vcproj
+ pngtest.vcproj
+ PRJ0041.mak
+ README.txt
+ README_zlib.txt
+ zlib.vcproj
+2 wince.txt
+2 README
+ scripts/
+0 CMakeLists.txt
+ descrip.mms
+ libpng-config-body.in
+ libpng-config-head.in
+ libpng-config.in
+ libpng.icc
+ libpng.pc-configure.in
+ libpng.pc.in
+ makefile.32sunu
+ makefile.64sunu
+ makefile.acorn
+ makefile.aix
+ makefile.amiga
+ makefile.atari
+ makefile.bc32
+ makefile.beos
+ makefile.bor
+ makefile.cygwin
+ makefile.darwin
+ makefile.dec
+ makefile.dj2
+ makefile.elf
+ makefile.freebsd
+ makefile.gcc
+ makefile.gcmmx
+ makefile.hp64
+ makefile.hpgcc
+ makefile.hpux
+ makefile.ibmc
+ makefile.intel
+ makefile.knr
+ makefile.linux
+ makefile.mingw
+ makefile.mips
+ makefile.msc
+ makefile.ne12bsd
+ makefile.netbsd
+ makefile.nommx
+ makefile.openbsd
+ makefile.os2
+ makefile.sco
+ makefile.sggcc
+ makefile.sgi
+ makefile.so9
+ makefile.solaris
+0 -x86
+2 makefile.std
+ makefile.sunos
+ makefile.tc3
+ makefile.vcawin32
+ makefile.vcwin32
+ makefile.watcom
+ makevms.com
+ pngos2.def
+ pngw32.def
+ pngw32.rc
+ SCOPTIONS.ppc
+ smakefile.ppc
+2 TODO
+ Y2KINFO
+2 libtiff/
+0 aclocal.m4
+ autogen.sh
+ ChangeLog
+ config/
+0 compile
+ config.guess
+ config.sub
+ depcomp
+ install-sh
+ ltmain.sh
+ missing
+ mkinstalldirs
+2 configure
+0 .ac
+2 COPYRIGHT
+ HOWTO-RELEASE
+ html/
+0 addingtags.html
+ bugs.html
+ build.html
+ contrib.html
+ document.html
+ images/
+0 back.gif
+ bali.jpg
+ cat.gif
+ cover.jpg
+ cramps.gif
+ dave.gif
+2 images.html
+ images/info.gif
+ images/jello.jpg
+ images/jim.gif
+ images/Makefile.am
+ images/Makefile.in
+ images/note.gif
+ images/oxford.gif
+ images/quad.jpg
+ images/ring.gif
+ images/smallliz.jpg
+ images/strike.gif
+ images/warning.gif
+ index.html
+ internals.html
+ intro.html
+ libtiff.html
+ Makefile.am
+ Makefile.in
+ man/
+0 fax2ps.1.html
+ fax2tiff.1.html
+ gif2tiff.1.html
+ index.html
+ libtiff.3tiff.html
+ Makefile.am
+ Makefile.in
+ pal2rgb.1.html
+ ppm2tiff.1.html
+ ras2tiff.1.html
+ raw2tiff.1.html
+ rgb2ycbcr.1.html
+ sgi2tiff.1.html
+ thumbnail.1.html
+ tiff2bw.1.html
+ tiff2pdf.1.html
+ tiff2ps.1.html
+ tiff2rgba.1.html
+ TIFFbuffer.3tiff.html
+ TIFFClose.3tiff.html
+ tiffcmp.1.html
+ TIFFcodec.3tiff.html
+ TIFFcolor.3tiff.html
+ tiffcp.1.html
+ TIFFDataWidth.3tiff.html
+ tiffdither.1.html
+ tiffdump.1.html
+ TIFFError.3tiff.html
+ TIFFFlush.3tiff.html
+ TIFFGetField.3tiff.html
+ tiffgt.1.html
+ tiffinfo.1.html
+ tiffmedian.1.html
+ TIFFmemory.3tiff.html
+ TIFFOpen.3tiff.html
+ TIFFPrintDirectory.3tiff.html
+ TIFFquery.3tiff.html
+ TIFFReadDirectory.3tiff.html
+ TIFFReadEncodedStrip.3tiff.html
+ TIFFReadEncodedTile.3tiff.html
+ TIFFReadRawStrip.3tiff.html
+ TIFFReadRawTile.3tiff.html
+ TIFFReadRGBAImage.3tiff.html
+ TIFFReadRGBAStrip.3tiff.html
+ TIFFReadRGBATile.3tiff.html
+ TIFFReadScanline.3tiff.html
+ TIFFReadTile.3tiff.html
+ TIFFRGBAImage.3tiff.html
+ tiffset.1.html
+ TIFFSetDirectory.3tiff.html
+ TIFFSetField.3tiff.html
+ TIFFsize.3tiff.html
+ tiffsplit.1.html
+ TIFFstrip.3tiff.html
+ tiffsv.1.html
+ TIFFswab.3tiff.html
+ TIFFtile.3tiff.html
+ TIFFWarning.3tiff.html
+ TIFFWriteDirectory.3tiff.html
+ TIFFWriteEncodedStrip.3tiff.html
+ TIFFWriteEncodedTile.3tiff.html
+ TIFFWriteRawStrip.3tiff.html
+ TIFFWriteRawTile.3tiff.html
+ TIFFWriteScanline.3tiff.html
+ TIFFWriteTile.3tiff.html
+2 misc.html
+ support.html
+ TIFFTechNote2.html
+ tools.html
+ v3.4beta007.html
+ v3.4beta016.html
+ v3.4beta018.html
+ v3.4beta024.html
+ v3.4beta028.html
+ v3.4beta029.html
+ v3.4beta031.html
+ v3.4beta032.html
+ v3.4beta033.html
+ v3.4beta034.html
+ v3.4beta035.html
+ v3.4beta036.html
+ v3.5.1.html
+ v3.5.2.html
+ v3.5.3.html
+ v3.5.4.html
+ v3.5.5.html
+ v3.5.6-beta.html
+ v3.5.7.html
+ v3.6.0.html
+ v3.6.1.html
+ v3.7.0alpha.html
+ v3.7.0beta2.html
+ v3.7.0beta.html
+ v3.7.0.html
+ v3.7.1.html
+ v3.7.2.html
+ v3.7.3.html
+ v3.7.4.html
+ v3.8.0.html
+ v3.8.1.html
+ v3.8.2.html
+2 libtiff/
+0 libtiff.def
+ Makefile.am
+ Makefile.in
+ Makefile.vc
+ mkg3states.c
+ SConstruct
+ t4.h
+ tif_acorn.c
+ tif_apple.c
+ tif_atari.c
+ tif_aux.c
+ tif_close.c
+ tif_codec.c
+ tif_color.c
+ tif_compress.c
+ tif_config.h
+0 .in
+ .vc
+2 tif_dir.c
+ tif_dir.h
+ tif_dirinfo.c
+ tif_dirread.c
+ tif_dirwrite.c
+ tif_dumpmode.c
+ tif_error.c
+ tif_extension.c
+ tif_fax3.c
+ tif_fax3.h
+ tif_fax3sm.c
+ tiffconf.h
+0 .in
+ .vc
+2 tiff.h
+ tiffio.h
+0 xx
+2 tiffiop.h
+ tif_flush.c
+ tiffvers.h
+ tif_getimage.c
+ tif_jpeg.c
+ tif_luv.c
+ tif_lzw.c
+ tif_msdos.c
+ tif_next.c
+ tif_ojpeg.c
+ tif_open.c
+ tif_packbits.c
+ tif_pixarlog.c
+ tif_predict.c
+ tif_predict.h
+ tif_print.c
+ tif_read.c
+ tif_stream.cxx
+ tif_strip.c
+ tif_swab.c
+ tif_thunder.c
+ tif_tile.c
+ tif_unix.c
+ tif_version.c
+ tif_warning.c
+ tif_win32.c
+ tif_win3.c
+ tif_write.c
+ tif_zip.c
+ uvcode.h
+2 m4/
+0 acinclude.m4
+ libtool.m4
+ ltoptions.m4
+ ltsugar.m4
+ ltversion.m4
+2 Makefile.am
+ Makefile.in
+ Makefile.vc
+ nmake.opt
+ port/
+0 dummy.c
+ getopt.c
+ lfind.c
+ Makefile.am
+ Makefile.in
+ Makefile.vc
+ strcasecmp.c
+ strtoul.c
+2 README
+ RELEASE-DATE
+ SConstruct
+ test/
+0 ascii_tag.c
+ check_tag.c
+ long_tag.c
+ Makefile.am
+ Makefile.in
+ short_tag.c
+ strip.c
+ strip_rw.c
+ test_arrays.c
+ test_arrays.h
+2 TODO
+ VERSION
+2 Makefile
+ md4/
+0 md4.cpp
+ md4.h
+2 md5/
+0 md5.cpp
+ md5.h
+2 patches/
+0 freetype-2.3.5-config.patch
+ freetype-2.3.6-ascii.patch
+ freetype-2.3.6-vxworks.patch
+ libjpeg-6b-config.patch
+ libjpeg-6b-vxworks.patch
+ libmng-1.0.10-endless-loop.patch
+ libpng-1.2.20-elf-visibility.patch
+ libpng-1.2.20-vxworks.patch
+ libtiff-3.8.2-config.patch
+ libtiff-3.8.2-vxworks.patch
+ sqlite-3.5.6-config.patch
+ sqlite-3.5.6-vxworks.patch
+ sqlite-3.5.6-wince.patch
+ zlib-1.2.3-elf-visibility.patch
+2 phonon/
+0 CMakeLists.txt
+ COPYING.LIB
+ ds9/
+0 abstractvideorenderer.cpp
+ abstractvideorenderer.h
+ audiooutput.cpp
+ audiooutput.h
+ backend.cpp
+ backend.h
+ backendnode.cpp
+ backendnode.h
+ CMakeLists.txt
+ compointer.h
+ ConfigureChecks.cmake
+ ds9.desktop
+ effect.cpp
+ effect.h
+ fakesource.cpp
+ fakesource.h
+ iodevicereader.cpp
+ iodevicereader.h
+ lgpl-2.1.txt
+ lgpl-3.txt
+ mediagraph.cpp
+ mediagraph.h
+ mediaobject.cpp
+ mediaobject.h
+ phononds9_namespace.h
+ qasyncreader.cpp
+ qasyncreader.h
+ qaudiocdreader.cpp
+ qaudiocdreader.h
+ qbasefilter.cpp
+ qbasefilter.h
+ qmeminputpin.cpp
+ qmeminputpin.h
+ qpin.cpp
+ qpin.h
+ videorenderer_soft.cpp
+ videorenderer_soft.h
+ videorenderer_vmr9.cpp
+ videorenderer_vmr9.h
+ videowidget.cpp
+ videowidget.h
+ volumeeffect.cpp
+ volumeeffect.h
+2 gstreamer/
+0 abstractrenderer.cpp
+ abstractrenderer.h
+ alsasink2.c
+ alsasink2.h
+ artssink.cpp
+ artssink.h
+ audioeffect.cpp
+ audioeffect.h
+ audiooutput.cpp
+ audiooutput.h
+ backend.cpp
+ backend.h
+ CMakeLists.txt
+ common.h
+ ConfigureChecks.cmake
+ devicemanager.cpp
+ devicemanager.h
+ effect.cpp
+ effect.h
+ effectmanager.cpp
+ effectmanager.h
+ glrenderer.cpp
+ glrenderer.h
+ gsthelper.cpp
+ gsthelper.h
+ gstreamer.desktop
+ lgpl-2.1.txt
+ lgpl-3.txt
+ medianode.cpp
+ medianodeevent.cpp
+ medianodeevent.h
+ medianode.h
+ mediaobject.cpp
+ mediaobject.h
+ message.cpp
+ message.h
+ Messages.sh
+ phononsrc.cpp
+ phononsrc.h
+ qwidgetvideosink.cpp
+ qwidgetvideosink.h
+ streamreader.cpp
+ streamreader.h
+ videowidget.cpp
+ videowidget.h
+ volumefadereffect.cpp
+ volumefadereffect.h
+ widgetrenderer.cpp
+ widgetrenderer.h
+ x11renderer.cpp
+ x11renderer.h
+2 includes/
+0 CMakeLists.txt
+ Phonon/
+0 AbstractAudioOutput
+ AbstractMediaStream
+ AbstractVideoOutput
+ AddonInterface
+ AudioDevice
+0 Enumerator
+2 AudioOutput
+0 Device
+0 Model
+2 Interface
+2 BackendCapabilities
+ BackendInterface
+ Effect
+0 Description
+0 Model
+2 Interface
+ Parameter
+ Widget
+2 Experimental/
+0 AbstractVideoDataOutput
+ AudioDataOutput
+ SnapshotInterface
+ VideoDataOutput
+0 Interface
+2 VideoFrame
+0 2
+2 Visualization
+2 Global
+ MediaController
+ MediaNode
+ MediaObject
+0 Interface
+2 MediaSource
+ ObjectDescription
+0 Model
+2 Path
+ PlatformPlugin
+ SeekSlider
+ StreamInterface
+ VideoPlayer
+ VideoWidget
+0 Interface
+2 VolumeFaderEffect
+ VolumeFaderInterface
+ VolumeSlider
+3 mmf/
+0 abstractaudioeffect.cpp
+ abstractaudioeffect.h
+ abstractmediaplayer.cpp
+ abstractmediaplayer.h
+ abstractplayer.cpp
+ abstractplayer.h
+ ancestormovemonitor.cpp
+ ancestormovemonitor.h
+ audioequalizer.cpp
+ audioequalizer.h
+ audiooutput.cpp
+ audiooutput.h
+ audioplayer.cpp
+ audioplayer.h
+ backend.cpp
+ backend.h
+ bassboost.cpp
+ bassboost.h
+ defs.h
+ dummyplayer.cpp
+ dummyplayer.h
+ effectfactory.cpp
+ effectfactory.h
+ mediaobject.cpp
+ mediaobject.h
+ mmf_medianode.cpp
+ mmf_medianode.h
+ mmf_videoplayer.cpp
+ mmf_videoplayer.h
+ objectdump.cpp
+ objectdump.h
+ objectdump_symbian.cpp
+ objectdump_symbian.h
+ objecttree.cpp
+ objecttree.h
+ utils.cpp
+ utils.h
+ videooutput.cpp
+ videooutput.h
+ videooutputobserver.h
+ videowidget.cpp
+ videowidget.h
+ volumeobserver.h
+2 phonon/
+0 abstractaudiooutput.cpp
+ abstractaudiooutput.h
+ abstractaudiooutput_p.cpp
+ abstractaudiooutput_p.h
+ abstractmediastream.cpp
+ abstractmediastream.h
+ abstractmediastream_p.h
+ abstractvideooutput.cpp
+ abstractvideooutput.h
+ abstractvideooutput_p.cpp
+ abstractvideooutput_p.h
+ addoninterface.h
+ audiooutputadaptor.cpp
+ audiooutputadaptor_p.h
+ audiooutput.cpp
+ audiooutput.h
+ audiooutputinterface.cpp
+ audiooutputinterface.h
+ audiooutput_p.h
+ backendcapabilities.cpp
+ backendcapabilities.h
+ backendcapabilities_p.h
+ backend.dox
+ backendinterface.h
+ BUGS
+ CMakeLists.txt
+ effect.cpp
+ effect.h
+ effectinterface.h
+ effectparameter.cpp
+ effectparameter.h
+ effectparameter_p.h
+ effect_p.h
+ effectwidget.cpp
+ effectwidget.h
+ effectwidget_p.h
+ extractmethodcalls.rb
+ factory.cpp
+ factory_p.h
+ frontendinterface_p.h
+ globalconfig.cpp
+ globalconfig_p.h
+ globalstatic_p.h
+ IDEAS
+ iodevicestream.cpp
+ iodevicestream_p.h
+ .krazy
+ mediacontroller.cpp
+ mediacontroller.h
+ medianode.cpp
+ medianodedestructionhandler_p.h
+ medianode.h
+ medianode_p.h
+ mediaobject.cpp
+ mediaobject.dox
+ mediaobject.h
+ mediaobjectinterface.h
+ mediaobject_p.h
+ mediasource.cpp
+ mediasource.h
+ mediasource_p.h
+ Messages.sh
+ objectdescription.cpp
+ objectdescription.h
+ objectdescriptionmodel.cpp
+ objectdescriptionmodel.h
+ objectdescriptionmodel_p.h
+ objectdescription_p.h
+ org.kde.Phonon.AudioOutput.xml
+ path.cpp
+ path.h
+ path_p.h
+2 phonon.pc.cmake
+ phonon/phonondefs.h
+ phonon/phonondefs_p.h
+ phonon/phonon_export.h
+ phonon/phononnamespace.cpp
+ phonon/phononnamespace.h
+0 .in
+2 phonon/phononnamespace_p.h
+ phonon/platform.cpp
+ phonon/platform_p.h
+ phonon/platformplugin.h
+ phonon/preprocessandextract.sh
+ phonon/qsettingsgroup_p.h
+ phonon/seekslider.cpp
+ phonon/seekslider.h
+ phonon/seekslider_p.h
+ phonon/streaminterface.cpp
+ phonon/streaminterface.h
+ phonon/streaminterface_p.h
+ phonon/stream-thoughts
+ phonon/TODO
+ phonon/videoplayer.cpp
+ phonon/videoplayer.h
+ phonon/videowidget.cpp
+ phonon/videowidget.h
+ phonon/videowidgetinterface.h
+ phonon/videowidget_p.h
+ phonon/volumefadereffect.cpp
+ phonon/volumefadereffect.h
+ phonon/volumefadereffect_p.h
+ phonon/volumefaderinterface.h
+ phonon/volumeslider.cpp
+ phonon/volumeslider.h
+ phonon/volumeslider_p.h
+ qt7/
+0 audioconnection.h
+ audioconnection.mm
+ audiodevice.h
+ audiodevice.mm
+ audioeffects.h
+ audioeffects.mm
+ audiograph.h
+ audiograph.mm
+ audiomixer.h
+ audiomixer.mm
+ audionode.h
+ audionode.mm
+ audiooutput.h
+ audiooutput.mm
+ audiopartoutput.h
+ audiopartoutput.mm
+ audiosplitter.h
+ audiosplitter.mm
+ backend.h
+ backendheader.h
+ backendheader.mm
+ backendinfo.h
+ backendinfo.mm
+ backend.mm
+ CMakeLists.txt
+ ConfigureChecks.cmake
+ lgpl-2.1.txt
+ lgpl-3.txt
+ medianodeevent.h
+ medianodeevent.mm
+ medianode.h
+ medianode.mm
+ medianodevideopart.h
+ medianodevideopart.mm
+ mediaobjectaudionode.h
+ mediaobjectaudionode.mm
+ mediaobject.h
+ mediaobject.mm
+ quicktimeaudioplayer.h
+ quicktimeaudioplayer.mm
+ quicktimemetadata.h
+ quicktimemetadata.mm
+ quicktimestreamreader.h
+ quicktimestreamreader.mm
+ quicktimevideoplayer.h
+ quicktimevideoplayer.mm
+ videoeffect.h
+ videoeffect.mm
+ videoframe.h
+ videoframe.mm
+ videowidget.h
+ videowidget.mm
+2 waveout/
+0 audiooutput.cpp
+ audiooutput.h
+ backend.cpp
+ backend.h
+ mediaobject.cpp
+ mediaobject.h
+3 powervr/
+0 pvr2d.h
+ wsegl.h
+2 ptmalloc/
+0 ChangeLog
+ COPYRIGHT
+ lran2.h
+ Makefile
+ malloc-2.8.3.h
+ malloc.c
+ malloc-private.h
+ ptmalloc3.c
+ README
+ sysdeps/
+0 generic/
+0 atomic.h
+ malloc-machine.h
+ thread-st.h
+2 pthread/
+0 malloc-machine.h
+ thread-st.h
+2 solaris/
+0 malloc-machine.h
+ thread-st.h
+2 sproc/
+0 malloc-machine.h
+ thread-st.h
+4 README
+ sha1/
+0 sha1.cpp
+2 sqlite/
+0 shell.c
+ sqlite3.c
+ sqlite3.h
+2 webkit/
+0 ChangeLog
+ .gitignore
+ JavaScriptCore/
+0 API/
+0 APICast.h
+ JavaScriptCore.h
+ JavaScript.h
+ JSBase.cpp
+ JSBase.h
+ JSBasePrivate.h
+ JSCallbackConstructor.cpp
+ JSCallbackConstructor.h
+ JSCallbackFunction.cpp
+ JSCallbackFunction.h
+ JSCallbackObject.cpp
+ JSCallbackObjectFunctions.h
+ JSCallbackObject.h
+ JSClassRef.cpp
+ JSClassRef.h
+ JSContextRef.cpp
+ JSContextRef.h
+ JSContextRefPrivate.h
+ JSObjectRef.cpp
+ JSObjectRef.h
+ JSProfilerPrivate.cpp
+ JSProfilerPrivate.h
+ JSRetainPtr.h
+ JSStringRefBSTR.cpp
+ JSStringRefBSTR.h
+ JSStringRefCF.cpp
+ JSStringRefCF.h
+ JSStringRef.cpp
+ JSStringRef.h
+ JSValueRef.cpp
+ JSValueRef.h
+ OpaqueJSString.cpp
+ OpaqueJSString.h
+ WebKitAvailability.h
+2 assembler/
+0 AbstractMacroAssembler.h
+ ARMAssembler.cpp
+ ARMAssembler.h
+ ARMv7Assembler.h
+ AssemblerBuffer.h
+ AssemblerBufferWithConstantPool.h
+ CodeLocation.h
+ LinkBuffer.h
+ MacroAssemblerARM.cpp
+ MacroAssemblerARM.h
+ MacroAssemblerARMv7.h
+ MacroAssemblerCodeRef.h
+ MacroAssembler.h
+ MacroAssemblerX86_64.h
+ MacroAssemblerX86Common.h
+ MacroAssemblerX86.h
+ RepatchBuffer.h
+ X86Assembler.h
+2 AUTHORS
+ bytecode/
+0 CodeBlock.cpp
+ CodeBlock.h
+ EvalCodeCache.h
+ Instruction.h
+ JumpTable.cpp
+ JumpTable.h
+ Opcode.cpp
+ Opcode.h
+ SamplingTool.cpp
+ SamplingTool.h
+ StructureStubInfo.cpp
+ StructureStubInfo.h
+2 bytecompiler/
+0 BytecodeGenerator.cpp
+ BytecodeGenerator.h
+ Label.h
+ LabelScope.h
+ RegisterID.h
+2 ChangeLog
+0 -2002-12-03
+ -2003-10-25
+ -2007-10-14
+ -2008-08-10
+ -2009-06-16
+2 config.h
+ COPYING.LIB
+ create_hash_table
+ debugger/
+0 DebuggerActivation.cpp
+ DebuggerActivation.h
+ DebuggerCallFrame.cpp
+ DebuggerCallFrame.h
+ Debugger.cpp
+ Debugger.h
+2 DerivedSources.make
+ docs/
+0 make-bytecode-docs.pl
+2 ForwardingHeaders/
+0 JavaScriptCore/
+0 APICast.h
+ JavaScriptCore.h
+ JavaScript.h
+ JSBase.h
+ JSContextRef.h
+ JSObjectRef.h
+ JSRetainPtr.h
+ JSStringRefCF.h
+ JSStringRef.h
+ JSValueRef.h
+ OpaqueJSString.h
+ WebKitAvailability.h
+3 generated/
+0 ArrayPrototype.lut.h
+ chartables.c
+ DatePrototype.lut.h
+ Grammar.cpp
+ Grammar.h
+ JSONObject.lut.h
+ Lexer.lut.h
+ MathObject.lut.h
+ NumberConstructor.lut.h
+ RegExpConstructor.lut.h
+ RegExpObject.lut.h
+ StringPrototype.lut.h
+2 headers.pri
+ Info.plist
+ interpreter/
+0 CachedCall.h
+ CallFrameClosure.h
+ CallFrame.cpp
+ CallFrame.h
+ Interpreter.cpp
+ Interpreter.h
+ RegisterFile.cpp
+ RegisterFile.h
+ Register.h
+2 JavaScriptCore.gypi
+ JavaScriptCore.order
+ JavaScriptCorePrefix.h
+ JavaScriptCore.pri
+ JavaScriptCore.pro
+ jit/
+0 ExecutableAllocator.cpp
+ ExecutableAllocatorFixedVMPool.cpp
+ ExecutableAllocator.h
+ ExecutableAllocatorPosix.cpp
+ ExecutableAllocatorSymbian.cpp
+ ExecutableAllocatorWin.cpp
+ JITArithmetic.cpp
+ JITCall.cpp
+ JITCode.h
+ JIT.cpp
+ JIT.h
+ JITInlineMethods.h
+ JITOpcodes.cpp
+ JITPropertyAccess.cpp
+ JITStubCall.h
+ JITStubs.cpp
+ JITStubs.h
+2 jsc.cpp
+ make-generated-sources.sh
+ os-win32/
+0 stdbool.h
+ stdint.h
+2 parser/
+0 Grammar.y
+ Keywords.table
+ Lexer.cpp
+ Lexer.h
+ NodeConstructors.h
+ NodeInfo.h
+ Nodes.cpp
+ Nodes.h
+ ParserArena.cpp
+ ParserArena.h
+ Parser.cpp
+ Parser.h
+ ResultType.h
+ SourceCode.h
+ SourceProvider.h
+2 pcre/
+0 AUTHORS
+ COPYING
+ dftables
+ pcre_compile.cpp
+ pcre_exec.cpp
+ pcre.h
+ pcre_internal.h
+ pcre.pri
+ pcre_tables.cpp
+ pcre_ucp_searchfuncs.cpp
+ pcre_xclass.cpp
+ ucpinternal.h
+ ucptable.cpp
+2 profiler/
+0 CallIdentifier.h
+ HeavyProfile.cpp
+ HeavyProfile.h
+ Profile.cpp
+ ProfileGenerator.cpp
+ ProfileGenerator.h
+ Profile.h
+ ProfileNode.cpp
+ ProfileNode.h
+ Profiler.cpp
+ Profiler.h
+ ProfilerServer.h
+ ProfilerServer.mm
+ TreeProfile.cpp
+ TreeProfile.h
+2 runtime/
+0 ArgList.cpp
+ ArgList.h
+ Arguments.cpp
+ Arguments.h
+ ArrayConstructor.cpp
+ ArrayConstructor.h
+ ArrayPrototype.cpp
+ ArrayPrototype.h
+ BatchedTransitionOptimizer.h
+ BooleanConstructor.cpp
+ BooleanConstructor.h
+ BooleanObject.cpp
+ BooleanObject.h
+ BooleanPrototype.cpp
+ BooleanPrototype.h
+ CallData.cpp
+ CallData.h
+ ClassInfo.h
+ Collector.cpp
+ Collector.h
+ CollectorHeapIterator.h
+ CommonIdentifiers.cpp
+ CommonIdentifiers.h
+ Completion.cpp
+ Completion.h
+ ConstructData.cpp
+ ConstructData.h
+ DateConstructor.cpp
+ DateConstructor.h
+ DateConversion.cpp
+ DateConversion.h
+ DateInstanceCache.h
+ DateInstance.cpp
+ DateInstance.h
+ DatePrototype.cpp
+ DatePrototype.h
+ ErrorConstructor.cpp
+ ErrorConstructor.h
+ Error.cpp
+ Error.h
+ ErrorInstance.cpp
+ ErrorInstance.h
+ ErrorPrototype.cpp
+ ErrorPrototype.h
+ ExceptionHelpers.cpp
+ ExceptionHelpers.h
+ Executable.cpp
+ Executable.h
+ FunctionConstructor.cpp
+ FunctionConstructor.h
+ FunctionPrototype.cpp
+ FunctionPrototype.h
+ GetterSetter.cpp
+ GetterSetter.h
+ GlobalEvalFunction.cpp
+ GlobalEvalFunction.h
+ Identifier.cpp
+ Identifier.h
+ InitializeThreading.cpp
+ InitializeThreading.h
+ InternalFunction.cpp
+ InternalFunction.h
+ JSActivation.cpp
+ JSActivation.h
+ JSAPIValueWrapper.cpp
+ JSAPIValueWrapper.h
+ JSArray.cpp
+ JSArray.h
+ JSByteArray.cpp
+ JSByteArray.h
+ JSCell.cpp
+ JSCell.h
+ JSFunction.cpp
+ JSFunction.h
+ JSGlobalData.cpp
+ JSGlobalData.h
+ JSGlobalObject.cpp
+ JSGlobalObjectFunctions.cpp
+ JSGlobalObjectFunctions.h
+ JSGlobalObject.h
+ JSImmediate.cpp
+ JSImmediate.h
+ JSLock.cpp
+ JSLock.h
+ JSNotAnObject.cpp
+ JSNotAnObject.h
+ JSNumberCell.cpp
+ JSNumberCell.h
+ JSObject.cpp
+ JSObject.h
+ JSONObject.cpp
+ JSONObject.h
+ JSPropertyNameIterator.cpp
+ JSPropertyNameIterator.h
+ JSStaticScopeObject.cpp
+ JSStaticScopeObject.h
+ JSString.cpp
+ JSString.h
+ JSType.h
+ JSTypeInfo.h
+ JSValue.cpp
+ JSValue.h
+ JSVariableObject.cpp
+ JSVariableObject.h
+ JSWrapperObject.cpp
+ JSWrapperObject.h
+ LiteralParser.cpp
+ LiteralParser.h
+ Lookup.cpp
+ Lookup.h
+ MarkStack.cpp
+ MarkStack.h
+ MarkStackPosix.cpp
+ MarkStackSymbian.cpp
+ MarkStackWin.cpp
+ MathObject.cpp
+ MathObject.h
+ NativeErrorConstructor.cpp
+ NativeErrorConstructor.h
+ NativeErrorPrototype.cpp
+ NativeErrorPrototype.h
+ NativeFunctionWrapper.h
+ NumberConstructor.cpp
+ NumberConstructor.h
+ NumberObject.cpp
+ NumberObject.h
+ NumberPrototype.cpp
+ NumberPrototype.h
+ NumericStrings.h
+ ObjectConstructor.cpp
+ ObjectConstructor.h
+ ObjectPrototype.cpp
+ ObjectPrototype.h
+ Operations.cpp
+ Operations.h
+ PropertyDescriptor.cpp
+ PropertyDescriptor.h
+ PropertyMapHashTable.h
+ PropertyNameArray.cpp
+ PropertyNameArray.h
+ PropertySlot.cpp
+ PropertySlot.h
+ Protect.h
+ PrototypeFunction.cpp
+ PrototypeFunction.h
+ PutPropertySlot.h
+ RegExpConstructor.cpp
+ RegExpConstructor.h
+ RegExp.cpp
+ RegExp.h
+ RegExpMatchesArray.h
+ RegExpObject.cpp
+ RegExpObject.h
+ RegExpPrototype.cpp
+ RegExpPrototype.h
+ ScopeChain.cpp
+ ScopeChain.h
+ ScopeChainMark.h
+ SmallStrings.cpp
+ SmallStrings.h
+ StringConstructor.cpp
+ StringConstructor.h
+ StringObject.cpp
+ StringObject.h
+ StringObjectThatMasqueradesAsUndefined.h
+ StringPrototype.cpp
+ StringPrototype.h
+ StructureChain.cpp
+ StructureChain.h
+ Structure.cpp
+ Structure.h
+ StructureTransitionTable.h
+ SymbolTable.h
+ TimeoutChecker.cpp
+ TimeoutChecker.h
+ Tracing.h
+ UString.cpp
+ UString.h
+2 THANKS
+ wrec/
+0 CharacterClassConstructor.cpp
+ CharacterClassConstructor.h
+ CharacterClass.cpp
+ CharacterClass.h
+ Escapes.h
+ Quantifier.h
+ WREC.cpp
+ WRECFunctors.cpp
+ WRECFunctors.h
+ WRECGenerator.cpp
+ WRECGenerator.h
+ WREC.h
+ WRECParser.cpp
+ WRECParser.h
+2 wscript
+ wtf/
+0 AlwaysInline.h
+ ASCIICType.h
+ Assertions.cpp
+ Assertions.h
+ AVLTree.h
+ ByteArray.cpp
+ ByteArray.h
+ CONTRIBUTORS.pthreads-win32
+ CrossThreadRefCounted.h
+ CurrentTime.cpp
+ CurrentTime.h
+ DateMath.cpp
+ DateMath.h
+ Deque.h
+ DisallowCType.h
+ dtoa.cpp
+ dtoa.h
+ FastAllocBase.h
+ FastMalloc.cpp
+ FastMalloc.h
+ Forward.h
+ GetPtr.h
+ GOwnPtr.cpp
+ GOwnPtr.h
+ HashCountedSet.h
+ HashFunctions.h
+ HashIterators.h
+ HashMap.h
+ HashSet.h
+ HashTable.cpp
+ HashTable.h
+ HashTraits.h
+ ListHashSet.h
+ ListRefPtr.h
+ Locker.h
+ MainThread.cpp
+ MainThread.h
+ MallocZoneSupport.h
+ MathExtras.h
+ MessageQueue.h
+ Noncopyable.h
+ NotFound.h
+ OwnArrayPtr.h
+ OwnFastMallocPtr.h
+ OwnPtrCommon.h
+ OwnPtr.h
+ OwnPtrWin.cpp
+ PassOwnPtr.h
+ PassRefPtr.h
+ Platform.h
+ PossiblyNull.h
+ PtrAndFlags.h
+ qt/
+0 MainThreadQt.cpp
+ ThreadingQt.cpp
+2 RandomNumber.cpp
+ RandomNumber.h
+ RandomNumberSeed.h
+ RefCounted.h
+ RefCountedLeakCounter.cpp
+ RefCountedLeakCounter.h
+ RefPtr.h
+ RefPtrHashMap.h
+ RetainPtr.h
+ SegmentedVector.h
+ StdLibExtras.h
+ StringExtras.h
+ TCPackedCache.h
+ TCPageMap.h
+ TCSpinLock.h
+ TCSystemAlloc.cpp
+ TCSystemAlloc.h
+ Threading.cpp
+ Threading.h
+ ThreadingNone.cpp
+ ThreadingPthreads.cpp
+ ThreadingWin.cpp
+ ThreadSpecific.h
+ ThreadSpecificWin.cpp
+ TypeTraits.cpp
+ TypeTraits.h
+ unicode/
+0 CollatorDefault.cpp
+ Collator.h
+ glib/
+0 UnicodeGLib.cpp
+ UnicodeGLib.h
+ UnicodeMacrosFromICU.h
+2 icu/
+0 CollatorICU.cpp
+ UnicodeIcu.h
+2 qt4/
+0 UnicodeQt4.h
+2 Unicode.h
+ UTF8.cpp
+ UTF8.h
+ wince/
+0 UnicodeWince.cpp
+ UnicodeWince.h
+3 UnusedParam.h
+ Vector.h
+ VectorTraits.h
+ VMTags.h
+ wince/
+0 FastMallocWince.h
+ MemoryManager.cpp
+ MemoryManager.h
+ mt19937ar.c
+3 yarr/
+0 RegexCompiler.cpp
+ RegexCompiler.h
+ RegexInterpreter.cpp
+ RegexInterpreter.h
+ RegexJIT.cpp
+ RegexJIT.h
+ RegexParser.h
+ RegexPattern.h
+3 VERSION
+ WebCore/
+0 accessibility/
+0 AccessibilityAllInOne.cpp
+ AccessibilityARIAGridCell.cpp
+ AccessibilityARIAGridCell.h
+ AccessibilityARIAGrid.cpp
+ AccessibilityARIAGrid.h
+ AccessibilityARIAGridRow.cpp
+ AccessibilityARIAGridRow.h
+ AccessibilityImageMapLink.cpp
+ AccessibilityImageMapLink.h
+ AccessibilityListBox.cpp
+ AccessibilityListBox.h
+ AccessibilityListBoxOption.cpp
+ AccessibilityListBoxOption.h
+ AccessibilityList.cpp
+ AccessibilityList.h
+ AccessibilityMediaControls.cpp
+ AccessibilityMediaControls.h
+ AccessibilityObject.cpp
+ AccessibilityObject.h
+ AccessibilityRenderObject.cpp
+ AccessibilityRenderObject.h
+ AccessibilitySlider.cpp
+ AccessibilitySlider.h
+ AccessibilityTableCell.cpp
+ AccessibilityTableCell.h
+ AccessibilityTableColumn.cpp
+ AccessibilityTableColumn.h
+ AccessibilityTable.cpp
+ AccessibilityTable.h
+ AccessibilityTableHeaderContainer.cpp
+ AccessibilityTableHeaderContainer.h
+ AccessibilityTableRow.cpp
+ AccessibilityTableRow.h
+ AXObjectCache.cpp
+ AXObjectCache.h
+ qt/
+0 AccessibilityObjectQt.cpp
+3 bindings/
+0 js/
+0 CachedScriptSourceProvider.h
+ DOMObjectWithSVGContext.h
+ GCController.cpp
+ GCController.h
+ JSAbstractWorkerCustom.cpp
+ JSAttrCustom.cpp
+ JSAudioConstructor.cpp
+ JSAudioConstructor.h
+ JSBindingsAllInOne.cpp
+ JSCallbackData.cpp
+ JSCallbackData.h
+ JSCanvasArrayBufferConstructor.cpp
+ JSCanvasArrayBufferConstructor.h
+ JSCanvasArrayCustom.cpp
+ JSCanvasByteArrayConstructor.cpp
+ JSCanvasByteArrayConstructor.h
+ JSCanvasByteArrayCustom.cpp
+ JSCanvasFloatArrayConstructor.cpp
+ JSCanvasFloatArrayConstructor.h
+ JSCanvasFloatArrayCustom.cpp
+ JSCanvasIntArrayConstructor.cpp
+ JSCanvasIntArrayConstructor.h
+ JSCanvasIntArrayCustom.cpp
+ JSCanvasNumberArrayCustom.cpp
+ JSCanvasRenderingContext2DCustom.cpp
+ JSCanvasRenderingContext3DCustom.cpp
+ JSCanvasRenderingContextCustom.cpp
+ JSCanvasShortArrayConstructor.cpp
+ JSCanvasShortArrayConstructor.h
+ JSCanvasShortArrayCustom.cpp
+ JSCanvasUnsignedByteArrayConstructor.cpp
+ JSCanvasUnsignedByteArrayConstructor.h
+ JSCanvasUnsignedByteArrayCustom.cpp
+ JSCanvasUnsignedIntArrayConstructor.cpp
+ JSCanvasUnsignedIntArrayConstructor.h
+ JSCanvasUnsignedIntArrayCustom.cpp
+ JSCanvasUnsignedShortArrayConstructor.cpp
+ JSCanvasUnsignedShortArrayConstructor.h
+ JSCanvasUnsignedShortArrayCustom.cpp
+ JSCDATASectionCustom.cpp
+ JSClipboardCustom.cpp
+ JSConsoleCustom.cpp
+ JSCoordinatesCustom.cpp
+ JSCSSRuleCustom.cpp
+ JSCSSRuleListCustom.cpp
+ JSCSSStyleDeclarationCustom.cpp
+ JSCSSStyleDeclarationCustom.h
+ JSCSSValueCustom.cpp
+ JSCustomPositionCallback.cpp
+ JSCustomPositionCallback.h
+ JSCustomPositionErrorCallback.cpp
+ JSCustomPositionErrorCallback.h
+ JSCustomSQLStatementCallback.cpp
+ JSCustomSQLStatementCallback.h
+ JSCustomSQLStatementErrorCallback.cpp
+ JSCustomSQLStatementErrorCallback.h
+ JSCustomSQLTransactionCallback.cpp
+ JSCustomSQLTransactionCallback.h
+ JSCustomSQLTransactionErrorCallback.cpp
+ JSCustomSQLTransactionErrorCallback.h
+ JSCustomVoidCallback.cpp
+ JSCustomVoidCallback.h
+ JSCustomXPathNSResolver.cpp
+ JSCustomXPathNSResolver.h
+ JSDatabaseCustom.cpp
+ JSDataGridColumnListCustom.cpp
+ JSDataGridDataSource.cpp
+ JSDataGridDataSource.h
+ JSDedicatedWorkerContextCustom.cpp
+ JSDesktopNotificationsCustom.cpp
+ JSDocumentCustom.cpp
+ JSDocumentFragmentCustom.cpp
+ JSDOMApplicationCacheCustom.cpp
+ JSDOMBinding.cpp
+ JSDOMBinding.h
+ JSDOMGlobalObject.cpp
+ JSDOMGlobalObject.h
+ JSDOMWindowBase.cpp
+ JSDOMWindowBase.h
+ JSDOMWindowCustom.cpp
+ JSDOMWindowCustom.h
+ JSDOMWindowShell.cpp
+ JSDOMWindowShell.h
+ JSElementCustom.cpp
+ JSEventCustom.cpp
+ JSEventListener.cpp
+ JSEventListener.h
+ JSEventSourceConstructor.cpp
+ JSEventSourceConstructor.h
+ JSEventSourceCustom.cpp
+ JSEventTarget.cpp
+ JSEventTarget.h
+ JSExceptionBase.cpp
+ JSExceptionBase.h
+ JSGeolocationCustom.cpp
+ JSHistoryCustom.cpp
+ JSHistoryCustom.h
+ JSHTMLAllCollectionCustom.cpp
+ JSHTMLAppletElementCustom.cpp
+ JSHTMLAppletElementCustom.h
+ JSHTMLCanvasElementCustom.cpp
+ JSHTMLCollectionCustom.cpp
+ JSHTMLDataGridElementCustom.cpp
+ JSHTMLDocumentCustom.cpp
+ JSHTMLElementCustom.cpp
+ JSHTMLEmbedElementCustom.cpp
+ JSHTMLEmbedElementCustom.h
+ JSHTMLFormElementCustom.cpp
+ JSHTMLFrameElementCustom.cpp
+ JSHTMLFrameSetElementCustom.cpp
+ JSHTMLIFrameElementCustom.cpp
+ JSHTMLInputElementCustom.cpp
+ JSHTMLInputElementCustom.h
+ JSHTMLObjectElementCustom.cpp
+ JSHTMLObjectElementCustom.h
+ JSHTMLOptionsCollectionCustom.cpp
+ JSHTMLSelectElementCustom.cpp
+ JSHTMLSelectElementCustom.h
+ JSImageConstructor.cpp
+ JSImageConstructor.h
+ JSImageDataCustom.cpp
+ JSInspectedObjectWrapper.cpp
+ JSInspectedObjectWrapper.h
+ JSInspectorBackendCustom.cpp
+ JSInspectorCallbackWrapper.cpp
+ JSInspectorCallbackWrapper.h
+ JSJavaScriptCallFrameCustom.cpp
+ JSLazyEventListener.cpp
+ JSLazyEventListener.h
+ JSLocationCustom.cpp
+ JSLocationCustom.h
+ JSMessageChannelConstructor.cpp
+ JSMessageChannelConstructor.h
+ JSMessageChannelCustom.cpp
+ JSMessageEventCustom.cpp
+ JSMessagePortCustom.cpp
+ JSMessagePortCustom.h
+ JSMimeTypeArrayCustom.cpp
+ JSNamedNodeMapCustom.cpp
+ JSNavigatorCustom.cpp
+ JSNodeCustom.cpp
+ JSNodeFilterCondition.cpp
+ JSNodeFilterCondition.h
+ JSNodeFilterCustom.cpp
+ JSNodeIteratorCustom.cpp
+ JSNodeListCustom.cpp
+ JSOptionConstructor.cpp
+ JSOptionConstructor.h
+ JSPluginArrayCustom.cpp
+ JSPluginCustom.cpp
+ JSPluginElementFunctions.cpp
+ JSPluginElementFunctions.h
+ JSQuarantinedObjectWrapper.cpp
+ JSQuarantinedObjectWrapper.h
+ JSSharedWorkerConstructor.cpp
+ JSSharedWorkerConstructor.h
+ JSSharedWorkerCustom.cpp
+ JSSQLResultSetRowListCustom.cpp
+ JSSQLTransactionCustom.cpp
+ JSStorageCustom.cpp
+ JSStorageCustom.h
+ JSStyleSheetCustom.cpp
+ JSStyleSheetListCustom.cpp
+ JSSVGElementInstanceCustom.cpp
+ JSSVGLengthCustom.cpp
+ JSSVGMatrixCustom.cpp
+ JSSVGPathSegCustom.cpp
+ JSSVGPathSegListCustom.cpp
+ JSSVGPODTypeWrapper.h
+ JSSVGPointListCustom.cpp
+ JSSVGTransformListCustom.cpp
+ JSTextCustom.cpp
+ JSTreeWalkerCustom.cpp
+ JSWebKitCSSMatrixConstructor.cpp
+ JSWebKitCSSMatrixConstructor.h
+ JSWebKitPointConstructor.cpp
+ JSWebKitPointConstructor.h
+ JSWebSocketConstructor.cpp
+ JSWebSocketConstructor.h
+ JSWebSocketCustom.cpp
+ JSWorkerConstructor.cpp
+ JSWorkerConstructor.h
+ JSWorkerContextBase.cpp
+ JSWorkerContextBase.h
+ JSWorkerContextCustom.cpp
+ JSWorkerCustom.cpp
+ JSXMLHttpRequestConstructor.cpp
+ JSXMLHttpRequestConstructor.h
+ JSXMLHttpRequestCustom.cpp
+ JSXMLHttpRequestUploadCustom.cpp
+ JSXSLTProcessorConstructor.cpp
+ JSXSLTProcessorConstructor.h
+ JSXSLTProcessorCustom.cpp
+ ScheduledAction.cpp
+ ScheduledAction.h
+ ScriptArray.cpp
+ ScriptArray.h
+ ScriptCachedFrameData.cpp
+ ScriptCachedFrameData.h
+ ScriptCallFrame.cpp
+ ScriptCallFrame.h
+ ScriptCallStack.cpp
+ ScriptCallStack.h
+ ScriptController.cpp
+ ScriptControllerGtk.cpp
+ ScriptController.h
+ ScriptControllerHaiku.cpp
+ ScriptControllerMac.mm
+ ScriptControllerQt.cpp
+ ScriptControllerWin.cpp
+ ScriptControllerWx.cpp
+ ScriptEventListener.cpp
+ ScriptEventListener.h
+ ScriptFunctionCall.cpp
+ ScriptFunctionCall.h
+ ScriptInstance.h
+ ScriptObject.cpp
+ ScriptObject.h
+ ScriptObjectQuarantine.cpp
+ ScriptObjectQuarantine.h
+ ScriptSourceCode.h
+ ScriptSourceProvider.h
+ ScriptState.cpp
+ ScriptState.h
+ ScriptString.h
+ ScriptValue.cpp
+ ScriptValue.h
+ SerializedScriptValue.cpp
+ SerializedScriptValue.h
+ StringSourceProvider.h
+ WorkerScriptController.cpp
+ WorkerScriptController.h
+2 ScriptControllerBase.cpp
+ scripts/
+0 CodeGeneratorCOM.pm
+ CodeGeneratorJS.pm
+ CodeGeneratorObjC.pm
+ CodeGenerator.pm
+ CodeGeneratorV8.pm
+ generate-bindings.pl
+ IDLParser.pm
+ IDLStructure.pm
+ InFilesParser.pm
+3 bridge/
+0 c/
+0 c_class.cpp
+ c_class.h
+ c_instance.cpp
+ c_instance.h
+ c_runtime.cpp
+ c_runtime.h
+ c_utility.cpp
+ c_utility.h
+2 IdentifierRep.cpp
+ IdentifierRep.h
+ jni/
+0 jni_class.cpp
+ jni_class.h
+ jni_instance.cpp
+ jni_instance.h
+ jni_jsobject.h
+ jni_jsobject.mm
+ jni_objc.mm
+ jni_runtime.cpp
+ jni_runtime.h
+ jni_utility.cpp
+ jni_utility.h
+2 make_testbindings
+ npapi.h
+ NP_jsobject.cpp
+ NP_jsobject.h
+ npruntime.cpp
+ npruntime.h
+ npruntime_impl.h
+ npruntime_internal.h
+ npruntime_priv.h
+ qt/
+0 qt_class.cpp
+ qt_class.h
+ qt_instance.cpp
+ qt_instance.h
+ qt_runtime.cpp
+ qt_runtime.h
+2 runtime_array.cpp
+ runtime_array.h
+ runtime.cpp
+ runtime.h
+ runtime_method.cpp
+ runtime_method.h
+ runtime_object.cpp
+ runtime_object.h
+ runtime_root.cpp
+ runtime_root.h
+ testbindings.cpp
+ testbindings.mm
+ testC.js
+ test.js
+ testM.js
+ testqtbindings.cpp
+2 ChangeLog
+0 -2002-12-03
+ -2003-10-25
+ -2005-08-23
+ -2005-12-19
+ -2006-05-10
+ -2006-12-31
+ -2007-10-14
+ -2008-08-10
+ -2009-06-16
+2 combine-javascript-resources
+ config.h
+ css/
+0 Counter.h
+ Counter.idl
+ CSSBorderImageValue.cpp
+ CSSBorderImageValue.h
+ CSSCanvasValue.cpp
+ CSSCanvasValue.h
+ CSSCharsetRule.cpp
+ CSSCharsetRule.h
+ CSSCharsetRule.idl
+ CSSComputedStyleDeclaration.cpp
+ CSSComputedStyleDeclaration.h
+ CSSCursorImageValue.cpp
+ CSSCursorImageValue.h
+ CSSFontFace.cpp
+ CSSFontFace.h
+ CSSFontFaceRule.cpp
+ CSSFontFaceRule.h
+ CSSFontFaceRule.idl
+ CSSFontFaceSource.cpp
+ CSSFontFaceSource.h
+ CSSFontFaceSrcValue.cpp
+ CSSFontFaceSrcValue.h
+ CSSFontSelector.cpp
+ CSSFontSelector.h
+ CSSFunctionValue.cpp
+ CSSFunctionValue.h
+ CSSGradientValue.cpp
+ CSSGradientValue.h
+ CSSGrammar.y
+ CSSHelper.cpp
+ CSSHelper.h
+ CSSImageGeneratorValue.cpp
+ CSSImageGeneratorValue.h
+ CSSImageValue.cpp
+ CSSImageValue.h
+ CSSImportRule.cpp
+ CSSImportRule.h
+ CSSImportRule.idl
+ CSSInheritedValue.cpp
+ CSSInheritedValue.h
+ CSSInitialValue.cpp
+ CSSInitialValue.h
+ CSSMediaRule.cpp
+ CSSMediaRule.h
+ CSSMediaRule.idl
+ CSSMutableStyleDeclaration.cpp
+ CSSMutableStyleDeclaration.h
+ CSSNamespace.h
+ CSSPageRule.cpp
+ CSSPageRule.h
+ CSSPageRule.idl
+ CSSParser.cpp
+ CSSParser.h
+ CSSParserValues.cpp
+ CSSParserValues.h
+ CSSPrimitiveValue.cpp
+ CSSPrimitiveValue.h
+ CSSPrimitiveValue.idl
+ CSSPrimitiveValueMappings.h
+ CSSProperty.cpp
+ CSSProperty.h
+ CSSPropertyLonghand.cpp
+ CSSPropertyLonghand.h
+ CSSPropertyNames.in
+ CSSQuirkPrimitiveValue.h
+ CSSReflectionDirection.h
+ CSSReflectValue.cpp
+ CSSReflectValue.h
+ CSSRule.cpp
+ CSSRule.h
+ CSSRule.idl
+ CSSRuleList.cpp
+ CSSRuleList.h
+ CSSRuleList.idl
+ CSSSegmentedFontFace.cpp
+ CSSSegmentedFontFace.h
+ CSSSelector.cpp
+ CSSSelector.h
+ CSSSelectorList.cpp
+ CSSSelectorList.h
+ CSSStyleDeclaration.cpp
+ CSSStyleDeclaration.h
+ CSSStyleDeclaration.idl
+ CSSStyleRule.cpp
+ CSSStyleRule.h
+ CSSStyleRule.idl
+ CSSStyleSelector.cpp
+ CSSStyleSelector.h
+ CSSStyleSheet.cpp
+ CSSStyleSheet.h
+ CSSStyleSheet.idl
+ CSSTimingFunctionValue.cpp
+ CSSTimingFunctionValue.h
+ CSSUnicodeRangeValue.cpp
+ CSSUnicodeRangeValue.h
+ CSSUnknownRule.h
+ CSSUnknownRule.idl
+ CSSValue.h
+ CSSValue.idl
+ CSSValueKeywords.in
+ CSSValueList.cpp
+ CSSValueList.h
+ CSSValueList.idl
+ CSSVariableDependentValue.cpp
+ CSSVariableDependentValue.h
+ CSSVariablesDeclaration.cpp
+ CSSVariablesDeclaration.h
+ CSSVariablesDeclaration.idl
+ CSSVariablesRule.cpp
+ CSSVariablesRule.h
+ CSSVariablesRule.idl
+ DashboardRegion.h
+ DashboardSupportCSSPropertyNames.in
+ FontFamilyValue.cpp
+ FontFamilyValue.h
+ FontValue.cpp
+ FontValue.h
+ html.css
+ make-css-file-arrays.pl
+ makegrammar.pl
+ makeprop.pl
+ maketokenizer
+ makevalues.pl
+ mathml.css
+ mediaControlsChromium.css
+ mediaControls.css
+ mediaControlsQt.css
+ mediaControlsQuickTime.css
+ Media.cpp
+ MediaFeatureNames.cpp
+ MediaFeatureNames.h
+ Media.h
+ Media.idl
+ MediaList.cpp
+ MediaList.h
+ MediaList.idl
+ MediaQuery.cpp
+ MediaQueryEvaluator.cpp
+ MediaQueryEvaluator.h
+ MediaQueryExp.cpp
+ MediaQueryExp.h
+ MediaQuery.h
+ Pair.h
+ quirks.css
+ Rect.h
+ Rect.idl
+ RGBColor.cpp
+ RGBColor.h
+ RGBColor.idl
+ ShadowValue.cpp
+ ShadowValue.h
+ StyleBase.cpp
+ StyleBase.h
+ StyleList.cpp
+ StyleList.h
+ StyleSheet.cpp
+ StyleSheet.h
+ StyleSheet.idl
+ StyleSheetList.cpp
+ StyleSheetList.h
+ StyleSheetList.idl
+ svg.css
+ SVGCSSComputedStyleDeclaration.cpp
+ SVGCSSParser.cpp
+ SVGCSSPropertyNames.in
+ SVGCSSStyleSelector.cpp
+ SVGCSSValueKeywords.in
+ themeChromiumLinux.css
+ themeWin.css
+ themeWinQuirks.css
+ tokenizer.flex
+ view-source.css
+ WCSSPropertyNames.in
+ WCSSValueKeywords.in
+ WebKitCSSKeyframeRule.cpp
+ WebKitCSSKeyframeRule.h
+ WebKitCSSKeyframeRule.idl
+ WebKitCSSKeyframesRule.cpp
+ WebKitCSSKeyframesRule.h
+ WebKitCSSKeyframesRule.idl
+ WebKitCSSMatrix.cpp
+ WebKitCSSMatrix.h
+ WebKitCSSMatrix.idl
+ WebKitCSSTransformValue.cpp
+ WebKitCSSTransformValue.h
+ WebKitCSSTransformValue.idl
+ wml.css
+2 DerivedSources.cpp
+ dom/
+0 ActiveDOMObject.cpp
+ ActiveDOMObject.h
+ Attr.cpp
+ Attr.h
+ Attribute.cpp
+ Attribute.h
+ Attr.idl
+ BeforeLoadEvent.h
+ BeforeLoadEvent.idl
+ BeforeTextInsertedEvent.cpp
+ BeforeTextInsertedEvent.h
+ BeforeUnloadEvent.cpp
+ BeforeUnloadEvent.h
+ CDATASection.cpp
+ CDATASection.h
+ CDATASection.idl
+ CharacterData.cpp
+ CharacterData.h
+ CharacterData.idl
+ CheckedRadioButtons.cpp
+ CheckedRadioButtons.h
+ ChildNodeList.cpp
+ ChildNodeList.h
+ ClassNames.cpp
+ ClassNames.h
+ ClassNodeList.cpp
+ ClassNodeList.h
+ ClientRect.cpp
+ ClientRect.h
+ ClientRect.idl
+ ClientRectList.cpp
+ ClientRectList.h
+ ClientRectList.idl
+ ClipboardAccessPolicy.h
+ Clipboard.cpp
+ ClipboardEvent.cpp
+ ClipboardEvent.h
+ Clipboard.h
+ Clipboard.idl
+ Comment.cpp
+ Comment.h
+ Comment.idl
+ ContainerNodeAlgorithms.h
+ ContainerNode.cpp
+ ContainerNode.h
+ CSSMappedAttributeDeclaration.cpp
+ CSSMappedAttributeDeclaration.h
+ default/
+0 PlatformMessagePortChannel.cpp
+ PlatformMessagePortChannel.h
+2 Document.cpp
+ DocumentFragment.cpp
+ DocumentFragment.h
+ DocumentFragment.idl
+ Document.h
+ Document.idl
+ DocumentMarker.h
+ DocumentType.cpp
+ DocumentType.h
+ DocumentType.idl
+ DOMCoreException.h
+ DOMCoreException.idl
+ DOMImplementation.cpp
+ DOMImplementation.h
+ DOMImplementation.idl
+ DynamicNodeList.cpp
+ DynamicNodeList.h
+ EditingText.cpp
+ EditingText.h
+ Element.cpp
+ Element.h
+ Element.idl
+ ElementRareData.h
+ Entity.cpp
+ Entity.h
+ Entity.idl
+ EntityReference.cpp
+ EntityReference.h
+ EntityReference.idl
+ ErrorEvent.cpp
+ ErrorEvent.h
+ ErrorEvent.idl
+ Event.cpp
+ EventException.h
+ EventException.idl
+ Event.h
+ Event.idl
+ EventListener.h
+ EventListener.idl
+ EventNames.cpp
+ EventNames.h
+ EventTarget.cpp
+ EventTarget.h
+ EventTarget.idl
+ ExceptionBase.cpp
+ ExceptionBase.h
+ ExceptionCode.cpp
+ ExceptionCode.h
+ InputElement.cpp
+ InputElement.h
+ KeyboardEvent.cpp
+ KeyboardEvent.h
+ KeyboardEvent.idl
+ make_names.pl
+ MappedAttribute.cpp
+ MappedAttributeEntry.h
+ MappedAttribute.h
+ MessageChannel.cpp
+ MessageChannel.h
+ MessageChannel.idl
+ MessageEvent.cpp
+ MessageEvent.h
+ MessageEvent.idl
+ MessagePortChannel.cpp
+ MessagePortChannel.h
+ MessagePort.cpp
+ MessagePort.h
+ MessagePort.idl
+ MouseEvent.cpp
+ MouseEvent.h
+ MouseEvent.idl
+ MouseRelatedEvent.cpp
+ MouseRelatedEvent.h
+ MutationEvent.cpp
+ MutationEvent.h
+ MutationEvent.idl
+ NamedAttrMap.cpp
+ NamedAttrMap.h
+ NamedMappedAttrMap.cpp
+ NamedMappedAttrMap.h
+ NamedNodeMap.h
+ NamedNodeMap.idl
+ NameNodeList.cpp
+ NameNodeList.h
+ Node.cpp
+ NodeFilterCondition.cpp
+ NodeFilterCondition.h
+ NodeFilter.cpp
+ NodeFilter.h
+ NodeFilter.idl
+ Node.h
+ Node.idl
+ NodeIterator.cpp
+ NodeIterator.h
+ NodeIterator.idl
+ NodeList.h
+ NodeList.idl
+ NodeRareData.h
+ NodeRenderStyle.h
+ NodeWithIndex.h
+ Notation.cpp
+ Notation.h
+ Notation.idl
+ OptionElement.cpp
+ OptionElement.h
+ OptionGroupElement.cpp
+ OptionGroupElement.h
+ OverflowEvent.cpp
+ OverflowEvent.h
+ OverflowEvent.idl
+ PageTransitionEvent.cpp
+ PageTransitionEvent.h
+ PageTransitionEvent.idl
+ Position.cpp
+ PositionCreationFunctions.h
+ Position.h
+ PositionIterator.cpp
+ PositionIterator.h
+ ProcessingInstruction.cpp
+ ProcessingInstruction.h
+ ProcessingInstruction.idl
+ ProgressEvent.cpp
+ ProgressEvent.h
+ ProgressEvent.idl
+ QualifiedName.cpp
+ QualifiedName.h
+ RangeBoundaryPoint.h
+ Range.cpp
+ RangeException.h
+ RangeException.idl
+ Range.h
+ Range.idl
+ RegisteredEventListener.cpp
+ RegisteredEventListener.h
+ ScriptElement.cpp
+ ScriptElement.h
+ ScriptExecutionContext.cpp
+ ScriptExecutionContext.h
+ SelectElement.cpp
+ SelectElement.h
+ SelectorNodeList.cpp
+ SelectorNodeList.h
+ StaticNodeList.cpp
+ StaticNodeList.h
+ StyledElement.cpp
+ StyledElement.h
+ StyleElement.cpp
+ StyleElement.h
+ TagNodeList.cpp
+ TagNodeList.h
+ Text.cpp
+ TextEvent.cpp
+ TextEvent.h
+ TextEvent.idl
+ Text.h
+ Text.idl
+ Tokenizer.h
+ TransformSource.h
+ TransformSourceLibxslt.cpp
+ TransformSourceQt.cpp
+ Traversal.cpp
+ Traversal.h
+ TreeWalker.cpp
+ TreeWalker.h
+ TreeWalker.idl
+ UIEvent.cpp
+ UIEvent.h
+ UIEvent.idl
+ UIEventWithKeyState.cpp
+ UIEventWithKeyState.h
+ WebKitAnimationEvent.cpp
+ WebKitAnimationEvent.h
+ WebKitAnimationEvent.idl
+ WebKitTransitionEvent.cpp
+ WebKitTransitionEvent.h
+ WebKitTransitionEvent.idl
+ WheelEvent.cpp
+ WheelEvent.h
+ WheelEvent.idl
+ XMLTokenizer.cpp
+ XMLTokenizer.h
+ XMLTokenizerLibxml2.cpp
+ XMLTokenizerQt.cpp
+ XMLTokenizerScope.cpp
+ XMLTokenizerScope.h
+2 editing/
+0 android/
+0 EditorAndroid.cpp
+2 AppendNodeCommand.cpp
+ AppendNodeCommand.h
+ ApplyStyleCommand.cpp
+ ApplyStyleCommand.h
+ BreakBlockquoteCommand.cpp
+ BreakBlockquoteCommand.h
+ chromium/
+0 EditorChromium.cpp
+2 CompositeEditCommand.cpp
+ CompositeEditCommand.h
+ CreateLinkCommand.cpp
+ CreateLinkCommand.h
+ DeleteButtonController.cpp
+ DeleteButtonController.h
+ DeleteButton.cpp
+ DeleteButton.h
+ DeleteFromTextNodeCommand.cpp
+ DeleteFromTextNodeCommand.h
+ DeleteSelectionCommand.cpp
+ DeleteSelectionCommand.h
+ EditAction.h
+ EditCommand.cpp
+ EditCommand.h
+ EditorCommand.cpp
+ Editor.cpp
+ EditorDeleteAction.h
+ Editor.h
+ EditorInsertAction.h
+ FormatBlockCommand.cpp
+ FormatBlockCommand.h
+ gtk/
+0 SelectionControllerGtk.cpp
+2 htmlediting.cpp
+ htmlediting.h
+ HTMLInterchange.cpp
+ HTMLInterchange.h
+ IndentOutdentCommand.cpp
+ IndentOutdentCommand.h
+ InsertIntoTextNodeCommand.cpp
+ InsertIntoTextNodeCommand.h
+ InsertLineBreakCommand.cpp
+ InsertLineBreakCommand.h
+ InsertListCommand.cpp
+ InsertListCommand.h
+ InsertNodeBeforeCommand.cpp
+ InsertNodeBeforeCommand.h
+ InsertParagraphSeparatorCommand.cpp
+ InsertParagraphSeparatorCommand.h
+ InsertTextCommand.cpp
+ InsertTextCommand.h
+ JoinTextNodesCommand.cpp
+ JoinTextNodesCommand.h
+ markup.cpp
+ markup.h
+ MergeIdenticalElementsCommand.cpp
+ MergeIdenticalElementsCommand.h
+ ModifySelectionListLevel.cpp
+ ModifySelectionListLevel.h
+ MoveSelectionCommand.cpp
+ MoveSelectionCommand.h
+ qt/
+0 EditorQt.cpp
+2 RemoveCSSPropertyCommand.cpp
+ RemoveCSSPropertyCommand.h
+ RemoveFormatCommand.cpp
+ RemoveFormatCommand.h
+ RemoveNodeCommand.cpp
+ RemoveNodeCommand.h
+ RemoveNodePreservingChildrenCommand.cpp
+ RemoveNodePreservingChildrenCommand.h
+ ReplaceNodeWithSpanCommand.cpp
+ ReplaceNodeWithSpanCommand.h
+ ReplaceSelectionCommand.cpp
+ ReplaceSelectionCommand.h
+ SelectionController.cpp
+ SelectionController.h
+ SetNodeAttributeCommand.cpp
+ SetNodeAttributeCommand.h
+ SmartReplaceCF.cpp
+ SmartReplace.cpp
+ SmartReplace.h
+ SmartReplaceICU.cpp
+ SplitElementCommand.cpp
+ SplitElementCommand.h
+ SplitTextNodeCommand.cpp
+ SplitTextNodeCommand.h
+ SplitTextNodeContainingElementCommand.cpp
+ SplitTextNodeContainingElementCommand.h
+ TextAffinity.h
+ TextGranularity.h
+ TextIterator.cpp
+ TextIterator.h
+ TypingCommand.cpp
+ TypingCommand.h
+ UnlinkCommand.cpp
+ UnlinkCommand.h
+ VisiblePosition.cpp
+ VisiblePosition.h
+ VisibleSelection.cpp
+ VisibleSelection.h
+ visible_units.cpp
+ visible_units.h
+ WrapContentsInDummySpanCommand.cpp
+ WrapContentsInDummySpanCommand.h
+2 ForwardingHeaders/
+0 debugger/
+0 DebuggerActivation.h
+ DebuggerCallFrame.h
+ Debugger.h
+2 interpreter/
+0 CallFrame.h
+ Interpreter.h
+2 jit/
+0 JITCode.h
+2 masm/
+0 X86Assembler.h
+2 parser/
+0 SourceCode.h
+ SourceProvider.h
+2 pcre/
+0 pcre.h
+2 profiler/
+0 Profile.h
+ ProfileNode.h
+ Profiler.h
+2 runtime/
+0 ArgList.h
+ ArrayPrototype.h
+ BooleanObject.h
+ CallData.h
+ Collector.h
+ Completion.h
+ ConstructData.h
+ DateInstance.h
+ Error.h
+ ExceptionHelpers.h
+ FunctionConstructor.h
+ FunctionPrototype.h
+ Identifier.h
+ InitializeThreading.h
+ InternalFunction.h
+ JSAPIValueWrapper.h
+ JSArray.h
+ JSByteArray.h
+ JSCell.h
+ JSFunction.h
+ JSGlobalData.h
+ JSGlobalObject.h
+ JSLock.h
+ JSNumberCell.h
+ JSObject.h
+ JSString.h
+ JSValue.h
+ Lookup.h
+ ObjectPrototype.h
+ Operations.h
+ PropertyMap.h
+ PropertyNameArray.h
+ Protect.h
+ PrototypeFunction.h
+ StringObject.h
+ StringObjectThatMasqueradesAsUndefined.h
+ StringPrototype.h
+ StructureChain.h
+ Structure.h
+ SymbolTable.h
+ UString.h
+2 wrec/
+0 WREC.h
+2 wtf/
+0 AlwaysInline.h
+ ASCIICType.h
+ Assertions.h
+ ByteArray.h
+ CrossThreadRefCounted.h
+ CurrentTime.h
+ DateInstanceCache.h
+ DateMath.h
+ Deque.h
+ DisallowCType.h
+ dtoa.h
+ FastAllocBase.h
+ FastMalloc.h
+ Forward.h
+ GetPtr.h
+ HashCountedSet.h
+ HashFunctions.h
+ HashMap.h
+ HashSet.h
+ HashTable.h
+ HashTraits.h
+ ListHashSet.h
+ ListRefPtr.h
+ Locker.h
+ MainThread.h
+ MathExtras.h
+ MessageQueue.h
+ Noncopyable.h
+ NotFound.h
+ OwnArrayPtr.h
+ OwnFastMallocPtr.h
+ OwnPtrCommon.h
+ OwnPtr.h
+ PassOwnPtr.h
+ PassRefPtr.h
+ Platform.h
+ PossiblyNull.h
+ PtrAndFlags.h
+ RandomNumber.h
+ RefCounted.h
+ RefCountedLeakCounter.h
+ RefPtr.h
+ RetainPtr.h
+ StdLibExtras.h
+ StringExtras.h
+ Threading.h
+ ThreadSpecific.h
+ TypeTraits.h
+ unicode/
+0 Collator.h
+ icu/
+0 UnicodeIcu.h
+2 Unicode.h
+ UTF8.h
+2 UnusedParam.h
+ Vector.h
+ VectorTraits.h
+ VMTags.h
+3 generated/
+0 ArrayPrototype.lut.h
+ chartables.c
+ ColorData.c
+ CSSGrammar.cpp
+ CSSGrammar.h
+ CSSPropertyNames.cpp
+ CSSPropertyNames.h
+ CSSValueKeywords.c
+ CSSValueKeywords.h
+ DatePrototype.lut.h
+ DocTypeStrings.cpp
+ Grammar.cpp
+ Grammar.h
+ HTMLElementFactory.cpp
+ HTMLElementFactory.h
+ HTMLEntityNames.c
+ HTMLNames.cpp
+ HTMLNames.h
+ JSAbstractWorker.cpp
+ JSAbstractWorker.h
+ JSAttr.cpp
+ JSAttr.h
+ JSBarInfo.cpp
+ JSBarInfo.h
+ JSBeforeLoadEvent.cpp
+ JSBeforeLoadEvent.h
+ JSCanvasArrayBuffer.cpp
+ JSCanvasArrayBuffer.h
+ JSCanvasArray.cpp
+ JSCanvasArray.h
+ JSCanvasByteArray.cpp
+ JSCanvasByteArray.h
+ JSCanvasFloatArray.cpp
+ JSCanvasFloatArray.h
+ JSCanvasGradient.cpp
+ JSCanvasGradient.h
+ JSCanvasIntArray.cpp
+ JSCanvasIntArray.h
+ JSCanvasPattern.cpp
+ JSCanvasPattern.h
+ JSCanvasRenderingContext2D.cpp
+ JSCanvasRenderingContext2D.h
+ JSCanvasRenderingContext3D.cpp
+ JSCanvasRenderingContext3D.h
+ JSCanvasRenderingContext.cpp
+ JSCanvasRenderingContext.h
+ JSCanvasShortArray.cpp
+ JSCanvasShortArray.h
+ JSCanvasUnsignedByteArray.cpp
+ JSCanvasUnsignedByteArray.h
+ JSCanvasUnsignedIntArray.cpp
+ JSCanvasUnsignedIntArray.h
+ JSCanvasUnsignedShortArray.cpp
+ JSCanvasUnsignedShortArray.h
+ JSCDATASection.cpp
+ JSCDATASection.h
+ JSCharacterData.cpp
+ JSCharacterData.h
+ JSClientRect.cpp
+ JSClientRect.h
+ JSClientRectList.cpp
+ JSClientRectList.h
+ JSClipboard.cpp
+ JSClipboard.h
+ JSComment.cpp
+ JSComment.h
+ JSConsole.cpp
+ JSConsole.h
+ JSCoordinates.cpp
+ JSCoordinates.h
+ JSCounter.cpp
+ JSCounter.h
+ JSCSSCharsetRule.cpp
+ JSCSSCharsetRule.h
+ JSCSSFontFaceRule.cpp
+ JSCSSFontFaceRule.h
+ JSCSSImportRule.cpp
+ JSCSSImportRule.h
+ JSCSSMediaRule.cpp
+ JSCSSMediaRule.h
+ JSCSSPageRule.cpp
+ JSCSSPageRule.h
+ JSCSSPrimitiveValue.cpp
+ JSCSSPrimitiveValue.h
+ JSCSSRule.cpp
+ JSCSSRule.h
+ JSCSSRuleList.cpp
+ JSCSSRuleList.h
+ JSCSSStyleDeclaration.cpp
+ JSCSSStyleDeclaration.h
+ JSCSSStyleRule.cpp
+ JSCSSStyleRule.h
+ JSCSSStyleSheet.cpp
+ JSCSSStyleSheet.h
+ JSCSSValue.cpp
+ JSCSSValue.h
+ JSCSSValueList.cpp
+ JSCSSValueList.h
+ JSCSSVariablesDeclaration.cpp
+ JSCSSVariablesDeclaration.h
+ JSCSSVariablesRule.cpp
+ JSCSSVariablesRule.h
+ JSDatabase.cpp
+ JSDatabase.h
+ JSDataGridColumn.cpp
+ JSDataGridColumn.h
+ JSDataGridColumnList.cpp
+ JSDataGridColumnList.h
+ JSDedicatedWorkerContext.cpp
+ JSDedicatedWorkerContext.h
+ JSDocument.cpp
+ JSDocumentFragment.cpp
+ JSDocumentFragment.h
+ JSDocument.h
+ JSDocumentType.cpp
+ JSDocumentType.h
+ JSDOMApplicationCache.cpp
+ JSDOMApplicationCache.h
+ JSDOMCoreException.cpp
+ JSDOMCoreException.h
+ JSDOMImplementation.cpp
+ JSDOMImplementation.h
+ JSDOMParser.cpp
+ JSDOMParser.h
+ JSDOMSelection.cpp
+ JSDOMSelection.h
+ JSDOMWindowBase.lut.h
+ JSDOMWindow.cpp
+ JSDOMWindow.h
+ JSElement.cpp
+ JSElement.h
+ JSEntity.cpp
+ JSEntity.h
+ JSEntityReference.cpp
+ JSEntityReference.h
+ JSErrorEvent.cpp
+ JSErrorEvent.h
+ JSEvent.cpp
+ JSEventException.cpp
+ JSEventException.h
+ JSEvent.h
+ JSEventSource.cpp
+ JSEventSource.h
+ JSFile.cpp
+ JSFile.h
+ JSFileList.cpp
+ JSFileList.h
+ JSGeolocation.cpp
+ JSGeolocation.h
+ JSGeoposition.cpp
+ JSGeoposition.h
+ JSHistory.cpp
+ JSHistory.h
+ JSHTMLAllCollection.cpp
+ JSHTMLAllCollection.h
+ JSHTMLAnchorElement.cpp
+ JSHTMLAnchorElement.h
+ JSHTMLAppletElement.cpp
+ JSHTMLAppletElement.h
+ JSHTMLAreaElement.cpp
+ JSHTMLAreaElement.h
+ JSHTMLAudioElement.cpp
+ JSHTMLAudioElement.h
+ JSHTMLBaseElement.cpp
+ JSHTMLBaseElement.h
+ JSHTMLBaseFontElement.cpp
+ JSHTMLBaseFontElement.h
+ JSHTMLBlockquoteElement.cpp
+ JSHTMLBlockquoteElement.h
+ JSHTMLBodyElement.cpp
+ JSHTMLBodyElement.h
+ JSHTMLBRElement.cpp
+ JSHTMLBRElement.h
+ JSHTMLButtonElement.cpp
+ JSHTMLButtonElement.h
+ JSHTMLCanvasElement.cpp
+ JSHTMLCanvasElement.h
+ JSHTMLCollection.cpp
+ JSHTMLCollection.h
+ JSHTMLDataGridCellElement.cpp
+ JSHTMLDataGridCellElement.h
+ JSHTMLDataGridColElement.cpp
+ JSHTMLDataGridColElement.h
+ JSHTMLDataGridElement.cpp
+ JSHTMLDataGridElement.h
+ JSHTMLDataGridRowElement.cpp
+ JSHTMLDataGridRowElement.h
+ JSHTMLDataListElement.cpp
+ JSHTMLDataListElement.h
+ JSHTMLDirectoryElement.cpp
+ JSHTMLDirectoryElement.h
+ JSHTMLDivElement.cpp
+ JSHTMLDivElement.h
+ JSHTMLDListElement.cpp
+ JSHTMLDListElement.h
+ JSHTMLDocument.cpp
+ JSHTMLDocument.h
+ JSHTMLElement.cpp
+ JSHTMLElement.h
+ JSHTMLElementWrapperFactory.cpp
+ JSHTMLElementWrapperFactory.h
+ JSHTMLEmbedElement.cpp
+ JSHTMLEmbedElement.h
+ JSHTMLFieldSetElement.cpp
+ JSHTMLFieldSetElement.h
+ JSHTMLFontElement.cpp
+ JSHTMLFontElement.h
+ JSHTMLFormElement.cpp
+ JSHTMLFormElement.h
+ JSHTMLFrameElement.cpp
+ JSHTMLFrameElement.h
+ JSHTMLFrameSetElement.cpp
+ JSHTMLFrameSetElement.h
+ JSHTMLHeadElement.cpp
+ JSHTMLHeadElement.h
+ JSHTMLHeadingElement.cpp
+ JSHTMLHeadingElement.h
+ JSHTMLHRElement.cpp
+ JSHTMLHRElement.h
+ JSHTMLHtmlElement.cpp
+ JSHTMLHtmlElement.h
+ JSHTMLIFrameElement.cpp
+ JSHTMLIFrameElement.h
+ JSHTMLImageElement.cpp
+ JSHTMLImageElement.h
+ JSHTMLInputElement.cpp
+ JSHTMLInputElement.h
+ JSHTMLIsIndexElement.cpp
+ JSHTMLIsIndexElement.h
+ JSHTMLLabelElement.cpp
+ JSHTMLLabelElement.h
+ JSHTMLLegendElement.cpp
+ JSHTMLLegendElement.h
+ JSHTMLLIElement.cpp
+ JSHTMLLIElement.h
+ JSHTMLLinkElement.cpp
+ JSHTMLLinkElement.h
+ JSHTMLMapElement.cpp
+ JSHTMLMapElement.h
+ JSHTMLMarqueeElement.cpp
+ JSHTMLMarqueeElement.h
+ JSHTMLMediaElement.cpp
+ JSHTMLMediaElement.h
+ JSHTMLMenuElement.cpp
+ JSHTMLMenuElement.h
+ JSHTMLMetaElement.cpp
+ JSHTMLMetaElement.h
+ JSHTMLModElement.cpp
+ JSHTMLModElement.h
+ JSHTMLObjectElement.cpp
+ JSHTMLObjectElement.h
+ JSHTMLOListElement.cpp
+ JSHTMLOListElement.h
+ JSHTMLOptGroupElement.cpp
+ JSHTMLOptGroupElement.h
+ JSHTMLOptionElement.cpp
+ JSHTMLOptionElement.h
+ JSHTMLOptionsCollection.cpp
+ JSHTMLOptionsCollection.h
+ JSHTMLParagraphElement.cpp
+ JSHTMLParagraphElement.h
+ JSHTMLParamElement.cpp
+ JSHTMLParamElement.h
+ JSHTMLPreElement.cpp
+ JSHTMLPreElement.h
+ JSHTMLQuoteElement.cpp
+ JSHTMLQuoteElement.h
+ JSHTMLScriptElement.cpp
+ JSHTMLScriptElement.h
+ JSHTMLSelectElement.cpp
+ JSHTMLSelectElement.h
+ JSHTMLSourceElement.cpp
+ JSHTMLSourceElement.h
+ JSHTMLStyleElement.cpp
+ JSHTMLStyleElement.h
+ JSHTMLTableCaptionElement.cpp
+ JSHTMLTableCaptionElement.h
+ JSHTMLTableCellElement.cpp
+ JSHTMLTableCellElement.h
+ JSHTMLTableColElement.cpp
+ JSHTMLTableColElement.h
+ JSHTMLTableElement.cpp
+ JSHTMLTableElement.h
+ JSHTMLTableRowElement.cpp
+ JSHTMLTableRowElement.h
+ JSHTMLTableSectionElement.cpp
+ JSHTMLTableSectionElement.h
+ JSHTMLTextAreaElement.cpp
+ JSHTMLTextAreaElement.h
+ JSHTMLTitleElement.cpp
+ JSHTMLTitleElement.h
+ JSHTMLUListElement.cpp
+ JSHTMLUListElement.h
+ JSHTMLVideoElement.cpp
+ JSHTMLVideoElement.h
+ JSImageData.cpp
+ JSImageData.h
+ JSInspectorBackend.cpp
+ JSInspectorBackend.h
+ JSJavaScriptCallFrame.cpp
+ JSJavaScriptCallFrame.h
+ JSKeyboardEvent.cpp
+ JSKeyboardEvent.h
+ JSLocation.cpp
+ JSLocation.h
+ JSMedia.cpp
+ JSMediaError.cpp
+ JSMediaError.h
+ JSMedia.h
+ JSMediaList.cpp
+ JSMediaList.h
+ JSMessageChannel.cpp
+ JSMessageChannel.h
+ JSMessageEvent.cpp
+ JSMessageEvent.h
+ JSMessagePort.cpp
+ JSMessagePort.h
+ JSMimeTypeArray.cpp
+ JSMimeTypeArray.h
+ JSMimeType.cpp
+ JSMimeType.h
+ JSMouseEvent.cpp
+ JSMouseEvent.h
+ JSMutationEvent.cpp
+ JSMutationEvent.h
+ JSNamedNodeMap.cpp
+ JSNamedNodeMap.h
+ JSNavigator.cpp
+ JSNavigator.h
+ JSNode.cpp
+ JSNodeFilter.cpp
+ JSNodeFilter.h
+ JSNode.h
+ JSNodeIterator.cpp
+ JSNodeIterator.h
+ JSNodeList.cpp
+ JSNodeList.h
+ JSNotation.cpp
+ JSNotation.h
+ JSONObject.lut.h
+ JSOverflowEvent.cpp
+ JSOverflowEvent.h
+ JSPageTransitionEvent.cpp
+ JSPageTransitionEvent.h
+ JSPluginArray.cpp
+ JSPluginArray.h
+ JSPlugin.cpp
+ JSPlugin.h
+ JSPositionError.cpp
+ JSPositionError.h
+ JSProcessingInstruction.cpp
+ JSProcessingInstruction.h
+ JSProgressEvent.cpp
+ JSProgressEvent.h
+ JSRange.cpp
+ JSRangeException.cpp
+ JSRangeException.h
+ JSRange.h
+ JSRect.cpp
+ JSRect.h
+ JSRGBColor.cpp
+ JSRGBColor.h
+ JSScreen.cpp
+ JSScreen.h
+ JSSharedWorkerContext.cpp
+ JSSharedWorkerContext.h
+ JSSharedWorker.cpp
+ JSSharedWorker.h
+ JSSQLError.cpp
+ JSSQLError.h
+ JSSQLResultSet.cpp
+ JSSQLResultSet.h
+ JSSQLResultSetRowList.cpp
+ JSSQLResultSetRowList.h
+ JSSQLTransaction.cpp
+ JSSQLTransaction.h
+ JSStorage.cpp
+ JSStorageEvent.cpp
+ JSStorageEvent.h
+ JSStorage.h
+ JSStyleSheet.cpp
+ JSStyleSheet.h
+ JSStyleSheetList.cpp
+ JSStyleSheetList.h
+ JSSVGAElement.cpp
+ JSSVGAElement.h
+ JSSVGAltGlyphElement.cpp
+ JSSVGAltGlyphElement.h
+ JSSVGAngle.cpp
+ JSSVGAngle.h
+ JSSVGAnimateColorElement.cpp
+ JSSVGAnimateColorElement.h
+ JSSVGAnimatedAngle.cpp
+ JSSVGAnimatedAngle.h
+ JSSVGAnimatedBoolean.cpp
+ JSSVGAnimatedBoolean.h
+ JSSVGAnimatedEnumeration.cpp
+ JSSVGAnimatedEnumeration.h
+ JSSVGAnimatedInteger.cpp
+ JSSVGAnimatedInteger.h
+ JSSVGAnimatedLength.cpp
+ JSSVGAnimatedLength.h
+ JSSVGAnimatedLengthList.cpp
+ JSSVGAnimatedLengthList.h
+ JSSVGAnimatedNumber.cpp
+ JSSVGAnimatedNumber.h
+ JSSVGAnimatedNumberList.cpp
+ JSSVGAnimatedNumberList.h
+ JSSVGAnimatedPreserveAspectRatio.cpp
+ JSSVGAnimatedPreserveAspectRatio.h
+ JSSVGAnimatedRect.cpp
+ JSSVGAnimatedRect.h
+ JSSVGAnimatedString.cpp
+ JSSVGAnimatedString.h
+ JSSVGAnimatedTransformList.cpp
+ JSSVGAnimatedTransformList.h
+ JSSVGAnimateElement.cpp
+ JSSVGAnimateElement.h
+ JSSVGAnimateTransformElement.cpp
+ JSSVGAnimateTransformElement.h
+ JSSVGAnimationElement.cpp
+ JSSVGAnimationElement.h
+ JSSVGCircleElement.cpp
+ JSSVGCircleElement.h
+ JSSVGClipPathElement.cpp
+ JSSVGClipPathElement.h
+ JSSVGColor.cpp
+ JSSVGColor.h
+ JSSVGComponentTransferFunctionElement.cpp
+ JSSVGComponentTransferFunctionElement.h
+ JSSVGCursorElement.cpp
+ JSSVGCursorElement.h
+ JSSVGDefsElement.cpp
+ JSSVGDefsElement.h
+ JSSVGDescElement.cpp
+ JSSVGDescElement.h
+ JSSVGDocument.cpp
+ JSSVGDocument.h
+ JSSVGElement.cpp
+ JSSVGElement.h
+ JSSVGElementInstance.cpp
+ JSSVGElementInstance.h
+ JSSVGElementInstanceList.cpp
+ JSSVGElementInstanceList.h
+ JSSVGElementWrapperFactory.cpp
+ JSSVGElementWrapperFactory.h
+ JSSVGEllipseElement.cpp
+ JSSVGEllipseElement.h
+ JSSVGException.cpp
+ JSSVGException.h
+ JSSVGFEBlendElement.cpp
+ JSSVGFEBlendElement.h
+ JSSVGFEColorMatrixElement.cpp
+ JSSVGFEColorMatrixElement.h
+ JSSVGFEComponentTransferElement.cpp
+ JSSVGFEComponentTransferElement.h
+ JSSVGFECompositeElement.cpp
+ JSSVGFECompositeElement.h
+ JSSVGFEDiffuseLightingElement.cpp
+ JSSVGFEDiffuseLightingElement.h
+ JSSVGFEDisplacementMapElement.cpp
+ JSSVGFEDisplacementMapElement.h
+ JSSVGFEDistantLightElement.cpp
+ JSSVGFEDistantLightElement.h
+ JSSVGFEFloodElement.cpp
+ JSSVGFEFloodElement.h
+ JSSVGFEFuncAElement.cpp
+ JSSVGFEFuncAElement.h
+ JSSVGFEFuncBElement.cpp
+ JSSVGFEFuncBElement.h
+ JSSVGFEFuncGElement.cpp
+ JSSVGFEFuncGElement.h
+ JSSVGFEFuncRElement.cpp
+ JSSVGFEFuncRElement.h
+ JSSVGFEGaussianBlurElement.cpp
+ JSSVGFEGaussianBlurElement.h
+ JSSVGFEImageElement.cpp
+ JSSVGFEImageElement.h
+ JSSVGFEMergeElement.cpp
+ JSSVGFEMergeElement.h
+ JSSVGFEMergeNodeElement.cpp
+ JSSVGFEMergeNodeElement.h
+ JSSVGFEMorphologyElement.cpp
+ JSSVGFEMorphologyElement.h
+ JSSVGFEOffsetElement.cpp
+ JSSVGFEOffsetElement.h
+ JSSVGFEPointLightElement.cpp
+ JSSVGFEPointLightElement.h
+ JSSVGFESpecularLightingElement.cpp
+ JSSVGFESpecularLightingElement.h
+ JSSVGFESpotLightElement.cpp
+ JSSVGFESpotLightElement.h
+ JSSVGFETileElement.cpp
+ JSSVGFETileElement.h
+ JSSVGFETurbulenceElement.cpp
+ JSSVGFETurbulenceElement.h
+ JSSVGFilterElement.cpp
+ JSSVGFilterElement.h
+ JSSVGFontElement.cpp
+ JSSVGFontElement.h
+ JSSVGFontFaceElement.cpp
+ JSSVGFontFaceElement.h
+ JSSVGFontFaceFormatElement.cpp
+ JSSVGFontFaceFormatElement.h
+ JSSVGFontFaceNameElement.cpp
+ JSSVGFontFaceNameElement.h
+ JSSVGFontFaceSrcElement.cpp
+ JSSVGFontFaceSrcElement.h
+ JSSVGFontFaceUriElement.cpp
+ JSSVGFontFaceUriElement.h
+ JSSVGForeignObjectElement.cpp
+ JSSVGForeignObjectElement.h
+ JSSVGGElement.cpp
+ JSSVGGElement.h
+ JSSVGGlyphElement.cpp
+ JSSVGGlyphElement.h
+ JSSVGGradientElement.cpp
+ JSSVGGradientElement.h
+ JSSVGHKernElement.cpp
+ JSSVGHKernElement.h
+ JSSVGImageElement.cpp
+ JSSVGImageElement.h
+ JSSVGLength.cpp
+ JSSVGLength.h
+ JSSVGLengthList.cpp
+ JSSVGLengthList.h
+ JSSVGLinearGradientElement.cpp
+ JSSVGLinearGradientElement.h
+ JSSVGLineElement.cpp
+ JSSVGLineElement.h
+ JSSVGMarkerElement.cpp
+ JSSVGMarkerElement.h
+ JSSVGMaskElement.cpp
+ JSSVGMaskElement.h
+ JSSVGMatrix.cpp
+ JSSVGMatrix.h
+ JSSVGMetadataElement.cpp
+ JSSVGMetadataElement.h
+ JSSVGMissingGlyphElement.cpp
+ JSSVGMissingGlyphElement.h
+ JSSVGNumber.cpp
+ JSSVGNumber.h
+ JSSVGNumberList.cpp
+ JSSVGNumberList.h
+ JSSVGPaint.cpp
+ JSSVGPaint.h
+ JSSVGPathElement.cpp
+ JSSVGPathElement.h
+ JSSVGPathSegArcAbs.cpp
+ JSSVGPathSegArcAbs.h
+ JSSVGPathSegArcRel.cpp
+ JSSVGPathSegArcRel.h
+ JSSVGPathSegClosePath.cpp
+ JSSVGPathSegClosePath.h
+ JSSVGPathSeg.cpp
+ JSSVGPathSegCurvetoCubicAbs.cpp
+ JSSVGPathSegCurvetoCubicAbs.h
+ JSSVGPathSegCurvetoCubicRel.cpp
+ JSSVGPathSegCurvetoCubicRel.h
+ JSSVGPathSegCurvetoCubicSmoothAbs.cpp
+ JSSVGPathSegCurvetoCubicSmoothAbs.h
+ JSSVGPathSegCurvetoCubicSmoothRel.cpp
+ JSSVGPathSegCurvetoCubicSmoothRel.h
+ JSSVGPathSegCurvetoQuadraticAbs.cpp
+ JSSVGPathSegCurvetoQuadraticAbs.h
+ JSSVGPathSegCurvetoQuadraticRel.cpp
+ JSSVGPathSegCurvetoQuadraticRel.h
+ JSSVGPathSegCurvetoQuadraticSmoothAbs.cpp
+ JSSVGPathSegCurvetoQuadraticSmoothAbs.h
+ JSSVGPathSegCurvetoQuadraticSmoothRel.cpp
+ JSSVGPathSegCurvetoQuadraticSmoothRel.h
+ JSSVGPathSeg.h
+ JSSVGPathSegLinetoAbs.cpp
+ JSSVGPathSegLinetoAbs.h
+ JSSVGPathSegLinetoHorizontalAbs.cpp
+ JSSVGPathSegLinetoHorizontalAbs.h
+ JSSVGPathSegLinetoHorizontalRel.cpp
+ JSSVGPathSegLinetoHorizontalRel.h
+ JSSVGPathSegLinetoRel.cpp
+ JSSVGPathSegLinetoRel.h
+ JSSVGPathSegLinetoVerticalAbs.cpp
+ JSSVGPathSegLinetoVerticalAbs.h
+ JSSVGPathSegLinetoVerticalRel.cpp
+ JSSVGPathSegLinetoVerticalRel.h
+ JSSVGPathSegList.cpp
+ JSSVGPathSegList.h
+ JSSVGPathSegMovetoAbs.cpp
+ JSSVGPathSegMovetoAbs.h
+ JSSVGPathSegMovetoRel.cpp
+ JSSVGPathSegMovetoRel.h
+ JSSVGPatternElement.cpp
+ JSSVGPatternElement.h
+ JSSVGPoint.cpp
+ JSSVGPoint.h
+ JSSVGPointList.cpp
+ JSSVGPointList.h
+ JSSVGPolygonElement.cpp
+ JSSVGPolygonElement.h
+ JSSVGPolylineElement.cpp
+ JSSVGPolylineElement.h
+ JSSVGPreserveAspectRatio.cpp
+ JSSVGPreserveAspectRatio.h
+ JSSVGRadialGradientElement.cpp
+ JSSVGRadialGradientElement.h
+ JSSVGRect.cpp
+ JSSVGRectElement.cpp
+ JSSVGRectElement.h
+ JSSVGRect.h
+ JSSVGRenderingIntent.cpp
+ JSSVGRenderingIntent.h
+ JSSVGScriptElement.cpp
+ JSSVGScriptElement.h
+ JSSVGSetElement.cpp
+ JSSVGSetElement.h
+ JSSVGStopElement.cpp
+ JSSVGStopElement.h
+ JSSVGStringList.cpp
+ JSSVGStringList.h
+ JSSVGStyleElement.cpp
+ JSSVGStyleElement.h
+ JSSVGSVGElement.cpp
+ JSSVGSVGElement.h
+ JSSVGSwitchElement.cpp
+ JSSVGSwitchElement.h
+ JSSVGSymbolElement.cpp
+ JSSVGSymbolElement.h
+ JSSVGTextContentElement.cpp
+ JSSVGTextContentElement.h
+ JSSVGTextElement.cpp
+ JSSVGTextElement.h
+ JSSVGTextPathElement.cpp
+ JSSVGTextPathElement.h
+ JSSVGTextPositioningElement.cpp
+ JSSVGTextPositioningElement.h
+ JSSVGTitleElement.cpp
+ JSSVGTitleElement.h
+ JSSVGTransform.cpp
+ JSSVGTransform.h
+ JSSVGTransformList.cpp
+ JSSVGTransformList.h
+ JSSVGTRefElement.cpp
+ JSSVGTRefElement.h
+ JSSVGTSpanElement.cpp
+ JSSVGTSpanElement.h
+ JSSVGUnitTypes.cpp
+ JSSVGUnitTypes.h
+ JSSVGUseElement.cpp
+ JSSVGUseElement.h
+ JSSVGViewElement.cpp
+ JSSVGViewElement.h
+ JSSVGZoomEvent.cpp
+ JSSVGZoomEvent.h
+ JSText.cpp
+ JSTextEvent.cpp
+ JSTextEvent.h
+ JSText.h
+ JSTextMetrics.cpp
+ JSTextMetrics.h
+ JSTimeRanges.cpp
+ JSTimeRanges.h
+ JSTreeWalker.cpp
+ JSTreeWalker.h
+ JSUIEvent.cpp
+ JSUIEvent.h
+ JSValidityState.cpp
+ JSValidityState.h
+ JSVoidCallback.cpp
+ JSVoidCallback.h
+ JSWebKitAnimationEvent.cpp
+ JSWebKitAnimationEvent.h
+ JSWebKitCSSKeyframeRule.cpp
+ JSWebKitCSSKeyframeRule.h
+ JSWebKitCSSKeyframesRule.cpp
+ JSWebKitCSSKeyframesRule.h
+ JSWebKitCSSMatrix.cpp
+ JSWebKitCSSMatrix.h
+ JSWebKitCSSTransformValue.cpp
+ JSWebKitCSSTransformValue.h
+ JSWebKitPoint.cpp
+ JSWebKitPoint.h
+ JSWebKitTransitionEvent.cpp
+ JSWebKitTransitionEvent.h
+ JSWebSocket.cpp
+ JSWebSocket.h
+ JSWheelEvent.cpp
+ JSWheelEvent.h
+ JSWorkerContextBase.lut.h
+ JSWorkerContext.cpp
+ JSWorkerContext.h
+ JSWorker.cpp
+ JSWorker.h
+ JSWorkerLocation.cpp
+ JSWorkerLocation.h
+ JSWorkerNavigator.cpp
+ JSWorkerNavigator.h
+ JSXMLHttpRequest.cpp
+ JSXMLHttpRequestException.cpp
+ JSXMLHttpRequestException.h
+ JSXMLHttpRequest.h
+ JSXMLHttpRequestProgressEvent.cpp
+ JSXMLHttpRequestProgressEvent.h
+ JSXMLHttpRequestUpload.cpp
+ JSXMLHttpRequestUpload.h
+ JSXMLSerializer.cpp
+ JSXMLSerializer.h
+ JSXPathEvaluator.cpp
+ JSXPathEvaluator.h
+ JSXPathException.cpp
+ JSXPathException.h
+ JSXPathExpression.cpp
+ JSXPathExpression.h
+ JSXPathNSResolver.cpp
+ JSXPathNSResolver.h
+ JSXPathResult.cpp
+ JSXPathResult.h
+ JSXSLTProcessor.cpp
+ JSXSLTProcessor.h
+ Lexer.lut.h
+ MathObject.lut.h
+ NumberConstructor.lut.h
+ RegExpConstructor.lut.h
+ RegExpObject.lut.h
+ StringPrototype.lut.h
+ SVGElementFactory.cpp
+ SVGElementFactory.h
+ SVGNames.cpp
+ SVGNames.h
+ tokenizer.cpp
+ UserAgentStyleSheetsData.cpp
+ UserAgentStyleSheets.h
+ WebKitVersion.h
+ XLinkNames.cpp
+ XLinkNames.h
+ XMLNames.cpp
+ XMLNames.h
+ XPathGrammar.cpp
+ XPathGrammar.h
+2 history/
+0 BackForwardListChromium.cpp
+ BackForwardList.cpp
+ BackForwardList.h
+ CachedFrame.cpp
+ CachedFrame.h
+ CachedFramePlatformData.h
+ CachedPage.cpp
+ CachedPage.h
+ cf/
+0 HistoryPropertyList.cpp
+ HistoryPropertyList.h
+2 HistoryItem.cpp
+ HistoryItem.h
+ PageCache.cpp
+ PageCache.h
+ qt/
+0 HistoryItemQt.cpp
+3 html/
+0 canvas/
+0 CanvasActiveInfo.h
+ CanvasActiveInfo.idl
+ CanvasArrayBuffer.cpp
+ CanvasArrayBuffer.h
+ CanvasArrayBuffer.idl
+ CanvasArray.cpp
+ CanvasArray.h
+ CanvasArray.idl
+ CanvasBuffer.cpp
+ CanvasBuffer.h
+ CanvasBuffer.idl
+ CanvasByteArray.cpp
+ CanvasByteArray.h
+ CanvasByteArray.idl
+ CanvasFloatArray.cpp
+ CanvasFloatArray.h
+ CanvasFloatArray.idl
+ CanvasFramebuffer.cpp
+ CanvasFramebuffer.h
+ CanvasFramebuffer.idl
+ CanvasGradient.cpp
+ CanvasGradient.h
+ CanvasGradient.idl
+ CanvasIntArray.cpp
+ CanvasIntArray.h
+ CanvasIntArray.idl
+ CanvasNumberArray.cpp
+ CanvasNumberArray.h
+ CanvasNumberArray.idl
+ CanvasObject.cpp
+ CanvasObject.h
+ CanvasPattern.cpp
+ CanvasPattern.h
+ CanvasPattern.idl
+ CanvasPixelArray.cpp
+ CanvasPixelArray.h
+ CanvasPixelArray.idl
+ CanvasProgram.cpp
+ CanvasProgram.h
+ CanvasProgram.idl
+ CanvasRenderbuffer.cpp
+ CanvasRenderbuffer.h
+ CanvasRenderbuffer.idl
+ CanvasRenderingContext2D.cpp
+ CanvasRenderingContext2D.h
+ CanvasRenderingContext2D.idl
+ CanvasRenderingContext3D.cpp
+ CanvasRenderingContext3D.h
+ CanvasRenderingContext3D.idl
+ CanvasRenderingContext.cpp
+ CanvasRenderingContext.h
+ CanvasRenderingContext.idl
+ CanvasShader.cpp
+ CanvasShader.h
+ CanvasShader.idl
+ CanvasShortArray.cpp
+ CanvasShortArray.h
+ CanvasShortArray.idl
+ CanvasStyle.cpp
+ CanvasStyle.h
+ CanvasTexture.cpp
+ CanvasTexture.h
+ CanvasTexture.idl
+ CanvasUnsignedByteArray.cpp
+ CanvasUnsignedByteArray.h
+ CanvasUnsignedByteArray.idl
+ CanvasUnsignedIntArray.cpp
+ CanvasUnsignedIntArray.h
+ CanvasUnsignedIntArray.idl
+ CanvasUnsignedShortArray.cpp
+ CanvasUnsignedShortArray.h
+ CanvasUnsignedShortArray.idl
+2 CollectionCache.cpp
+ CollectionCache.h
+ CollectionType.h
+ DataGridColumn.cpp
+ DataGridColumn.h
+ DataGridColumn.idl
+ DataGridColumnList.cpp
+ DataGridColumnList.h
+ DataGridColumnList.idl
+ DataGridDataSource.h
+ DocTypeStrings.gperf
+ DOMDataGridDataSource.cpp
+ DOMDataGridDataSource.h
+ File.cpp
+ File.h
+ File.idl
+ FileList.cpp
+ FileList.h
+ FileList.idl
+ FormDataList.cpp
+ FormDataList.h
+ HTMLAllCollection.cpp
+ HTMLAllCollection.h
+ HTMLAllCollection.idl
+ HTMLAnchorElement.cpp
+ HTMLAnchorElement.h
+ HTMLAnchorElement.idl
+ HTMLAppletElement.cpp
+ HTMLAppletElement.h
+ HTMLAppletElement.idl
+ HTMLAreaElement.cpp
+ HTMLAreaElement.h
+ HTMLAreaElement.idl
+ HTMLAttributeNames.in
+ HTMLAudioElement.cpp
+ HTMLAudioElement.h
+ HTMLAudioElement.idl
+ HTMLBaseElement.cpp
+ HTMLBaseElement.h
+ HTMLBaseElement.idl
+ HTMLBaseFontElement.cpp
+ HTMLBaseFontElement.h
+ HTMLBaseFontElement.idl
+ HTMLBlockquoteElement.cpp
+ HTMLBlockquoteElement.h
+ HTMLBlockquoteElement.idl
+ HTMLBodyElement.cpp
+ HTMLBodyElement.h
+ HTMLBodyElement.idl
+ HTMLBRElement.cpp
+ HTMLBRElement.h
+ HTMLBRElement.idl
+ HTMLButtonElement.cpp
+ HTMLButtonElement.h
+ HTMLButtonElement.idl
+ HTMLCanvasElement.cpp
+ HTMLCanvasElement.h
+ HTMLCanvasElement.idl
+ HTMLCollection.cpp
+ HTMLCollection.h
+ HTMLCollection.idl
+ HTMLDataGridCellElement.cpp
+ HTMLDataGridCellElement.h
+ HTMLDataGridCellElement.idl
+ HTMLDataGridColElement.cpp
+ HTMLDataGridColElement.h
+ HTMLDataGridColElement.idl
+ HTMLDataGridElement.cpp
+ HTMLDataGridElement.h
+ HTMLDataGridElement.idl
+ HTMLDataGridRowElement.cpp
+ HTMLDataGridRowElement.h
+ HTMLDataGridRowElement.idl
+ HTMLDataListElement.cpp
+ HTMLDataListElement.h
+ HTMLDataListElement.idl
+ HTMLDirectoryElement.cpp
+ HTMLDirectoryElement.h
+ HTMLDirectoryElement.idl
+ HTMLDivElement.cpp
+ HTMLDivElement.h
+ HTMLDivElement.idl
+ HTMLDListElement.cpp
+ HTMLDListElement.h
+ HTMLDListElement.idl
+ HTMLDocument.cpp
+ HTMLDocument.h
+ HTMLDocument.idl
+ HTMLElement.cpp
+ HTMLElement.h
+ HTMLElement.idl
+ HTMLElementsAllInOne.cpp
+ HTMLEmbedElement.cpp
+ HTMLEmbedElement.h
+ HTMLEmbedElement.idl
+ HTMLEntityNames.gperf
+ HTMLFieldSetElement.cpp
+ HTMLFieldSetElement.h
+ HTMLFieldSetElement.idl
+ HTMLFontElement.cpp
+ HTMLFontElement.h
+ HTMLFontElement.idl
+ HTMLFormCollection.cpp
+ HTMLFormCollection.h
+ HTMLFormControlElement.cpp
+ HTMLFormControlElement.h
+ HTMLFormElement.cpp
+ HTMLFormElement.h
+ HTMLFormElement.idl
+ HTMLFrameElementBase.cpp
+ HTMLFrameElementBase.h
+ HTMLFrameElement.cpp
+ HTMLFrameElement.h
+ HTMLFrameElement.idl
+ HTMLFrameOwnerElement.cpp
+ HTMLFrameOwnerElement.h
+ HTMLFrameSetElement.cpp
+ HTMLFrameSetElement.h
+ HTMLFrameSetElement.idl
+ HTMLHeadElement.cpp
+ HTMLHeadElement.h
+ HTMLHeadElement.idl
+ HTMLHeadingElement.cpp
+ HTMLHeadingElement.h
+ HTMLHeadingElement.idl
+ HTMLHRElement.cpp
+ HTMLHRElement.h
+ HTMLHRElement.idl
+ HTMLHtmlElement.cpp
+ HTMLHtmlElement.h
+ HTMLHtmlElement.idl
+ HTMLIFrameElement.cpp
+ HTMLIFrameElement.h
+ HTMLIFrameElement.idl
+ HTMLImageElement.cpp
+ HTMLImageElement.h
+ HTMLImageElement.idl
+ HTMLImageLoader.cpp
+ HTMLImageLoader.h
+ HTMLInputElement.cpp
+ HTMLInputElement.h
+ HTMLInputElement.idl
+ HTMLIsIndexElement.cpp
+ HTMLIsIndexElement.h
+ HTMLIsIndexElement.idl
+ HTMLKeygenElement.cpp
+ HTMLKeygenElement.h
+ HTMLLabelElement.cpp
+ HTMLLabelElement.h
+ HTMLLabelElement.idl
+ HTMLLegendElement.cpp
+ HTMLLegendElement.h
+ HTMLLegendElement.idl
+ HTMLLIElement.cpp
+ HTMLLIElement.h
+ HTMLLIElement.idl
+ HTMLLinkElement.cpp
+ HTMLLinkElement.h
+ HTMLLinkElement.idl
+ HTMLMapElement.cpp
+ HTMLMapElement.h
+ HTMLMapElement.idl
+ HTMLMarqueeElement.cpp
+ HTMLMarqueeElement.h
+ HTMLMarqueeElement.idl
+ HTMLMediaElement.cpp
+ HTMLMediaElement.h
+ HTMLMediaElement.idl
+ HTMLMenuElement.cpp
+ HTMLMenuElement.h
+ HTMLMenuElement.idl
+ HTMLMetaElement.cpp
+ HTMLMetaElement.h
+ HTMLMetaElement.idl
+ HTMLModElement.cpp
+ HTMLModElement.h
+ HTMLModElement.idl
+ HTMLNameCollection.cpp
+ HTMLNameCollection.h
+ HTMLNoScriptElement.cpp
+ HTMLNoScriptElement.h
+ HTMLObjectElement.cpp
+ HTMLObjectElement.h
+ HTMLObjectElement.idl
+ HTMLOListElement.cpp
+ HTMLOListElement.h
+ HTMLOListElement.idl
+ HTMLOptGroupElement.cpp
+ HTMLOptGroupElement.h
+ HTMLOptGroupElement.idl
+ HTMLOptionElement.cpp
+ HTMLOptionElement.h
+ HTMLOptionElement.idl
+ HTMLOptionsCollection.cpp
+ HTMLOptionsCollection.h
+ HTMLOptionsCollection.idl
+ HTMLParagraphElement.cpp
+ HTMLParagraphElement.h
+ HTMLParagraphElement.idl
+ HTMLParamElement.cpp
+ HTMLParamElement.h
+ HTMLParamElement.idl
+ HTMLParser.cpp
+ HTMLParserErrorCodes.cpp
+ HTMLParserErrorCodes.h
+ HTMLParser.h
+ HTMLParserQuirks.h
+ HTMLPlugInElement.cpp
+ HTMLPlugInElement.h
+ HTMLPlugInImageElement.cpp
+ HTMLPlugInImageElement.h
+ HTMLPreElement.cpp
+ HTMLPreElement.h
+ HTMLPreElement.idl
+ HTMLQuoteElement.cpp
+ HTMLQuoteElement.h
+ HTMLQuoteElement.idl
+ HTMLScriptElement.cpp
+ HTMLScriptElement.h
+ HTMLScriptElement.idl
+ HTMLSelectElement.cpp
+ HTMLSelectElement.h
+ HTMLSelectElement.idl
+ HTMLSourceElement.cpp
+ HTMLSourceElement.h
+ HTMLSourceElement.idl
+ HTMLStyleElement.cpp
+ HTMLStyleElement.h
+ HTMLStyleElement.idl
+ HTMLTableCaptionElement.cpp
+ HTMLTableCaptionElement.h
+ HTMLTableCaptionElement.idl
+ HTMLTableCellElement.cpp
+ HTMLTableCellElement.h
+ HTMLTableCellElement.idl
+ HTMLTableColElement.cpp
+ HTMLTableColElement.h
+ HTMLTableColElement.idl
+ HTMLTableElement.cpp
+ HTMLTableElement.h
+ HTMLTableElement.idl
+ HTMLTablePartElement.cpp
+ HTMLTablePartElement.h
+ HTMLTableRowElement.cpp
+ HTMLTableRowElement.h
+ HTMLTableRowElement.idl
+ HTMLTableRowsCollection.cpp
+ HTMLTableRowsCollection.h
+ HTMLTableSectionElement.cpp
+ HTMLTableSectionElement.h
+ HTMLTableSectionElement.idl
+ HTMLTagNames.in
+ HTMLTextAreaElement.cpp
+ HTMLTextAreaElement.h
+ HTMLTextAreaElement.idl
+ HTMLTitleElement.cpp
+ HTMLTitleElement.h
+ HTMLTitleElement.idl
+ HTMLTokenizer.cpp
+ HTMLTokenizer.h
+ HTMLUListElement.cpp
+ HTMLUListElement.h
+ HTMLUListElement.idl
+ HTMLVideoElement.cpp
+ HTMLVideoElement.h
+ HTMLVideoElement.idl
+ HTMLViewSourceDocument.cpp
+ HTMLViewSourceDocument.h
+ ImageData.cpp
+ ImageData.h
+ ImageData.idl
+ MediaError.h
+ MediaError.idl
+ PreloadScanner.cpp
+ PreloadScanner.h
+ TextMetrics.h
+ TextMetrics.idl
+ TimeRanges.cpp
+ TimeRanges.h
+ TimeRanges.idl
+ ValidityState.cpp
+ ValidityState.h
+ ValidityState.idl
+ VoidCallback.h
+ VoidCallback.idl
+2 Info.plist
+ inspector/
+0 ConsoleMessage.cpp
+ ConsoleMessage.h
+ front-end/
+0 AbstractTimelinePanel.js
+ BottomUpProfileDataGridTree.js
+ Breakpoint.js
+ BreakpointsSidebarPane.js
+ Callback.js
+ CallStackSidebarPane.js
+ ChangesView.js
+ Color.js
+ ConsoleView.js
+ CookieItemsView.js
+ Database.js
+ DatabaseQueryView.js
+ DatabaseTableView.js
+ DataGrid.js
+ DOMAgent.js
+ DOMStorageDataGrid.js
+ DOMStorageItemsView.js
+ DOMStorage.js
+ Drawer.js
+ ElementsPanel.js
+ ElementsTreeOutline.js
+ EventListenersSidebarPane.js
+ FontView.js
+ Images/
+0 back.png
+ checker.png
+ clearConsoleButtonGlyph.png
+ closeButtons.png
+ consoleButtonGlyph.png
+ cookie.png
+ database.png
+ databaseTable.png
+ debuggerContinue.png
+ debuggerPause.png
+ debuggerStepInto.png
+ debuggerStepOut.png
+ debuggerStepOver.png
+ disclosureTriangleSmallDownBlack.png
+ disclosureTriangleSmallDown.png
+ disclosureTriangleSmallDownWhite.png
+ disclosureTriangleSmallRightBlack.png
+ disclosureTriangleSmallRightDownBlack.png
+ disclosureTriangleSmallRightDown.png
+ disclosureTriangleSmallRightDownWhite.png
+ disclosureTriangleSmallRight.png
+ disclosureTriangleSmallRightWhite.png
+ dockButtonGlyph.png
+ elementsIcon.png
+ enableOutlineButtonGlyph.png
+ enableSolidButtonGlyph.png
+ errorIcon.png
+ errorMediumIcon.png
+ errorRedDot.png
+ excludeButtonGlyph.png
+ focusButtonGlyph.png
+ forward.png
+ glossyHeader.png
+ glossyHeaderPressed.png
+ glossyHeaderSelected.png
+ glossyHeaderSelectedPressed.png
+ goArrow.png
+ graphLabelCalloutLeft.png
+ graphLabelCalloutRight.png
+ grayConnectorPoint.png
+ largerResourcesButtonGlyph.png
+ localStorage.png
+ nodeSearchButtonGlyph.png
+ paneBottomGrowActive.png
+ paneBottomGrow.png
+ paneGrowHandleLine.png
+ paneSettingsButtons.png
+ pauseOnExceptionButtonGlyph.png
+ percentButtonGlyph.png
+ profileGroupIcon.png
+ profileIcon.png
+ profilesIcon.png
+ profileSmallIcon.png
+ profilesSilhouette.png
+ radioDot.png
+ recordButtonGlyph.png
+ recordToggledButtonGlyph.png
+ reloadButtonGlyph.png
+ resourceCSSIcon.png
+ resourceDocumentIcon.png
+ resourceDocumentIconSmall.png
+ resourceJSIcon.png
+ resourcePlainIcon.png
+ resourcePlainIconSmall.png
+ resourcesIcon.png
+ resourcesSilhouette.png
+ resourcesSizeGraphIcon.png
+ resourcesTimeGraphIcon.png
+ scriptsIcon.png
+ scriptsSilhouette.png
+ searchSmallBlue.png
+ searchSmallBrightBlue.png
+ searchSmallGray.png
+ searchSmallWhite.png
+ segmentEnd.png
+ segmentHoverEnd.png
+ segmentHover.png
+ segment.png
+ segmentSelectedEnd.png
+ segmentSelected.png
+ sessionStorage.png
+ splitviewDimple.png
+ splitviewDividerBackground.png
+ statusbarBackground.png
+ statusbarBottomBackground.png
+ statusbarButtons.png
+ statusbarMenuButton.png
+ statusbarMenuButtonSelected.png
+ statusbarResizerHorizontal.png
+ statusbarResizerVertical.png
+ storageIcon.png
+ successGreenDot.png
+ timelineBarBlue.png
+ timelineBarGray.png
+ timelineBarGreen.png
+ timelineBarOrange.png
+ timelineBarPurple.png
+ timelineBarRed.png
+ timelineBarYellow.png
+ timelineCheckmarks.png
+ timelineDots.png
+ timelineHollowPillBlue.png
+ timelineHollowPillGray.png
+ timelineHollowPillGreen.png
+ timelineHollowPillOrange.png
+ timelineHollowPillPurple.png
+ timelineHollowPillRed.png
+ timelineHollowPillYellow.png
+ timelineIcon.png
+ timelinePillBlue.png
+ timelinePillGray.png
+ timelinePillGreen.png
+ timelinePillOrange.png
+ timelinePillPurple.png
+ timelinePillRed.png
+ timelinePillYellow.png
+ tipBalloonBottom.png
+ tipBalloon.png
+ tipIcon.png
+ tipIconPressed.png
+ toolbarItemSelected.png
+ treeDownTriangleBlack.png
+ treeDownTriangleWhite.png
+ treeRightTriangleBlack.png
+ treeRightTriangleWhite.png
+ treeUpTriangleBlack.png
+ treeUpTriangleWhite.png
+ undockButtonGlyph.png
+ userInputIcon.png
+ userInputPreviousIcon.png
+ userInputResultIcon.png
+ warningIcon.png
+ warningMediumIcon.png
+ warningOrangeDot.png
+ warningsErrors.png
+ whiteConnectorPoint.png
+2 ImageView.js
+ InjectedScriptAccess.js
+ InjectedScript.js
+ InspectorControllerStub.js
+ inspector.css
+ inspector.html
+ inspector.js
+ inspectorSyntaxHighlight.css
+ KeyboardShortcut.js
+ MetricsSidebarPane.js
+ Object.js
+ ObjectPropertiesSection.js
+ ObjectProxy.js
+ PanelEnablerView.js
+ Panel.js
+ Placard.js
+ Popup.js
+ ProfileDataGridTree.js
+ ProfilesPanel.js
+ ProfileView.js
+ PropertiesSection.js
+ PropertiesSidebarPane.js
+ ResourceCategory.js
+ Resource.js
+ ResourcesPanel.js
+ ResourceView.js
+ ScopeChainSidebarPane.js
+ Script.js
+ ScriptsPanel.js
+ ScriptView.js
+ SidebarPane.js
+ SidebarTreeElement.js
+ SourceFrame.js
+ SourceView.js
+ StatusBarButton.js
+ StoragePanel.js
+ StylesSidebarPane.js
+ SummaryBar.js
+ TestController.js
+ TextPrompt.js
+ TimelineAgent.js
+ TimelinePanel.js
+ TopDownProfileDataGridTree.js
+ treeoutline.js
+ utilities.js
+ View.js
+ WatchExpressionsSidebarPane.js
+ WebKit.qrc
+2 InspectorBackend.cpp
+ InspectorBackend.h
+ InspectorBackend.idl
+ InspectorClient.h
+ InspectorController.cpp
+ InspectorController.h
+ InspectorDatabaseResource.cpp
+ InspectorDatabaseResource.h
+ InspectorDOMAgent.cpp
+ InspectorDOMAgent.h
+ InspectorDOMStorageResource.cpp
+ InspectorDOMStorageResource.h
+ InspectorFrontend.cpp
+ InspectorFrontend.h
+ InspectorResource.cpp
+ InspectorResource.h
+ InspectorTimelineAgent.cpp
+ InspectorTimelineAgent.h
+ JavaScriptCallFrame.cpp
+ JavaScriptCallFrame.h
+ JavaScriptCallFrame.idl
+ JavaScriptDebugListener.h
+ JavaScriptDebugServer.cpp
+ JavaScriptDebugServer.h
+ JavaScriptProfile.cpp
+ JavaScriptProfile.h
+ JavaScriptProfileNode.cpp
+ JavaScriptProfileNode.h
+ TimelineRecordFactory.cpp
+ TimelineRecordFactory.h
+2 LICENSE-APPLE
+ LICENSE-LGPL-2
+0 .1
+2 loader/
+0 appcache/
+0 ApplicationCache.cpp
+ ApplicationCacheGroup.cpp
+ ApplicationCacheGroup.h
+ ApplicationCache.h
+ ApplicationCacheHost.cpp
+ ApplicationCacheHost.h
+ ApplicationCacheResource.cpp
+ ApplicationCacheResource.h
+ ApplicationCacheStorage.cpp
+ ApplicationCacheStorage.h
+ DOMApplicationCache.cpp
+ DOMApplicationCache.h
+ DOMApplicationCache.idl
+ ManifestParser.cpp
+ ManifestParser.h
+2 archive/
+0 ArchiveFactory.cpp
+ ArchiveFactory.h
+ Archive.h
+ ArchiveResourceCollection.cpp
+ ArchiveResourceCollection.h
+ ArchiveResource.cpp
+ ArchiveResource.h
+ cf/
+0 LegacyWebArchive.cpp
+ LegacyWebArchive.h
+ LegacyWebArchiveMac.mm
+3 Cache.cpp
+ CachedCSSStyleSheet.cpp
+ CachedCSSStyleSheet.h
+ CachedFont.cpp
+ CachedFont.h
+ CachedImage.cpp
+ CachedImage.h
+ CachedResourceClient.h
+ CachedResourceClientWalker.cpp
+ CachedResourceClientWalker.h
+ CachedResource.cpp
+ CachedResource.h
+ CachedResourceHandle.cpp
+ CachedResourceHandle.h
+ CachedScript.cpp
+ CachedScript.h
+ CachedXBLDocument.cpp
+ CachedXBLDocument.h
+ CachedXSLStyleSheet.cpp
+ CachedXSLStyleSheet.h
+ Cache.h
+ CachePolicy.h
+ cf/
+0 ResourceLoaderCFNet.cpp
+2 CrossOriginAccessControl.cpp
+ CrossOriginAccessControl.h
+ CrossOriginPreflightResultCache.cpp
+ CrossOriginPreflightResultCache.h
+ DocLoader.cpp
+ DocLoader.h
+ DocumentLoader.cpp
+ DocumentLoader.h
+ DocumentThreadableLoader.cpp
+ DocumentThreadableLoader.h
+ EmptyClients.h
+ FormState.cpp
+ FormState.h
+ FrameLoaderClient.h
+ FrameLoader.cpp
+ FrameLoader.h
+ FrameLoaderTypes.h
+ FTPDirectoryDocument.cpp
+ FTPDirectoryDocument.h
+ FTPDirectoryParser.cpp
+ FTPDirectoryParser.h
+ HistoryController.cpp
+ HistoryController.h
+ icon/
+0 IconDatabaseClient.h
+ IconDatabase.cpp
+ IconDatabase.h
+ IconDatabaseNone.cpp
+ IconFetcher.cpp
+ IconFetcher.h
+ IconLoader.cpp
+ IconLoader.h
+ IconRecord.cpp
+ IconRecord.h
+ PageURLRecord.cpp
+ PageURLRecord.h
+2 ImageDocument.cpp
+ ImageDocument.h
+ ImageLoader.cpp
+ ImageLoader.h
+ loader.cpp
+ loader.h
+ MainResourceLoader.cpp
+ MainResourceLoader.h
+ MediaDocument.cpp
+ MediaDocument.h
+ NavigationAction.cpp
+ NavigationAction.h
+ NetscapePlugInStreamLoader.cpp
+ NetscapePlugInStreamLoader.h
+ PlaceholderDocument.cpp
+ PlaceholderDocument.h
+ PluginDocument.cpp
+ PluginDocument.h
+ PolicyCallback.cpp
+ PolicyCallback.h
+ PolicyChecker.cpp
+ PolicyChecker.h
+ ProgressTracker.cpp
+ ProgressTracker.h
+ RedirectScheduler.cpp
+ RedirectScheduler.h
+ Request.cpp
+ Request.h
+ ResourceLoader.cpp
+ ResourceLoader.h
+ ResourceLoadNotifier.cpp
+ ResourceLoadNotifier.h
+ SubresourceLoaderClient.h
+ SubresourceLoader.cpp
+ SubresourceLoader.h
+ SubstituteData.h
+ SubstituteResource.h
+ TextDocument.cpp
+ TextDocument.h
+ TextResourceDecoder.cpp
+ TextResourceDecoder.h
+ ThreadableLoaderClient.h
+ ThreadableLoaderClientWrapper.h
+ ThreadableLoader.cpp
+ ThreadableLoader.h
+ WorkerThreadableLoader.cpp
+ WorkerThreadableLoader.h
+2 make-generated-sources.sh
+ mathml/
+0 MathMLElement.cpp
+ MathMLElement.h
+ MathMLInlineContainerElement.cpp
+ MathMLInlineContainerElement.h
+ MathMLMathElement.cpp
+ MathMLMathElement.h
+ mathtags.in
+2 move-js-headers.sh
+ notifications/
+0 NotificationCenter.cpp
+ NotificationCenter.h
+ NotificationCenter.idl
+ NotificationContents.h
+ Notification.cpp
+ Notification.h
+ Notification.idl
+ NotificationPresenter.h
+2 page/
+0 AbstractView.idl
+ android/
+0 DragControllerAndroid.cpp
+ EventHandlerAndroid.cpp
+ InspectorControllerAndroid.cpp
+2 animation/
+0 AnimationBase.cpp
+ AnimationBase.h
+ AnimationController.cpp
+ AnimationController.h
+ AnimationControllerPrivate.h
+ CompositeAnimation.cpp
+ CompositeAnimation.h
+ ImplicitAnimation.cpp
+ ImplicitAnimation.h
+ KeyframeAnimation.cpp
+ KeyframeAnimation.h
+2 BarInfo.cpp
+ BarInfo.h
+ BarInfo.idl
+ ChromeClient.h
+ Chrome.cpp
+ Chrome.h
+ Console.cpp
+ Console.h
+ Console.idl
+ ContextMenuClient.h
+ ContextMenuController.cpp
+ ContextMenuController.h
+ Coordinates.h
+ Coordinates.idl
+ DOMSelection.cpp
+ DOMSelection.h
+ DOMSelection.idl
+ DOMTimer.cpp
+ DOMTimer.h
+ DOMWindow.cpp
+ DOMWindow.h
+ DOMWindow.idl
+ DragActions.h
+ DragClient.h
+ DragController.cpp
+ DragController.h
+ EditorClient.h
+ EventHandler.cpp
+ EventHandler.h
+ EventSource.cpp
+ EventSource.h
+ EventSource.idl
+ FocusController.cpp
+ FocusController.h
+ FocusDirection.h
+ Frame.cpp
+ Frame.h
+ FrameLoadRequest.h
+ FrameTree.cpp
+ FrameTree.h
+ FrameView.cpp
+ FrameView.h
+ Geolocation.cpp
+ Geolocation.h
+ Geolocation.idl
+ Geoposition.h
+ Geoposition.idl
+ HaltablePlugin.h
+ History.cpp
+ History.h
+ History.idl
+ Location.cpp
+ Location.h
+ Location.idl
+ MouseEventWithHitTestResults.cpp
+ MouseEventWithHitTestResults.h
+ NavigatorBase.cpp
+ NavigatorBase.h
+ Navigator.cpp
+ Navigator.h
+ Navigator.idl
+ OriginAccessEntry.cpp
+ OriginAccessEntry.h
+ Page.cpp
+ PageGroup.cpp
+ PageGroup.h
+ PageGroupLoadDeferrer.cpp
+ PageGroupLoadDeferrer.h
+ Page.h
+ PluginHalterClient.h
+ PluginHalter.cpp
+ PluginHalter.h
+ PositionCallback.h
+ PositionErrorCallback.h
+ PositionError.h
+ PositionError.idl
+ PositionOptions.h
+ PrintContext.cpp
+ PrintContext.h
+ qt/
+0 DragControllerQt.cpp
+ EventHandlerQt.cpp
+ FrameQt.cpp
+2 Screen.cpp
+ Screen.h
+ Screen.idl
+ SecurityOrigin.cpp
+ SecurityOrigin.h
+ SecurityOriginHash.h
+ Settings.cpp
+ Settings.h
+ UserContentURLPattern.cpp
+ UserContentURLPattern.h
+ UserScript.h
+ UserScriptTypes.h
+ UserStyleSheet.h
+ UserStyleSheetTypes.h
+ WebKitPoint.h
+ WebKitPoint.idl
+ win/
+ WindowFeatures.cpp
+ WindowFeatures.h
+ win/DragControllerWin.cpp
+ win/EventHandlerWin.cpp
+ win/FrameCairoWin.cpp
+ win/FrameCGWin.cpp
+ win/FrameWin.cpp
+ win/FrameWin.h
+ win/PageWin.cpp
+ WorkerNavigator.cpp
+ WorkerNavigator.h
+ WorkerNavigator.idl
+ XSSAuditor.cpp
+ XSSAuditor.h
+2 platform/
+0 android/
+0 ClipboardAndroid.cpp
+ ClipboardAndroid.h
+ CursorAndroid.cpp
+ DragDataAndroid.cpp
+ EventLoopAndroid.cpp
+ FileChooserAndroid.cpp
+ FileSystemAndroid.cpp
+ KeyboardCodes.h
+ KeyEventAndroid.cpp
+ LocalizedStringsAndroid.cpp
+ PopupMenuAndroid.cpp
+ RenderThemeAndroid.cpp
+ RenderThemeAndroid.h
+ ScreenAndroid.cpp
+ ScrollViewAndroid.cpp
+ SearchPopupMenuAndroid.cpp
+ SystemTimeAndroid.cpp
+ TemporaryLinkStubs.cpp
+ WidgetAndroid.cpp
+2 animation/
+0 Animation.cpp
+ Animation.h
+ AnimationList.cpp
+ AnimationList.h
+ TimingFunction.h
+2 Arena.cpp
+ Arena.h
+ AutodrainedPool.h
+ ColorData.gperf
+ ContentType.cpp
+ ContentType.h
+ ContextMenu.cpp
+ ContextMenu.h
+ ContextMenuItem.h
+ Cookie.h
+ CookieJar.h
+ CrossThreadCopier.cpp
+ CrossThreadCopier.h
+ Cursor.h
+ DeprecatedPtrList.h
+ DeprecatedPtrListImpl.cpp
+ DeprecatedPtrListImpl.h
+ DragData.cpp
+ DragData.h
+ DragImage.cpp
+ DragImage.h
+ EventLoop.h
+ FileChooser.cpp
+ FileChooser.h
+ FileSystem.h
+ FloatConversion.h
+ GeolocationService.cpp
+ GeolocationService.h
+ graphics/
+0 BitmapImage.cpp
+ BitmapImage.h
+ Color.cpp
+ Color.h
+ DashArray.h
+ filters/
+0 FEBlend.cpp
+ FEBlend.h
+ FEColorMatrix.cpp
+ FEColorMatrix.h
+ FEComponentTransfer.cpp
+ FEComponentTransfer.h
+ FEComposite.cpp
+ FEComposite.h
+ FEGaussianBlur.cpp
+ FEGaussianBlur.h
+ FilterEffect.cpp
+ FilterEffect.h
+ Filter.h
+ SourceAlpha.cpp
+ SourceAlpha.h
+ SourceGraphic.cpp
+ SourceGraphic.h
+2 FloatPoint3D.cpp
+ FloatPoint3D.h
+ FloatPoint.cpp
+ FloatPoint.h
+ FloatQuad.cpp
+ FloatQuad.h
+ FloatRect.cpp
+ FloatRect.h
+ FloatSize.cpp
+ FloatSize.h
+ FontCache.cpp
+ FontCache.h
+ Font.cpp
+ FontData.cpp
+ FontData.h
+ FontDescription.cpp
+ FontDescription.h
+ FontFallbackList.cpp
+ FontFallbackList.h
+ FontFamily.cpp
+ FontFamily.h
+ FontFastPath.cpp
+ Font.h
+ FontRenderingMode.h
+ FontSelector.h
+ FontSmoothingMode.h
+ FontTraitsMask.h
+ GeneratedImage.cpp
+ GeneratedImage.h
+ Generator.h
+ GlyphBuffer.h
+ GlyphPageTreeNode.cpp
+ GlyphPageTreeNode.h
+ GlyphWidthMap.cpp
+ GlyphWidthMap.h
+ Gradient.cpp
+ Gradient.h
+ GraphicsContext3D.h
+ GraphicsContext.cpp
+ GraphicsContext.h
+ GraphicsContextPrivate.h
+ GraphicsLayerClient.h
+ GraphicsLayer.cpp
+ GraphicsLayer.h
+ GraphicsTypes.cpp
+ GraphicsTypes.h
+ Icon.h
+ ImageBuffer.cpp
+ ImageBuffer.h
+ Image.cpp
+ Image.h
+ ImageObserver.h
+ ImageSource.cpp
+ ImageSource.h
+ IntPoint.h
+ IntRect.cpp
+ IntRect.h
+ IntSize.h
+ IntSizeHash.h
+ MediaPlayer.cpp
+ MediaPlayer.h
+ MediaPlayerPrivate.h
+ opentype/
+0 OpenTypeUtilities.cpp
+ OpenTypeUtilities.h
+2 Path.cpp
+ Path.h
+ PathTraversalState.cpp
+ PathTraversalState.h
+ Pattern.cpp
+ Pattern.h
+ Pen.cpp
+ Pen.h
+ qt/
+0 ColorQt.cpp
+ FloatPointQt.cpp
+ FloatRectQt.cpp
+ FontCacheQt.cpp
+ FontCustomPlatformData.cpp
+ FontCustomPlatformData.h
+ FontFallbackListQt.cpp
+ FontPlatformData.h
+ FontPlatformDataQt.cpp
+ FontQt43.cpp
+ FontQt.cpp
+ GlyphPageTreeNodeQt.cpp
+ GradientQt.cpp
+ GraphicsContextQt.cpp
+ IconQt.cpp
+ ImageBufferData.h
+ ImageBufferQt.cpp
+ ImageDecoderQt.cpp
+ ImageDecoderQt.h
+ ImageQt.cpp
+ IntPointQt.cpp
+ IntRectQt.cpp
+ IntSizeQt.cpp
+ MediaPlayerPrivatePhonon.cpp
+ MediaPlayerPrivatePhonon.h
+ PathQt.cpp
+ PatternQt.cpp
+ SimpleFontDataQt.cpp
+ StillImageQt.cpp
+ StillImageQt.h
+ TransformationMatrixQt.cpp
+2 SegmentedFontData.cpp
+ SegmentedFontData.h
+ SimpleFontData.cpp
+ SimpleFontData.h
+ StringTruncator.cpp
+ StringTruncator.h
+ StrokeStyleApplier.h
+ TextRenderingMode.h
+ TextRun.h
+ transforms/
+0 IdentityTransformOperation.h
+ Matrix3DTransformOperation.cpp
+ Matrix3DTransformOperation.h
+ MatrixTransformOperation.cpp
+ MatrixTransformOperation.h
+ PerspectiveTransformOperation.cpp
+ PerspectiveTransformOperation.h
+ RotateTransformOperation.cpp
+ RotateTransformOperation.h
+ ScaleTransformOperation.cpp
+ ScaleTransformOperation.h
+ SkewTransformOperation.cpp
+ SkewTransformOperation.h
+ TransformationMatrix.cpp
+ TransformationMatrix.h
+ TransformOperation.h
+ TransformOperations.cpp
+ TransformOperations.h
+ TranslateTransformOperation.cpp
+ TranslateTransformOperation.h
+2 UnitBezier.h
+ WidthIterator.cpp
+ WidthIterator.h
+2 HostWindow.h
+ image-decoders/
+0 cairo/
+0 ImageDecoderCairo.cpp
+2 ImageDecoder.cpp
+ ImageDecoder.h
+ qt/
+0 RGBA32BufferQt.cpp
+2 wx/
+0 ImageDecoderWx.cpp
+3 KeyboardCodes.h
+ KURL.cpp
+ KURLGoogle.cpp
+ KURLGooglePrivate.h
+ KURL.h
+ KURLHash.h
+ Language.h
+ LengthBox.h
+ Length.cpp
+ Length.h
+ LengthSize.h
+ LinkHash.cpp
+ LinkHash.h
+ LocalizedStrings.h
+ Logging.cpp
+ Logging.h
+ mac/
+0 AutodrainedPool.mm
+ BlockExceptions.h
+ BlockExceptions.mm
+ ClipboardMac.h
+ ClipboardMac.mm
+ ContextMenuItemMac.mm
+ ContextMenuMac.mm
+ CookieJar.mm
+ CursorMac.mm
+ DragDataMac.mm
+ DragImageMac.mm
+ EventLoopMac.mm
+ FileChooserMac.mm
+ FileSystemMac.mm
+ FoundationExtras.h
+ GeolocationServiceMac.h
+ GeolocationServiceMac.mm
+ KeyEventMac.mm
+ KURLMac.mm
+ Language.mm
+ LocalCurrentGraphicsContext.h
+ LocalCurrentGraphicsContext.mm
+ LocalizedStringsMac.mm
+ LoggingMac.mm
+ MIMETypeRegistryMac.mm
+ PasteboardHelper.h
+ PasteboardMac.mm
+ PlatformMouseEventMac.mm
+ PlatformScreenMac.mm
+ PopupMenuMac.mm
+ PurgeableBufferMac.cpp
+ RuntimeApplicationChecks.h
+ RuntimeApplicationChecks.mm
+ SchedulePairMac.mm
+ ScrollbarThemeMac.h
+ ScrollbarThemeMac.mm
+ ScrollViewMac.mm
+ SearchPopupMenuMac.mm
+ SharedBufferMac.mm
+ SharedTimerMac.mm
+ SoftLinking.h
+ SoundMac.mm
+ SSLKeyGeneratorMac.mm
+ SuddenTermination.mm
+ SystemTimeMac.cpp
+ ThemeMac.h
+ ThemeMac.mm
+ ThreadCheck.mm
+ WebCoreKeyGenerator.h
+ WebCoreKeyGenerator.m
+ WebCoreNSStringExtras.h
+ WebCoreNSStringExtras.mm
+ WebCoreObjCExtras.h
+ WebCoreObjCExtras.mm
+ WebCoreSystemInterface.h
+ WebCoreSystemInterface.mm
+ WebCoreView.h
+ WebCoreView.m
+ WebFontCache.h
+ WebFontCache.mm
+ WheelEventMac.mm
+ WidgetMac.mm
+2 MIMETypeRegistry.cpp
+ MIMETypeRegistry.h
+ mock/
+0 GeolocationServiceMock.cpp
+ GeolocationServiceMock.h
+2 network/
+0 AuthenticationChallengeBase.cpp
+ AuthenticationChallengeBase.h
+ Credential.cpp
+ Credential.h
+ CredentialStorage.cpp
+ CredentialStorage.h
+ DNS.h
+ FormDataBuilder.cpp
+ FormDataBuilder.h
+ FormData.cpp
+ FormData.h
+ HTTPHeaderMap.cpp
+ HTTPHeaderMap.h
+ HTTPParsers.cpp
+ HTTPParsers.h
+ NetworkStateNotifier.cpp
+ NetworkStateNotifier.h
+ ProtectionSpace.cpp
+ ProtectionSpace.h
+ ProtectionSpaceHash.h
+ qt/
+0 AuthenticationChallenge.h
+ DnsPrefetchHelper.cpp
+ DnsPrefetchHelper.h
+ QNetworkReplyHandler.cpp
+ QNetworkReplyHandler.h
+ ResourceError.h
+ ResourceHandleQt.cpp
+ ResourceRequest.h
+ ResourceRequestQt.cpp
+ ResourceResponse.h
+ SocketStreamError.h
+ SocketStreamHandle.h
+ SocketStreamHandleSoup.cpp
+2 ResourceErrorBase.cpp
+ ResourceErrorBase.h
+ ResourceHandleClient.h
+ ResourceHandle.cpp
+ ResourceHandle.h
+ ResourceHandleInternal.h
+ ResourceRequestBase.cpp
+ ResourceRequestBase.h
+ ResourceResponseBase.cpp
+ ResourceResponseBase.h
+ SocketStreamErrorBase.cpp
+ SocketStreamErrorBase.h
+ SocketStreamHandleBase.cpp
+ SocketStreamHandleBase.h
+ SocketStreamHandleClient.h
+2 NotImplemented.h
+ Pasteboard.h
+ PlatformKeyboardEvent.h
+ PlatformMenuDescription.h
+ PlatformMouseEvent.h
+ PlatformScreen.h
+ PlatformWheelEvent.h
+ PopupMenuClient.h
+ PopupMenu.h
+ PopupMenuStyle.h
+ posix/
+0 FileSystemPOSIX.cpp
+2 PurgeableBuffer.h
+ qt/
+0 ClipboardQt.cpp
+ ClipboardQt.h
+ ContextMenuItemQt.cpp
+ ContextMenuQt.cpp
+ CookieJarQt.cpp
+ CursorQt.cpp
+ DragDataQt.cpp
+ DragImageQt.cpp
+ EventLoopQt.cpp
+ FileChooserQt.cpp
+ FileSystemQt.cpp
+ KURLQt.cpp
+ Localizations.cpp
+ LoggingQt.cpp
+ MIMETypeRegistryQt.cpp
+ PasteboardQt.cpp
+ PlatformKeyboardEventQt.cpp
+ PlatformMouseEventQt.cpp
+ PlatformScreenQt.cpp
+ PopupMenuQt.cpp
+ QWebPageClient.h
+ QWebPopup.cpp
+ QWebPopup.h
+ RenderThemeQt.cpp
+ RenderThemeQt.h
+ ScreenQt.cpp
+ ScrollbarQt.cpp
+ ScrollbarThemeQt.cpp
+ ScrollbarThemeQt.h
+ ScrollViewQt.cpp
+ SearchPopupMenuQt.cpp
+ SharedBufferQt.cpp
+ SharedTimerQt.cpp
+ SoundQt.cpp
+ TemporaryLinkStubs.cpp
+ WheelEventQt.cpp
+ WidgetQt.cpp
+2 RunLoopTimer.h
+ ScrollbarClient.h
+ Scrollbar.cpp
+ Scrollbar.h
+ ScrollbarThemeComposite.cpp
+ ScrollbarThemeComposite.h
+ ScrollbarTheme.h
+ ScrollTypes.h
+ ScrollView.cpp
+ ScrollView.h
+ SearchPopupMenu.h
+ SharedBuffer.cpp
+ SharedBuffer.h
+ SharedTimer.h
+ Sound.h
+ sql/
+0 SQLiteAuthorizer.cpp
+ SQLiteDatabase.cpp
+ SQLiteDatabase.h
+ SQLiteFileSystem.cpp
+ SQLiteFileSystem.h
+ SQLiteStatement.cpp
+ SQLiteStatement.h
+ SQLiteTransaction.cpp
+ SQLiteTransaction.h
+ SQLValue.cpp
+ SQLValue.h
+2 SSLKeyGenerator.h
+ StaticConstructors.h
+ SuddenTermination.h
+ SystemTime.h
+ text/
+0 android/
+0 TextBreakIteratorInternalICU.cpp
+2 AtomicString.cpp
+ AtomicString.h
+ AtomicStringHash.h
+ AtomicStringImpl.h
+ Base64.cpp
+ Base64.h
+ BidiContext.cpp
+ BidiContext.h
+ BidiResolver.h
+ cf/
+0 StringCF.cpp
+ StringImplCF.cpp
+2 CharacterNames.h
+ CString.cpp
+ CString.h
+ mac/
+0 character-sets.txt
+ CharsetData.h
+ mac-encodings.txt
+ make-charset-table.pl
+ ShapeArabic.c
+ ShapeArabic.h
+ StringImplMac.mm
+ StringMac.mm
+ TextBoundaries.mm
+ TextBreakIteratorInternalICUMac.mm
+ TextCodecMac.cpp
+ TextCodecMac.h
+2 ParserUtilities.h
+ PlatformString.h
+ qt/
+0 StringQt.cpp
+ TextBoundaries.cpp
+ TextBreakIteratorQt.cpp
+ TextCodecQt.cpp
+ TextCodecQt.h
+2 RegularExpression.cpp
+ RegularExpression.h
+ SegmentedString.cpp
+ SegmentedString.h
+ StringBuffer.h
+ StringBuilder.cpp
+ StringBuilder.h
+ String.cpp
+ StringHash.h
+ StringImpl.cpp
+ StringImpl.h
+ TextBoundaries.h
+ TextBoundariesICU.cpp
+ TextBreakIterator.h
+ TextBreakIteratorICU.cpp
+ TextBreakIteratorInternalICU.h
+ TextCodec.cpp
+ TextCodec.h
+ TextCodecICU.cpp
+ TextCodecICU.h
+ TextCodecLatin1.cpp
+ TextCodecLatin1.h
+ TextCodecUserDefined.cpp
+ TextCodecUserDefined.h
+ TextCodecUTF16.cpp
+ TextCodecUTF16.h
+ TextDirection.h
+ TextEncoding.cpp
+ TextEncodingDetector.h
+ TextEncodingDetectorICU.cpp
+ TextEncodingDetectorNone.cpp
+ TextEncoding.h
+ TextEncodingRegistry.cpp
+ TextEncodingRegistry.h
+ TextStream.cpp
+ TextStream.h
+ UnicodeRange.cpp
+ UnicodeRange.h
+ win/
+0 TextBreakIteratorInternalICUWin.cpp
+3 Theme.cpp
+ Theme.h
+ ThemeTypes.h
+ ThreadCheck.h
+ ThreadGlobalData.cpp
+ ThreadGlobalData.h
+ ThreadTimers.cpp
+ ThreadTimers.h
+ Timer.cpp
+ Timer.h
+ TreeShared.h
+ Widget.cpp
+ Widget.h
+ win/
+0 BitmapInfo.cpp
+ BitmapInfo.h
+ SystemTimeWin.cpp
+3 plugins/
+0 mac/
+0 PluginDataMac.mm
+ PluginPackageMac.cpp
+ PluginViewMac.cpp
+2 MimeTypeArray.cpp
+ MimeTypeArray.h
+ MimeTypeArray.idl
+ MimeType.cpp
+ MimeType.h
+ MimeType.idl
+ npapi.cpp
+ npfunctions.h
+ PluginArray.cpp
+ PluginArray.h
+ PluginArray.idl
+ Plugin.cpp
+ PluginDatabaseClient.h
+ PluginDatabase.cpp
+ PluginDatabase.h
+ PluginData.cpp
+ PluginData.h
+ PluginDataNone.cpp
+ PluginDebug.cpp
+ PluginDebug.h
+ Plugin.h
+ Plugin.idl
+ PluginInfoStore.cpp
+ PluginInfoStore.h
+ PluginMainThreadScheduler.cpp
+ PluginMainThreadScheduler.h
+ PluginPackage.cpp
+ PluginPackage.h
+ PluginPackageNone.cpp
+ PluginQuirkSet.h
+ PluginStream.cpp
+ PluginStream.h
+ PluginView.cpp
+ PluginView.h
+ PluginViewNone.cpp
+ qt/
+0 PluginContainerQt.cpp
+ PluginContainerQt.h
+ PluginDataQt.cpp
+ PluginPackageQt.cpp
+ PluginViewQt.cpp
+2 symbian/
+0 npinterface.h
+ PluginContainerSymbian.cpp
+ PluginContainerSymbian.h
+ PluginDatabaseSymbian.cpp
+ PluginPackageSymbian.cpp
+ PluginViewSymbian.cpp
+2 win/
+0 PaintHooks.asm
+ PluginDatabaseWin.cpp
+ PluginDataWin.cpp
+ PluginMessageThrottlerWin.cpp
+ PluginMessageThrottlerWin.h
+ PluginPackageWin.cpp
+ PluginViewWin.cpp
+3 rendering/
+0 AutoTableLayout.cpp
+ AutoTableLayout.h
+ break_lines.cpp
+ break_lines.h
+ CounterNode.cpp
+ CounterNode.h
+ EllipsisBox.cpp
+ EllipsisBox.h
+ FixedTableLayout.cpp
+ FixedTableLayout.h
+ GapRects.h
+ HitTestRequest.h
+ HitTestResult.cpp
+ HitTestResult.h
+ InlineBox.cpp
+ InlineBox.h
+ InlineFlowBox.cpp
+ InlineFlowBox.h
+ InlineRunBox.h
+ InlineTextBox.cpp
+ InlineTextBox.h
+ LayoutState.cpp
+ LayoutState.h
+ MediaControlElements.cpp
+ MediaControlElements.h
+ OverlapTestRequestClient.h
+ PointerEventsHitRules.cpp
+ PointerEventsHitRules.h
+ RenderApplet.cpp
+ RenderApplet.h
+ RenderArena.cpp
+ RenderArena.h
+ RenderBlock.cpp
+ RenderBlock.h
+ RenderBlockLineLayout.cpp
+ RenderBox.cpp
+ RenderBox.h
+ RenderBoxModelObject.cpp
+ RenderBoxModelObject.h
+ RenderBR.cpp
+ RenderBR.h
+ RenderButton.cpp
+ RenderButton.h
+ RenderCounter.cpp
+ RenderCounter.h
+ RenderDataGrid.cpp
+ RenderDataGrid.h
+ RenderFieldset.cpp
+ RenderFieldset.h
+ RenderFileUploadControl.cpp
+ RenderFileUploadControl.h
+ RenderFlexibleBox.cpp
+ RenderFlexibleBox.h
+ RenderForeignObject.cpp
+ RenderForeignObject.h
+ RenderFrame.cpp
+ RenderFrame.h
+ RenderFrameSet.cpp
+ RenderFrameSet.h
+ RenderHTMLCanvas.cpp
+ RenderHTMLCanvas.h
+ RenderImage.cpp
+ RenderImageGeneratedContent.cpp
+ RenderImageGeneratedContent.h
+ RenderImage.h
+ RenderInline.cpp
+ RenderInline.h
+ RenderLayerBacking.cpp
+ RenderLayerBacking.h
+ RenderLayerCompositor.cpp
+ RenderLayerCompositor.h
+ RenderLayer.cpp
+ RenderLayer.h
+ RenderLineBoxList.cpp
+ RenderLineBoxList.h
+ RenderListBox.cpp
+ RenderListBox.h
+ RenderListItem.cpp
+ RenderListItem.h
+ RenderListMarker.cpp
+ RenderListMarker.h
+ RenderMarquee.cpp
+ RenderMarquee.h
+ RenderMediaControlsChromium.cpp
+ RenderMediaControlsChromium.h
+ RenderMediaControls.cpp
+ RenderMediaControls.h
+ RenderMedia.cpp
+ RenderMedia.h
+ RenderMenuList.cpp
+ RenderMenuList.h
+ RenderObjectChildList.cpp
+ RenderObjectChildList.h
+ RenderObject.cpp
+ RenderObject.h
+ RenderOverflow.h
+ RenderPart.cpp
+ RenderPart.h
+ RenderPartObject.cpp
+ RenderPartObject.h
+ RenderPath.cpp
+ RenderPath.h
+ RenderReplaced.cpp
+ RenderReplaced.h
+ RenderReplica.cpp
+ RenderReplica.h
+ RenderScrollbar.cpp
+ RenderScrollbar.h
+ RenderScrollbarPart.cpp
+ RenderScrollbarPart.h
+ RenderScrollbarTheme.cpp
+ RenderScrollbarTheme.h
+ RenderSelectionInfo.h
+ RenderSlider.cpp
+ RenderSlider.h
+ RenderSVGBlock.cpp
+ RenderSVGBlock.h
+ RenderSVGContainer.cpp
+ RenderSVGContainer.h
+ RenderSVGGradientStop.cpp
+ RenderSVGGradientStop.h
+ RenderSVGHiddenContainer.cpp
+ RenderSVGHiddenContainer.h
+ RenderSVGImage.cpp
+ RenderSVGImage.h
+ RenderSVGInline.cpp
+ RenderSVGInline.h
+ RenderSVGInlineText.cpp
+ RenderSVGInlineText.h
+ RenderSVGModelObject.cpp
+ RenderSVGModelObject.h
+ RenderSVGRoot.cpp
+ RenderSVGRoot.h
+ RenderSVGText.cpp
+ RenderSVGText.h
+ RenderSVGTextPath.cpp
+ RenderSVGTextPath.h
+ RenderSVGTransformableContainer.cpp
+ RenderSVGTransformableContainer.h
+ RenderSVGTSpan.cpp
+ RenderSVGTSpan.h
+ RenderSVGViewportContainer.cpp
+ RenderSVGViewportContainer.h
+ RenderTableCell.cpp
+ RenderTableCell.h
+ RenderTableCol.cpp
+ RenderTableCol.h
+ RenderTable.cpp
+ RenderTable.h
+ RenderTableRow.cpp
+ RenderTableRow.h
+ RenderTableSection.cpp
+ RenderTableSection.h
+ RenderTextControl.cpp
+ RenderTextControl.h
+ RenderTextControlMultiLine.cpp
+ RenderTextControlMultiLine.h
+ RenderTextControlSingleLine.cpp
+ RenderTextControlSingleLine.h
+ RenderText.cpp
+ RenderTextFragment.cpp
+ RenderTextFragment.h
+ RenderText.h
+ RenderThemeChromiumLinux.cpp
+ RenderThemeChromiumLinux.h
+ RenderThemeChromiumMac.h
+ RenderThemeChromiumMac.mm
+ RenderThemeChromiumSkia.cpp
+ RenderThemeChromiumSkia.h
+ RenderThemeChromiumWin.cpp
+ RenderThemeChromiumWin.h
+ RenderTheme.cpp
+ RenderTheme.h
+ RenderThemeMac.h
+ RenderThemeSafari.cpp
+ RenderThemeSafari.h
+ RenderThemeWince.cpp
+ RenderThemeWince.h
+ RenderThemeWin.cpp
+ RenderThemeWin.h
+ RenderTreeAsText.cpp
+ RenderTreeAsText.h
+ RenderVideo.cpp
+ RenderVideo.h
+ RenderView.cpp
+ RenderView.h
+ RenderWidget.cpp
+ RenderWidget.h
+ RenderWidgetProtector.h
+ RenderWordBreak.cpp
+ RenderWordBreak.h
+ RootInlineBox.cpp
+ RootInlineBox.h
+ ScrollBehavior.cpp
+ ScrollBehavior.h
+ style/
+0 BindingURI.cpp
+ BindingURI.h
+ BorderData.h
+ BorderValue.h
+ CollapsedBorderValue.h
+ ContentData.cpp
+ ContentData.h
+ CounterContent.h
+ CounterDirectives.cpp
+ CounterDirectives.h
+ CursorData.h
+ CursorList.h
+ DataRef.h
+ FillLayer.cpp
+ FillLayer.h
+ KeyframeList.cpp
+ KeyframeList.h
+ NinePieceImage.cpp
+ NinePieceImage.h
+ OutlineValue.h
+ RenderStyleConstants.h
+ RenderStyle.cpp
+ RenderStyle.h
+ ShadowData.cpp
+ ShadowData.h
+ StyleBackgroundData.cpp
+ StyleBackgroundData.h
+ StyleBoxData.cpp
+ StyleBoxData.h
+ StyleCachedImage.cpp
+ StyleCachedImage.h
+ StyleDashboardRegion.h
+ StyleFlexibleBoxData.cpp
+ StyleFlexibleBoxData.h
+ StyleGeneratedImage.cpp
+ StyleGeneratedImage.h
+ StyleImage.h
+ StyleInheritedData.cpp
+ StyleInheritedData.h
+ StyleMarqueeData.cpp
+ StyleMarqueeData.h
+ StyleMultiColData.cpp
+ StyleMultiColData.h
+ StyleRareInheritedData.cpp
+ StyleRareInheritedData.h
+ StyleRareNonInheritedData.cpp
+ StyleRareNonInheritedData.h
+ StyleReflection.h
+ StyleSurroundData.cpp
+ StyleSurroundData.h
+ StyleTransformData.cpp
+ StyleTransformData.h
+ StyleVisualData.cpp
+ StyleVisualData.h
+ SVGRenderStyle.cpp
+ SVGRenderStyleDefs.cpp
+ SVGRenderStyleDefs.h
+ SVGRenderStyle.h
+2 SVGCharacterLayoutInfo.cpp
+ SVGCharacterLayoutInfo.h
+ SVGInlineFlowBox.cpp
+ SVGInlineFlowBox.h
+ SVGInlineTextBox.cpp
+ SVGInlineTextBox.h
+ SVGRenderSupport.cpp
+ SVGRenderSupport.h
+ SVGRenderTreeAsText.cpp
+ SVGRenderTreeAsText.h
+ SVGRootInlineBox.cpp
+ SVGRootInlineBox.h
+ TableLayout.h
+ TextControlInnerElements.cpp
+ TextControlInnerElements.h
+ TransformState.cpp
+ TransformState.h
+2 Resources/
+0 aliasCursor.png
+ cellCursor.png
+ contextMenuCursor.png
+ copyCursor.png
+ crossHairCursor.png
+ deleteButton.png
+ deleteButtonPressed.png
+ deleteButtonPressed.tiff
+ deleteButton.tiff
+ eastResizeCursor.png
+ eastWestResizeCursor.png
+ helpCursor.png
+ linkCursor.png
+ missingImage.png
+ missingImage.tiff
+ moveCursor.png
+ noDropCursor.png
+ noneCursor.png
+ northEastResizeCursor.png
+ northEastSouthWestResizeCursor.png
+ northResizeCursor.png
+ northSouthResizeCursor.png
+ northWestResizeCursor.png
+ northWestSouthEastResizeCursor.png
+ notAllowedCursor.png
+ nullPlugin.png
+ panIcon.png
+ progressCursor.png
+ southEastResizeCursor.png
+ southResizeCursor.png
+ southWestResizeCursor.png
+ textAreaResizeCorner.png
+ textAreaResizeCorner.tiff
+ urlIcon.png
+ verticalTextCursor.png
+ waitCursor.png
+ westResizeCursor.png
+ zoomInCursor.png
+ zoomOutCursor.png
+2 storage/
+0 ChangeVersionWrapper.cpp
+ ChangeVersionWrapper.h
+ DatabaseAuthorizer.cpp
+ DatabaseAuthorizer.h
+ Database.cpp
+ DatabaseDetails.h
+ Database.h
+ Database.idl
+ DatabaseTask.cpp
+ DatabaseTask.h
+ DatabaseThread.cpp
+ DatabaseThread.h
+ DatabaseTrackerClient.h
+ DatabaseTracker.cpp
+ DatabaseTracker.h
+ LocalStorageTask.cpp
+ LocalStorageTask.h
+ LocalStorageThread.cpp
+ LocalStorageThread.h
+ OriginQuotaManager.cpp
+ OriginQuotaManager.h
+ OriginUsageRecord.cpp
+ OriginUsageRecord.h
+ SQLError.h
+ SQLError.idl
+ SQLResultSet.cpp
+ SQLResultSet.h
+ SQLResultSet.idl
+ SQLResultSetRowList.cpp
+ SQLResultSetRowList.h
+ SQLResultSetRowList.idl
+ SQLStatementCallback.h
+ SQLStatement.cpp
+ SQLStatementErrorCallback.h
+ SQLStatement.h
+ SQLTransactionCallback.h
+ SQLTransactionClient.cpp
+ SQLTransactionClient.h
+ SQLTransactionCoordinator.cpp
+ SQLTransactionCoordinator.h
+ SQLTransaction.cpp
+ SQLTransactionErrorCallback.h
+ SQLTransaction.h
+ SQLTransaction.idl
+ StorageArea.h
+ StorageAreaImpl.cpp
+ StorageAreaImpl.h
+ StorageAreaSync.cpp
+ StorageAreaSync.h
+ Storage.cpp
+ StorageEvent.cpp
+ StorageEventDispatcher.cpp
+ StorageEventDispatcher.h
+ StorageEvent.h
+ StorageEvent.idl
+ Storage.h
+ Storage.idl
+ StorageMap.cpp
+ StorageMap.h
+ StorageNamespace.cpp
+ StorageNamespace.h
+ StorageNamespaceImpl.cpp
+ StorageNamespaceImpl.h
+ StorageSyncManager.cpp
+ StorageSyncManager.h
+2 svg/
+0 animation/
+0 SMILTimeContainer.cpp
+ SMILTimeContainer.h
+ SMILTime.cpp
+ SMILTime.h
+ SVGSMILElement.cpp
+ SVGSMILElement.h
+2 ColorDistance.cpp
+ ColorDistance.h
+ ElementTimeControl.h
+ ElementTimeControl.idl
+ GradientAttributes.h
+ graphics/
+0 filters/
+0 SVGDistantLightSource.h
+ SVGFEConvolveMatrix.cpp
+ SVGFEConvolveMatrix.h
+ SVGFEDiffuseLighting.cpp
+ SVGFEDiffuseLighting.h
+ SVGFEDisplacementMap.cpp
+ SVGFEDisplacementMap.h
+ SVGFEFlood.cpp
+ SVGFEFlood.h
+ SVGFEImage.cpp
+ SVGFEImage.h
+ SVGFEMerge.cpp
+ SVGFEMerge.h
+ SVGFEMorphology.cpp
+ SVGFEMorphology.h
+ SVGFEOffset.cpp
+ SVGFEOffset.h
+ SVGFESpecularLighting.cpp
+ SVGFESpecularLighting.h
+ SVGFETile.cpp
+ SVGFETile.h
+ SVGFETurbulence.cpp
+ SVGFETurbulence.h
+ SVGFilterBuilder.cpp
+ SVGFilterBuilder.h
+ SVGFilter.cpp
+ SVGFilter.h
+ SVGLightSource.cpp
+ SVGLightSource.h
+ SVGPointLightSource.h
+ SVGSpotLightSource.h
+2 SVGImage.cpp
+ SVGImage.h
+ SVGPaintServer.cpp
+ SVGPaintServerGradient.cpp
+ SVGPaintServerGradient.h
+ SVGPaintServer.h
+ SVGPaintServerLinearGradient.cpp
+ SVGPaintServerLinearGradient.h
+ SVGPaintServerPattern.cpp
+ SVGPaintServerPattern.h
+ SVGPaintServerRadialGradient.cpp
+ SVGPaintServerRadialGradient.h
+ SVGPaintServerSolid.cpp
+ SVGPaintServerSolid.h
+ SVGResourceClipper.cpp
+ SVGResourceClipper.h
+ SVGResource.cpp
+ SVGResourceFilter.cpp
+ SVGResourceFilter.h
+ SVGResource.h
+ SVGResourceListener.h
+ SVGResourceMarker.cpp
+ SVGResourceMarker.h
+ SVGResourceMasker.cpp
+ SVGResourceMasker.h
+2 LinearGradientAttributes.h
+ PatternAttributes.h
+ RadialGradientAttributes.h
+ SVGAElement.cpp
+ SVGAElement.h
+ SVGAElement.idl
+ SVGAllInOne.cpp
+ SVGAltGlyphElement.cpp
+ SVGAltGlyphElement.h
+ SVGAltGlyphElement.idl
+ SVGAngle.cpp
+ SVGAngle.h
+ SVGAngle.idl
+ SVGAnimateColorElement.cpp
+ SVGAnimateColorElement.h
+ SVGAnimateColorElement.idl
+ SVGAnimatedAngle.idl
+ SVGAnimatedBoolean.idl
+ SVGAnimatedEnumeration.idl
+ SVGAnimatedInteger.idl
+ SVGAnimatedLength.idl
+ SVGAnimatedLengthList.idl
+ SVGAnimatedNumber.idl
+ SVGAnimatedNumberList.idl
+ SVGAnimatedPathData.cpp
+ SVGAnimatedPathData.h
+ SVGAnimatedPathData.idl
+ SVGAnimatedPoints.cpp
+ SVGAnimatedPoints.h
+ SVGAnimatedPoints.idl
+ SVGAnimatedPreserveAspectRatio.idl
+ SVGAnimatedProperty.h
+ SVGAnimatedRect.idl
+ SVGAnimatedString.idl
+ SVGAnimatedTemplate.h
+ SVGAnimatedTransformList.idl
+ SVGAnimateElement.cpp
+ SVGAnimateElement.h
+ SVGAnimateElement.idl
+ SVGAnimateMotionElement.cpp
+ SVGAnimateMotionElement.h
+ SVGAnimateTransformElement.cpp
+ SVGAnimateTransformElement.h
+ SVGAnimateTransformElement.idl
+ SVGAnimationElement.cpp
+ SVGAnimationElement.h
+ SVGAnimationElement.idl
+ svgattrs.in
+ SVGCircleElement.cpp
+ SVGCircleElement.h
+ SVGCircleElement.idl
+ SVGClipPathElement.cpp
+ SVGClipPathElement.h
+ SVGClipPathElement.idl
+ SVGColor.cpp
+ SVGColor.h
+ SVGColor.idl
+ SVGComponentTransferFunctionElement.cpp
+ SVGComponentTransferFunctionElement.h
+ SVGComponentTransferFunctionElement.idl
+ SVGCursorElement.cpp
+ SVGCursorElement.h
+ SVGCursorElement.idl
+ SVGDefsElement.cpp
+ SVGDefsElement.h
+ SVGDefsElement.idl
+ SVGDescElement.cpp
+ SVGDescElement.h
+ SVGDescElement.idl
+ SVGDocument.cpp
+ SVGDocumentExtensions.cpp
+ SVGDocumentExtensions.h
+ SVGDocument.h
+ SVGDocument.idl
+ SVGElement.cpp
+ SVGElement.h
+ SVGElement.idl
+ SVGElementInstance.cpp
+ SVGElementInstance.h
+ SVGElementInstance.idl
+ SVGElementInstanceList.cpp
+ SVGElementInstanceList.h
+ SVGElementInstanceList.idl
+ SVGEllipseElement.cpp
+ SVGEllipseElement.h
+ SVGEllipseElement.idl
+ SVGException.h
+ SVGException.idl
+ SVGExternalResourcesRequired.cpp
+ SVGExternalResourcesRequired.h
+ SVGExternalResourcesRequired.idl
+ SVGFEBlendElement.cpp
+ SVGFEBlendElement.h
+ SVGFEBlendElement.idl
+ SVGFEColorMatrixElement.cpp
+ SVGFEColorMatrixElement.h
+ SVGFEColorMatrixElement.idl
+ SVGFEComponentTransferElement.cpp
+ SVGFEComponentTransferElement.h
+ SVGFEComponentTransferElement.idl
+ SVGFECompositeElement.cpp
+ SVGFECompositeElement.h
+ SVGFECompositeElement.idl
+ SVGFEDiffuseLightingElement.cpp
+ SVGFEDiffuseLightingElement.h
+ SVGFEDiffuseLightingElement.idl
+ SVGFEDisplacementMapElement.cpp
+ SVGFEDisplacementMapElement.h
+ SVGFEDisplacementMapElement.idl
+ SVGFEDistantLightElement.cpp
+ SVGFEDistantLightElement.h
+ SVGFEDistantLightElement.idl
+ SVGFEFloodElement.cpp
+ SVGFEFloodElement.h
+ SVGFEFloodElement.idl
+ SVGFEFuncAElement.cpp
+ SVGFEFuncAElement.h
+ SVGFEFuncAElement.idl
+ SVGFEFuncBElement.cpp
+ SVGFEFuncBElement.h
+ SVGFEFuncBElement.idl
+ SVGFEFuncGElement.cpp
+ SVGFEFuncGElement.h
+ SVGFEFuncGElement.idl
+ SVGFEFuncRElement.cpp
+ SVGFEFuncRElement.h
+ SVGFEFuncRElement.idl
+ SVGFEGaussianBlurElement.cpp
+ SVGFEGaussianBlurElement.h
+ SVGFEGaussianBlurElement.idl
+ SVGFEImageElement.cpp
+ SVGFEImageElement.h
+ SVGFEImageElement.idl
+ SVGFELightElement.cpp
+ SVGFELightElement.h
+ SVGFEMergeElement.cpp
+ SVGFEMergeElement.h
+ SVGFEMergeElement.idl
+ SVGFEMergeNodeElement.cpp
+ SVGFEMergeNodeElement.h
+ SVGFEMergeNodeElement.idl
+ SVGFEMorphologyElement.cpp
+ SVGFEMorphologyElement.h
+ SVGFEMorphologyElement.idl
+ SVGFEOffsetElement.cpp
+ SVGFEOffsetElement.h
+ SVGFEOffsetElement.idl
+ SVGFEPointLightElement.cpp
+ SVGFEPointLightElement.h
+ SVGFEPointLightElement.idl
+ SVGFESpecularLightingElement.cpp
+ SVGFESpecularLightingElement.h
+ SVGFESpecularLightingElement.idl
+ SVGFESpotLightElement.cpp
+ SVGFESpotLightElement.h
+ SVGFESpotLightElement.idl
+ SVGFETileElement.cpp
+ SVGFETileElement.h
+ SVGFETileElement.idl
+ SVGFETurbulenceElement.cpp
+ SVGFETurbulenceElement.h
+ SVGFETurbulenceElement.idl
+ SVGFilterElement.cpp
+ SVGFilterElement.h
+ SVGFilterElement.idl
+ SVGFilterPrimitiveStandardAttributes.cpp
+ SVGFilterPrimitiveStandardAttributes.h
+ SVGFilterPrimitiveStandardAttributes.idl
+ SVGFitToViewBox.cpp
+ SVGFitToViewBox.h
+ SVGFitToViewBox.idl
+ SVGFont.cpp
+ SVGFontData.cpp
+ SVGFontData.h
+ SVGFontElement.cpp
+ SVGFontElement.h
+ SVGFontElement.idl
+ SVGFontFaceElement.cpp
+ SVGFontFaceElement.h
+ SVGFontFaceElement.idl
+ SVGFontFaceFormatElement.cpp
+ SVGFontFaceFormatElement.h
+ SVGFontFaceFormatElement.idl
+ SVGFontFaceNameElement.cpp
+ SVGFontFaceNameElement.h
+ SVGFontFaceNameElement.idl
+ SVGFontFaceSrcElement.cpp
+ SVGFontFaceSrcElement.h
+ SVGFontFaceSrcElement.idl
+ SVGFontFaceUriElement.cpp
+ SVGFontFaceUriElement.h
+ SVGFontFaceUriElement.idl
+ SVGForeignObjectElement.cpp
+ SVGForeignObjectElement.h
+ SVGForeignObjectElement.idl
+ SVGGElement.cpp
+ SVGGElement.h
+ SVGGElement.idl
+ SVGGlyphElement.cpp
+ SVGGlyphElement.h
+ SVGGlyphElement.idl
+ SVGGlyphMap.h
+ SVGGradientElement.cpp
+ SVGGradientElement.h
+ SVGGradientElement.idl
+ SVGHKernElement.cpp
+ SVGHKernElement.h
+ SVGHKernElement.idl
+ SVGImageElement.cpp
+ SVGImageElement.h
+ SVGImageElement.idl
+ SVGImageLoader.cpp
+ SVGImageLoader.h
+ SVGLangSpace.cpp
+ SVGLangSpace.h
+ SVGLangSpace.idl
+ SVGLength.cpp
+ SVGLength.h
+ SVGLength.idl
+ SVGLengthList.cpp
+ SVGLengthList.h
+ SVGLengthList.idl
+ SVGLinearGradientElement.cpp
+ SVGLinearGradientElement.h
+ SVGLinearGradientElement.idl
+ SVGLineElement.cpp
+ SVGLineElement.h
+ SVGLineElement.idl
+ SVGList.h
+ SVGListTraits.h
+ SVGLocatable.cpp
+ SVGLocatable.h
+ SVGLocatable.idl
+ SVGMarkerElement.cpp
+ SVGMarkerElement.h
+ SVGMarkerElement.idl
+ SVGMaskElement.cpp
+ SVGMaskElement.h
+ SVGMaskElement.idl
+ SVGMatrix.idl
+ SVGMetadataElement.cpp
+ SVGMetadataElement.h
+ SVGMetadataElement.idl
+ SVGMissingGlyphElement.cpp
+ SVGMissingGlyphElement.h
+ SVGMissingGlyphElement.idl
+ SVGMPathElement.cpp
+ SVGMPathElement.h
+ SVGNumber.idl
+ SVGNumberList.cpp
+ SVGNumberList.h
+ SVGNumberList.idl
+ SVGPaint.cpp
+ SVGPaint.h
+ SVGPaint.idl
+ SVGParserUtilities.cpp
+ SVGParserUtilities.h
+ SVGPathElement.cpp
+ SVGPathElement.h
+ SVGPathElement.idl
+ SVGPathSegArcAbs.idl
+ SVGPathSegArc.cpp
+ SVGPathSegArc.h
+ SVGPathSegArcRel.idl
+ SVGPathSegClosePath.cpp
+ SVGPathSegClosePath.h
+ SVGPathSegClosePath.idl
+ SVGPathSegCurvetoCubicAbs.idl
+ SVGPathSegCurvetoCubic.cpp
+ SVGPathSegCurvetoCubic.h
+ SVGPathSegCurvetoCubicRel.idl
+ SVGPathSegCurvetoCubicSmoothAbs.idl
+ SVGPathSegCurvetoCubicSmooth.cpp
+ SVGPathSegCurvetoCubicSmooth.h
+ SVGPathSegCurvetoCubicSmoothRel.idl
+ SVGPathSegCurvetoQuadraticAbs.idl
+ SVGPathSegCurvetoQuadratic.cpp
+ SVGPathSegCurvetoQuadratic.h
+ SVGPathSegCurvetoQuadraticRel.idl
+ SVGPathSegCurvetoQuadraticSmoothAbs.idl
+ SVGPathSegCurvetoQuadraticSmooth.cpp
+ SVGPathSegCurvetoQuadraticSmooth.h
+ SVGPathSegCurvetoQuadraticSmoothRel.idl
+ SVGPathSeg.h
+ SVGPathSeg.idl
+ SVGPathSegLinetoAbs.idl
+ SVGPathSegLineto.cpp
+ SVGPathSegLineto.h
+ SVGPathSegLinetoHorizontalAbs.idl
+ SVGPathSegLinetoHorizontal.cpp
+ SVGPathSegLinetoHorizontal.h
+ SVGPathSegLinetoHorizontalRel.idl
+ SVGPathSegLinetoRel.idl
+ SVGPathSegLinetoVerticalAbs.idl
+ SVGPathSegLinetoVertical.cpp
+ SVGPathSegLinetoVertical.h
+ SVGPathSegLinetoVerticalRel.idl
+ SVGPathSegList.cpp
+ SVGPathSegList.h
+ SVGPathSegList.idl
+ SVGPathSegMovetoAbs.idl
+ SVGPathSegMoveto.cpp
+ SVGPathSegMoveto.h
+ SVGPathSegMovetoRel.idl
+ SVGPatternElement.cpp
+ SVGPatternElement.h
+ SVGPatternElement.idl
+ SVGPoint.idl
+ SVGPointList.cpp
+ SVGPointList.h
+ SVGPointList.idl
+ SVGPolyElement.cpp
+ SVGPolyElement.h
+ SVGPolygonElement.cpp
+ SVGPolygonElement.h
+ SVGPolygonElement.idl
+ SVGPolylineElement.cpp
+ SVGPolylineElement.h
+ SVGPolylineElement.idl
+ SVGPreserveAspectRatio.cpp
+ SVGPreserveAspectRatio.h
+ SVGPreserveAspectRatio.idl
+ SVGRadialGradientElement.cpp
+ SVGRadialGradientElement.h
+ SVGRadialGradientElement.idl
+ SVGRectElement.cpp
+ SVGRectElement.h
+ SVGRectElement.idl
+ SVGRect.idl
+ SVGRenderingIntent.h
+ SVGRenderingIntent.idl
+ SVGScriptElement.cpp
+ SVGScriptElement.h
+ SVGScriptElement.idl
+ SVGSetElement.cpp
+ SVGSetElement.h
+ SVGSetElement.idl
+ SVGStopElement.cpp
+ SVGStopElement.h
+ SVGStopElement.idl
+ SVGStringList.cpp
+ SVGStringList.h
+ SVGStringList.idl
+ SVGStylable.cpp
+ SVGStylable.h
+ SVGStylable.idl
+ SVGStyledElement.cpp
+ SVGStyledElement.h
+ SVGStyledLocatableElement.cpp
+ SVGStyledLocatableElement.h
+ SVGStyledTransformableElement.cpp
+ SVGStyledTransformableElement.h
+ SVGStyleElement.cpp
+ SVGStyleElement.h
+ SVGStyleElement.idl
+ SVGSVGElement.cpp
+ SVGSVGElement.h
+ SVGSVGElement.idl
+ SVGSwitchElement.cpp
+ SVGSwitchElement.h
+ SVGSwitchElement.idl
+ SVGSymbolElement.cpp
+ SVGSymbolElement.h
+ SVGSymbolElement.idl
+ svgtags.in
+ SVGTests.cpp
+ SVGTests.h
+ SVGTests.idl
+ SVGTextContentElement.cpp
+ SVGTextContentElement.h
+ SVGTextContentElement.idl
+ SVGTextElement.cpp
+ SVGTextElement.h
+ SVGTextElement.idl
+ SVGTextPathElement.cpp
+ SVGTextPathElement.h
+ SVGTextPathElement.idl
+ SVGTextPositioningElement.cpp
+ SVGTextPositioningElement.h
+ SVGTextPositioningElement.idl
+ SVGTitleElement.cpp
+ SVGTitleElement.h
+ SVGTitleElement.idl
+ SVGTransformable.cpp
+ SVGTransformable.h
+ SVGTransformable.idl
+ SVGTransform.cpp
+ SVGTransformDistance.cpp
+ SVGTransformDistance.h
+ SVGTransform.h
+ SVGTransform.idl
+ SVGTransformList.cpp
+ SVGTransformList.h
+ SVGTransformList.idl
+ SVGTRefElement.cpp
+ SVGTRefElement.h
+ SVGTRefElement.idl
+ SVGTSpanElement.cpp
+ SVGTSpanElement.h
+ SVGTSpanElement.idl
+ SVGUnitTypes.h
+ SVGUnitTypes.idl
+ SVGURIReference.cpp
+ SVGURIReference.h
+ SVGURIReference.idl
+ SVGUseElement.cpp
+ SVGUseElement.h
+ SVGUseElement.idl
+ SVGViewElement.cpp
+ SVGViewElement.h
+ SVGViewElement.idl
+ SVGViewSpec.cpp
+ SVGViewSpec.h
+ SVGViewSpec.idl
+ SVGZoomAndPan.cpp
+ SVGZoomAndPan.h
+ SVGZoomAndPan.idl
+ SVGZoomEvent.cpp
+ SVGZoomEvent.h
+ SVGZoomEvent.idl
+ SynchronizablePropertyController.cpp
+ SynchronizablePropertyController.h
+ SynchronizableTypeWrapper.h
+ xlinkattrs.in
+2 WebCore.3DRendering.exp
+ WebCore.DashboardSupport.exp
+ WebCore.gypi
+ WebCore.JNI.exp
+ WebCore.NPAPI.exp
+ WebCore.order
+ WebCorePrefix.cpp
+ WebCorePrefix.h
+ WebCore.pro
+ WebCore.qrc
+ WebCore.SVG.Animation.exp
+ WebCore.SVG.exp
+ WebCore.SVG.Filters.exp
+ WebCore.SVG.ForeignObject.exp
+ WebCore.Tiger.exp
+ WebCore.Video.exp
+ WebCore.VideoProxy.exp
+ websockets/
+0 WebSocketChannelClient.h
+ WebSocketChannel.cpp
+ WebSocketChannel.h
+ WebSocket.cpp
+ WebSocket.h
+ WebSocketHandshake.cpp
+ WebSocketHandshake.h
+ WebSocket.idl
+2 wml/
+0 WMLAccessElement.cpp
+ WMLAccessElement.h
+ WMLAElement.cpp
+ WMLAElement.h
+ WMLAnchorElement.cpp
+ WMLAnchorElement.h
+ WMLAttributeNames.in
+ WMLBRElement.cpp
+ WMLBRElement.h
+ WMLCardElement.cpp
+ WMLCardElement.h
+ WMLDocument.cpp
+ WMLDocument.h
+ WMLDoElement.cpp
+ WMLDoElement.h
+ WMLElement.cpp
+ WMLElement.h
+ WMLErrorHandling.cpp
+ WMLErrorHandling.h
+ WMLEventHandlingElement.cpp
+ WMLEventHandlingElement.h
+ WMLFieldSetElement.cpp
+ WMLFieldSetElement.h
+ WMLFormControlElement.cpp
+ WMLFormControlElement.h
+ WMLGoElement.cpp
+ WMLGoElement.h
+ WMLImageElement.cpp
+ WMLImageElement.h
+ WMLImageLoader.cpp
+ WMLImageLoader.h
+ WMLInputElement.cpp
+ WMLInputElement.h
+ WMLInsertedLegendElement.cpp
+ WMLInsertedLegendElement.h
+ WMLIntrinsicEvent.cpp
+ WMLIntrinsicEvent.h
+ WMLIntrinsicEventHandler.cpp
+ WMLIntrinsicEventHandler.h
+ WMLMetaElement.cpp
+ WMLMetaElement.h
+ WMLNoopElement.cpp
+ WMLNoopElement.h
+ WMLOnEventElement.cpp
+ WMLOnEventElement.h
+ WMLOptGroupElement.cpp
+ WMLOptGroupElement.h
+ WMLOptionElement.cpp
+ WMLOptionElement.h
+ WMLPageState.cpp
+ WMLPageState.h
+ WMLPElement.cpp
+ WMLPElement.h
+ WMLPostfieldElement.cpp
+ WMLPostfieldElement.h
+ WMLPrevElement.cpp
+ WMLPrevElement.h
+ WMLRefreshElement.cpp
+ WMLRefreshElement.h
+ WMLSelectElement.cpp
+ WMLSelectElement.h
+ WMLSetvarElement.cpp
+ WMLSetvarElement.h
+ WMLTableElement.cpp
+ WMLTableElement.h
+ WMLTagNames.in
+ WMLTaskElement.cpp
+ WMLTaskElement.h
+ WMLTemplateElement.cpp
+ WMLTemplateElement.h
+ WMLTimerElement.cpp
+ WMLTimerElement.h
+ WMLVariables.cpp
+ WMLVariables.h
+2 workers/
+0 AbstractWorker.cpp
+ AbstractWorker.h
+ AbstractWorker.idl
+ DedicatedWorkerContext.cpp
+ DedicatedWorkerContext.h
+ DedicatedWorkerContext.idl
+ DedicatedWorkerThread.cpp
+ DedicatedWorkerThread.h
+ DefaultSharedWorkerRepository.cpp
+ DefaultSharedWorkerRepository.h
+ GenericWorkerTask.h
+ SharedWorkerContext.cpp
+ SharedWorkerContext.h
+ SharedWorkerContext.idl
+ SharedWorker.cpp
+ SharedWorker.h
+ SharedWorker.idl
+ SharedWorkerRepository.h
+ SharedWorkerThread.cpp
+ SharedWorkerThread.h
+ WorkerContext.cpp
+ WorkerContext.h
+ WorkerContext.idl
+ WorkerContextProxy.h
+ Worker.cpp
+ Worker.h
+ Worker.idl
+ WorkerLoaderProxy.h
+ WorkerLocation.cpp
+ WorkerLocation.h
+ WorkerLocation.idl
+ WorkerMessagingProxy.cpp
+ WorkerMessagingProxy.h
+ WorkerObjectProxy.h
+ WorkerReportingProxy.h
+ WorkerRunLoop.cpp
+ WorkerRunLoop.h
+ WorkerScriptLoaderClient.h
+ WorkerScriptLoader.cpp
+ WorkerScriptLoader.h
+ WorkerThread.cpp
+ WorkerThread.h
+2 xml/
+0 DOMParser.cpp
+ DOMParser.h
+ DOMParser.idl
+ NativeXPathNSResolver.cpp
+ NativeXPathNSResolver.h
+ xmlattrs.in
+ XMLHttpRequest.cpp
+ XMLHttpRequestException.h
+ XMLHttpRequestException.idl
+ XMLHttpRequest.h
+ XMLHttpRequest.idl
+ XMLHttpRequestProgressEvent.h
+ XMLHttpRequestProgressEvent.idl
+ XMLHttpRequestUpload.cpp
+ XMLHttpRequestUpload.h
+ XMLHttpRequestUpload.idl
+ XMLSerializer.cpp
+ XMLSerializer.h
+ XMLSerializer.idl
+ XPathEvaluator.cpp
+ XPathEvaluator.h
+ XPathEvaluator.idl
+ XPathException.h
+ XPathException.idl
+ XPathExpression.cpp
+ XPathExpression.h
+ XPathExpression.idl
+ XPathExpressionNode.cpp
+ XPathExpressionNode.h
+ XPathFunctions.cpp
+ XPathFunctions.h
+ XPathGrammar.y
+ XPathNamespace.cpp
+ XPathNamespace.h
+ XPathNodeSet.cpp
+ XPathNodeSet.h
+ XPathNSResolver.cpp
+ XPathNSResolver.h
+ XPathNSResolver.idl
+ XPathParser.cpp
+ XPathParser.h
+ XPathPath.cpp
+ XPathPath.h
+ XPathPredicate.cpp
+ XPathPredicate.h
+ XPathResult.cpp
+ XPathResult.h
+ XPathResult.idl
+ XPathStep.cpp
+ XPathStep.h
+ XPathUtil.cpp
+ XPathUtil.h
+ XPathValue.cpp
+ XPathValue.h
+ XPathVariableReference.cpp
+ XPathVariableReference.h
+ XSLImportRule.cpp
+ XSLImportRule.h
+ XSLStyleSheet.h
+ XSLStyleSheetLibxslt.cpp
+ XSLStyleSheetQt.cpp
+ XSLTExtensions.cpp
+ XSLTExtensions.h
+ XSLTProcessor.cpp
+ XSLTProcessor.h
+ XSLTProcessor.idl
+ XSLTProcessorLibxslt.cpp
+ XSLTProcessorQt.cpp
+ XSLTUnicodeSort.cpp
+ XSLTUnicodeSort.h
+3 WebKit/
+0 ChangeLog
+ LICENSE
+ mac/
+0 Configurations/
+0 Version.xcconfig
+2 Workers/
+0 WebWorkersPrivate.h
+ WebWorkersPrivate.mm
+4 WebKit.pri
+ WebKit/qt/
+0 Api/
+0 headers.pri
+ qgraphicswebview.cpp
+ qgraphicswebview.h
+ qwebdatabase.cpp
+ qwebdatabase.h
+ qwebdatabase_p.h
+ qwebelement.cpp
+ qwebelement.h
+ qwebframe.cpp
+ qwebframe.h
+ qwebframe_p.h
+ qwebhistory.cpp
+ qwebhistory.h
+ qwebhistoryinterface.cpp
+ qwebhistoryinterface.h
+ qwebhistory_p.h
+ qwebinspector.cpp
+ qwebinspector.h
+ qwebinspector_p.h
+ qwebkitglobal.h
+ qwebkitversion.cpp
+ qwebkitversion.h
+ qwebpage.cpp
+ qwebpage.h
+ qwebpage_p.h
+ qwebplugindatabase.cpp
+ qwebplugindatabase_p.h
+ qwebpluginfactory.cpp
+ qwebpluginfactory.h
+ qwebsecurityorigin.cpp
+ qwebsecurityorigin.h
+ qwebsecurityorigin_p.h
+ qwebsettings.cpp
+ qwebsettings.h
+ qwebview.cpp
+ qwebview.h
+2 ChangeLog
+ docs/
+0 docs.pri
+ qtwebkit.qdoc
+0 conf
+2 qwebview-diagram.png
+ webkitsnippets/
+0 qtwebkit_build_snippet.qdoc
+ qtwebkit_qwebinspector_snippet.cpp
+ qtwebkit_qwebview_snippet.cpp
+ simple/
+0 main.cpp
+ simple.pro
+2 webelement/
+0 main.cpp
+ webelement.pro
+2 webpage/
+0 main.cpp
+ webpage.pro
+4 tests/
+0 benchmarks/
+0 loading/
+0 tst_loading.cpp
+ tst_loading.pro
+2 painting/
+0 tst_painting.cpp
+ tst_painting.pro
+3 qgraphicswebview/
+0 qgraphicswebview.pro
+ tst_qgraphicswebview.cpp
+2 qwebelement/
+0 image.png
+ qwebelement.pro
+ qwebelement.qrc
+ style2.css
+ style.css
+ tst_qwebelement.cpp
+2 qwebframe/
+0 image.png
+ qwebframe.pro
+ qwebframe.qrc
+ resources/
+0 image2.png
+2 style.css
+ test1.html
+ test2.html
+ tst_qwebframe.cpp
+2 qwebhistory/
+0 data/
+0 page1.html
+ page2.html
+ page3.html
+ page4.html
+ page5.html
+ page6.html
+3 qwebhistoryinterface/
+0 qwebhistoryinterface.pro
+ tst_qwebhistoryinterface.cpp
+2 qwebhistory/qwebhistory.pro
+ qwebhistory/tst_qwebhistory.cpp
+ qwebhistory/tst_qwebhistory.qrc
+ qwebpage/
+0 frametest/
+0 frame_a.html
+ iframe2.html
+ iframe3.html
+ iframe.html
+ index.html
+2 qwebpage.pro
+ tst_qwebpage.cpp
+ tst_qwebpage.qrc
+2 qwebplugindatabase/
+0 qwebplugindatabase.pro
+ tst_qwebplugindatabase.cpp
+2 qwebview/
+0 data/
+0 frame_a.html
+ index.html
+2 .gitignore
+ qwebview.pro
+ tst_qwebview.cpp
+ tst_qwebview.qrc
+2 resources/
+0 test.swf
+2 tests.pro
+ util.h
+2 WebCoreSupport/
+0 ChromeClientQt.cpp
+ ChromeClientQt.h
+ ContextMenuClientQt.cpp
+ ContextMenuClientQt.h
+ DragClientQt.cpp
+ DragClientQt.h
+ EditCommandQt.cpp
+ EditCommandQt.h
+ EditorClientQt.cpp
+ EditorClientQt.h
+ FrameLoaderClientQt.cpp
+ FrameLoaderClientQt.h
+ InspectorClientQt.cpp
+ InspectorClientQt.h
+2 WebKit_pch.h
+2 WebKit/scripts/
+0 generate-webkitversion.pl
+2 WebKit/StringsNotToBeLocalized.txt
+2 wintab/
+0 pktdef.h
+ wintab.h
+2 xorg/
+0 wacomcfg.h
+2 zlib/
+0 adler32.c
+ algorithm.txt
+ ChangeLog
+ compress.c
+ configure
+ crc32.c
+ crc32.h
+ deflate.c
+ deflate.h
+ example.c
+ examples/
+0 fitblk.c
+ gun.c
+ gzappend.c
+ gzjoin.c
+ gzlog.c
+ gzlog.h
+ README.examples
+ zlib_how.html
+ zpipe.c
+ zran.c
+2 FAQ
+ gzio.c
+ INDEX
+ infback.c
+ inffast.c
+ inffast.h
+ inffixed.h
+ inflate.c
+ inflate.h
+ inftrees.c
+ inftrees.h
+ Makefile
+0 .in
+2 make_vms.com
+ minigzip.c
+ projects/
+0 README.projects
+ visualc6/
+0 example.dsp
+ minigzip.dsp
+ README.txt
+ zlib.dsp
+ zlib.dsw
+3 README
+ trees.c
+ trees.h
+ uncompr.c
+ win32/
+0 DLL_FAQ.txt
+ Makefile.bor
+ Makefile.emx
+ Makefile.gcc
+ Makefile.msc
+ VisualC.txt
+ zlib1.rc
+ zlib.def
+2 zconf.h
+ zconf.in.h
+ zlib.3
+ zlib.h
+ zutil.c
+ zutil.h
+3 activeqt/
+0 activeqt.pro
+ container/
+0 container.pro
+ qaxbase.cpp
+ qaxbase.h
+ qaxdump.cpp
+ qaxobject.cpp
+ qaxobject.h
+ qaxscript.cpp
+ qaxscript.h
+ qaxscriptwrapper.cpp
+ qaxselect.cpp
+ qaxselect.h
+ qaxselect.ui
+ qaxwidget.cpp
+ qaxwidget.h
+2 control/
+0 control.pro
+ qaxaggregated.h
+ qaxbindable.cpp
+ qaxbindable.h
+ qaxfactory.cpp
+ qaxfactory.h
+ qaxmain.cpp
+ qaxserverbase.cpp
+ qaxserver.cpp
+ qaxserver.def
+ qaxserverdll.cpp
+ qaxserver.ico
+ qaxservermain.cpp
+ qaxserver.rc
+2 shared/
+0 qaxtypes.cpp
+ qaxtypes.h
+3 corelib/
+0 animation/
+0 animation.pri
+ qabstractanimation.cpp
+ qabstractanimation.h
+ qabstractanimation_p.h
+ qanimationgroup.cpp
+ qanimationgroup.h
+ qanimationgroup_p.h
+ qparallelanimationgroup.cpp
+ qparallelanimationgroup.h
+ qparallelanimationgroup_p.h
+ qpauseanimation.cpp
+ qpauseanimation.h
+ qpropertyanimation.cpp
+ qpropertyanimation.h
+ qpropertyanimation_p.h
+ qsequentialanimationgroup.cpp
+ qsequentialanimationgroup.h
+ qsequentialanimationgroup_p.h
+ qvariantanimation.cpp
+ qvariantanimation.h
+ qvariantanimation_p.h
+2 arch/
+0 alpha/
+0 arch.pri
+ qatomic_alpha.s
+2 arch.pri
+ arm/
+0 arch.pri
+ qatomic_arm.cpp
+2 armv6/
+0 arch.pri
+ qatomic_generic_armv6.cpp
+2 avr32/
+0 arch.pri
+2 bfin/
+0 arch.pri
+2 generic/
+0 arch.pri
+ qatomic_generic_unix.cpp
+ qatomic_generic_windows.cpp
+2 i386/
+0 arch.pri
+ qatomic_i386.s
+2 ia64/
+0 arch.pri
+ qatomic_ia64.s
+2 macosx/
+0 arch.pri
+ qatomic32_ppc.s
+2 mips/
+0 arch.pri
+ qatomic_mips32.s
+ qatomic_mips64.s
+2 parisc/
+0 arch.pri
+ qatomic_parisc.cpp
+ q_ldcw.s
+2 powerpc/
+0 arch.pri
+ qatomic32.s
+ qatomic64.s
+2 qatomic_alpha.h
+ qatomic_arch.h
+ qatomic_arm.h
+ qatomic_armv6.h
+ qatomic_avr32.h
+ qatomic_bfin.h
+ qatomic_bootstrap.h
+ qatomic_generic.h
+ qatomic_i386.h
+ qatomic_ia64.h
+ qatomic_macosx.h
+ qatomic_mips.h
+ qatomic_parisc.h
+ qatomic_powerpc.h
+ qatomic_s390.h
+ qatomic_sh4a.h
+ qatomic_sh.h
+ qatomic_sparc.h
+ qatomic_symbian.h
+ qatomic_vxworks.h
+ qatomic_windowsce.h
+ qatomic_windows.h
+ qatomic_x86_64.h
+ s390/
+0 arch.pri
+2 sh/
+ sh4a/
+0 arch.pri
+2 sh/arch.pri
+ sh/qatomic_sh.cpp
+ sparc/
+0 arch.pri
+ qatomic32.s
+ qatomic64.s
+ qatomic_sparc.cpp
+2 symbian/
+0 arch.pri
+ qatomic_symbian.cpp
+2 vxworks/
+0 arch.pri
+ qatomic_ppc.s
+2 windows/
+0 arch.pri
+2 x86_64/
+0 arch.pri
+ qatomic_sun.s
+3 codecs/
+0 codecs.pri
+ codecs.qdoc
+ qfontlaocodec.cpp
+ qfontlaocodec_p.h
+ qiconvcodec.cpp
+ qiconvcodec_p.h
+ qisciicodec.cpp
+ qisciicodec_p.h
+ qlatincodec.cpp
+ qlatincodec_p.h
+ qsimplecodec.cpp
+ qsimplecodec_p.h
+ qtextcodec.cpp
+ qtextcodec.h
+ qtextcodec_p.h
+ qtextcodecplugin.cpp
+ qtextcodecplugin.h
+ qtsciicodec.cpp
+ qtsciicodec_p.h
+ qutfcodec.cpp
+ qutfcodec_p.h
+2 concurrent/
+0 concurrent.pri
+ qfuture.cpp
+ qfuture.h
+ qfutureinterface.cpp
+ qfutureinterface.h
+ qfutureinterface_p.h
+ qfuturesynchronizer.cpp
+ qfuturesynchronizer.h
+ qfuturewatcher.cpp
+ qfuturewatcher.h
+ qfuturewatcher_p.h
+ qrunnable.cpp
+ qrunnable.h
+ qtconcurrentcompilertest.h
+ qtconcurrentexception.cpp
+ qtconcurrentexception.h
+ qtconcurrentfilter.cpp
+ qtconcurrentfilter.h
+ qtconcurrentfilterkernel.h
+ qtconcurrentfunctionwrappers.h
+ qtconcurrentiteratekernel.cpp
+ qtconcurrentiteratekernel.h
+ qtconcurrentmap.cpp
+ qtconcurrentmap.h
+ qtconcurrentmapkernel.h
+ qtconcurrentmedian.h
+ qtconcurrentreducekernel.h
+ qtconcurrentresultstore.cpp
+ qtconcurrentresultstore.h
+ qtconcurrentrunbase.h
+ qtconcurrentrun.cpp
+ qtconcurrentrun.h
+ qtconcurrentstoredfunctioncall.h
+ qtconcurrentthreadengine.cpp
+ qtconcurrentthreadengine.h
+ qthreadpool.cpp
+ qthreadpool.h
+ qthreadpool_p.h
+2 corelib.pro
+ eval.pri
+ global/
+0 global.pri
+ qconfig-dist.h
+ qconfig-large.h
+ qconfig-medium.h
+ qconfig-minimal.h
+ qconfig-small.h
+ qendian.h
+ qendian.qdoc
+ qfeatures.h
+ qfeatures.txt
+ qglobal.cpp
+ qglobal.h
+ qlibraryinfo.cpp
+ qlibraryinfo.h
+ qmalloc.cpp
+ qnamespace.h
+ qnamespace.qdoc
+ qnumeric.cpp
+ qnumeric.h
+ qnumeric_p.h
+ qt_pch.h
+ qt_windows.h
+2 io/
+0 io.pri
+ qabstractfileengine.cpp
+ qabstractfileengine.h
+ qabstractfileengine_p.h
+ qbuffer.cpp
+ qbuffer.h
+ qdatastream.cpp
+ qdatastream.h
+ qdatastream_p.h
+ qdebug.cpp
+ qdebug.h
+ qdir.cpp
+ qdir.h
+ qdiriterator.cpp
+ qdiriterator.h
+ qfile.cpp
+ qfile.h
+ qfileinfo.cpp
+ qfileinfo.h
+ qfileinfo_p.h
+ qfile_p.h
+ qfilesystemwatcher.cpp
+ qfilesystemwatcher_dnotify.cpp
+ qfilesystemwatcher_dnotify_p.h
+ qfilesystemwatcher_fsevents.cpp
+ qfilesystemwatcher_fsevents_p.h
+ qfilesystemwatcher.h
+ qfilesystemwatcher_inotify.cpp
+ qfilesystemwatcher_inotify_p.h
+ qfilesystemwatcher_kqueue.cpp
+ qfilesystemwatcher_kqueue_p.h
+ qfilesystemwatcher_p.h
+ qfilesystemwatcher_symbian.cpp
+ qfilesystemwatcher_symbian_p.h
+ qfilesystemwatcher_win.cpp
+ qfilesystemwatcher_win_p.h
+ qfsfileengine.cpp
+ qfsfileengine.h
+ qfsfileengine_iterator.cpp
+ qfsfileengine_iterator_p.h
+ qfsfileengine_iterator_unix.cpp
+ qfsfileengine_iterator_win.cpp
+ qfsfileengine_p.h
+ qfsfileengine_unix.cpp
+ qfsfileengine_win.cpp
+ qiodevice.cpp
+ qiodevice.h
+ qiodevice_p.h
+ qnoncontiguousbytedevice.cpp
+ qnoncontiguousbytedevice_p.h
+ qprocess.cpp
+ qprocess.h
+ qprocess_p.h
+ qprocess_symbian.cpp
+ qprocess_unix.cpp
+ qprocess_win.cpp
+ qresource.cpp
+ qresource.h
+ qresource_iterator.cpp
+ qresource_iterator_p.h
+ qresource_p.h
+ qsettings.cpp
+ qsettings.h
+ qsettings_mac.cpp
+ qsettings_p.h
+ qsettings_win.cpp
+ qtemporaryfile.cpp
+ qtemporaryfile.h
+ qtextstream.cpp
+ qtextstream.h
+ qurl.cpp
+ qurl.h
+ qwindowspipewriter.cpp
+ qwindowspipewriter_p.h
+2 kernel/
+0 kernel.pri
+ qabstracteventdispatcher.cpp
+ qabstracteventdispatcher.h
+ qabstracteventdispatcher_p.h
+ qabstractitemmodel.cpp
+ qabstractitemmodel.h
+ qabstractitemmodel_p.h
+ qbasictimer.cpp
+ qbasictimer.h
+ qcoreapplication.cpp
+ qcoreapplication.h
+ qcoreapplication_mac.cpp
+ qcoreapplication_p.h
+ qcoreapplication_win.cpp
+ qcorecmdlineargs_p.h
+ qcoreevent.cpp
+ qcoreevent.h
+ qcoreglobaldata.cpp
+ qcoreglobaldata_p.h
+ qcore_mac.cpp
+ qcore_mac_p.h
+ qcore_symbian_p.cpp
+ qcore_symbian_p.h
+ qcore_unix.cpp
+ qcore_unix_p.h
+ qcrashhandler.cpp
+ qcrashhandler_p.h
+ qeventdispatcher_glib.cpp
+ qeventdispatcher_glib_p.h
+ qeventdispatcher_symbian.cpp
+ qeventdispatcher_symbian_p.h
+ qeventdispatcher_unix.cpp
+ qeventdispatcher_unix_p.h
+ qeventdispatcher_win.cpp
+ qeventdispatcher_win_p.h
+ qeventloop.cpp
+ qeventloop.h
+ qfunctions_p.h
+ qfunctions_vxworks.cpp
+ qfunctions_vxworks.h
+ qfunctions_wince.cpp
+ qfunctions_wince.h
+ qguard_p.h
+ qmath.cpp
+ qmath.h
+ qmetaobject.cpp
+ qmetaobject.h
+ qmetaobject_p.h
+ qmetatype.cpp
+ qmetatype.h
+ qmimedata.cpp
+ qmimedata.h
+ qobjectcleanuphandler.cpp
+ qobjectcleanuphandler.h
+ qobject.cpp
+ qobjectdefs.h
+ qobject.h
+ qobject_p.h
+ qpointer.cpp
+ qpointer.h
+ qsharedmemory.cpp
+ qsharedmemory.h
+ qsharedmemory_p.h
+ qsharedmemory_symbian.cpp
+ qsharedmemory_unix.cpp
+ qsharedmemory_win.cpp
+ qsignalmapper.cpp
+ qsignalmapper.h
+ qsocketnotifier.cpp
+ qsocketnotifier.h
+ qsystemsemaphore.cpp
+ qsystemsemaphore.h
+ qsystemsemaphore_p.h
+ qsystemsemaphore_symbian.cpp
+ qsystemsemaphore_unix.cpp
+ qsystemsemaphore_win.cpp
+ qtcore_eval.cpp
+ qtimer.cpp
+ qtimer.h
+ qtranslator.cpp
+ qtranslator.h
+ qtranslator_p.h
+ qvariant.cpp
+ qvariant.h
+ qvariant_p.h
+ qwineventnotifier_p.cpp
+ qwineventnotifier_p.h
+2 plugin/
+0 plugin.pri
+ qfactoryinterface.h
+ qfactoryloader.cpp
+ qfactoryloader_p.h
+ qlibrary.cpp
+ qlibrary.h
+ qlibrary_p.h
+ qlibrary_unix.cpp
+ qlibrary_win.cpp
+ qplugin.h
+ qpluginloader.cpp
+ qpluginloader.h
+ qplugin.qdoc
+ quuid.cpp
+ quuid.h
+2 QtCore.dynlist
+ statemachine/
+0 qabstractstate.cpp
+ qabstractstate.h
+ qabstractstate_p.h
+ qabstracttransition.cpp
+ qabstracttransition.h
+ qabstracttransition_p.h
+ qeventtransition.cpp
+ qeventtransition.h
+ qeventtransition_p.h
+ qfinalstate.cpp
+ qfinalstate.h
+ qhistorystate.cpp
+ qhistorystate.h
+ qhistorystate_p.h
+ qsignaleventgenerator_p.h
+ qsignaltransition.cpp
+ qsignaltransition.h
+ qsignaltransition_p.h
+ qstate.cpp
+ qstate.h
+ qstatemachine.cpp
+ qstatemachine.h
+ qstatemachine_p.h
+ qstate_p.h
+ statemachine.pri
+2 thread/
+0 qatomic.cpp
+ qatomic.h
+ qbasicatomic.h
+ qmutex.cpp
+ qmutex.h
+ qmutex_p.h
+ qmutexpool.cpp
+ qmutexpool_p.h
+ qmutex_unix.cpp
+ qmutex_win.cpp
+ qorderedmutexlocker_p.h
+ qreadwritelock.cpp
+ qreadwritelock.h
+ qreadwritelock_p.h
+ qsemaphore.cpp
+ qsemaphore.h
+ qthread.cpp
+ qthread.h
+ qthread_p.h
+ qthreadstorage.cpp
+ qthreadstorage.h
+ qthread_unix.cpp
+ qthread_win.cpp
+ qwaitcondition.h
+ qwaitcondition.qdoc
+ qwaitcondition_unix.cpp
+ qwaitcondition_win.cpp
+ thread.pri
+2 tools/
+0 qalgorithms.h
+ qalgorithms.qdoc
+ qbitarray.cpp
+ qbitarray.h
+ qbytearray.cpp
+ qbytearray.h
+ qbytearraymatcher.cpp
+ qbytearraymatcher.h
+ qbytedata_p.h
+ qcache.h
+ qcache.qdoc
+ qchar.cpp
+ qchar.h
+ qcontainerfwd.h
+ qcontiguouscache.cpp
+ qcontiguouscache.h
+ qcryptographichash.cpp
+ qcryptographichash.h
+ qdatetime.cpp
+ qdatetime.h
+ qdatetime_p.h
+ qeasingcurve.cpp
+ qeasingcurve.h
+ qharfbuzz.cpp
+ qharfbuzz_p.h
+ qhash.cpp
+ qhash.h
+ qiterator.h
+ qiterator.qdoc
+ qline.cpp
+ qline.h
+ qlinkedlist.cpp
+ qlinkedlist.h
+ qlist.cpp
+ qlist.h
+ qlocale.cpp
+ qlocale_data_p.h
+ qlocale.h
+ qlocale_p.h
+ qlocale_symbian.cpp
+ qmap.cpp
+ qmap.h
+ qmargins.cpp
+ qmargins.h
+ qpair.h
+ qpair.qdoc
+ qpodlist_p.h
+ qpoint.cpp
+ qpoint.h
+ qqueue.cpp
+ qqueue.h
+ qrect.cpp
+ qrect.h
+ qregexp.cpp
+ qregexp.h
+ qringbuffer_p.h
+ qscopedpointer.cpp
+ qscopedpointer.h
+ qscopedpointer_p.h
+ qset.h
+ qset.qdoc
+ qshareddata.cpp
+ qshareddata.h
+ qsharedpointer.cpp
+ qsharedpointer.h
+ qsharedpointer_impl.h
+ qsize.cpp
+ qsize.h
+ qstack.cpp
+ qstack.h
+ qstringbuilder.cpp
+ qstringbuilder.h
+ qstring.cpp
+ qstring.h
+ qstringlist.cpp
+ qstringlist.h
+ qstringmatcher.cpp
+ qstringmatcher.h
+ qtextboundaryfinder.cpp
+ qtextboundaryfinder.h
+ qtimeline.cpp
+ qtimeline.h
+ qtools_p.h
+ qunicodetables.cpp
+ qunicodetables_p.h
+ qvarlengtharray.h
+ qvarlengtharray.qdoc
+ qvector.cpp
+ qvector.h
+ qvsnprintf.cpp
+ tools.pri
+2 xml/
+0 .gitignore
+ make-parser.sh
+ qxmlstream.cpp
+ qxmlstream.g
+ qxmlstream.h
+ qxmlstream_p.h
+ qxmlutils.cpp
+ qxmlutils_p.h
+ xml.pri
+3 dbus/
+0 dbus.pro
+ qdbusabstractadaptor.cpp
+ qdbusabstractadaptor.h
+ qdbusabstractadaptor_p.h
+ qdbusabstractinterface.cpp
+ qdbusabstractinterface.h
+ qdbusabstractinterface_p.h
+ qdbusargument.cpp
+ qdbusargument.h
+ qdbusargument_p.h
+ qdbusconnection.cpp
+ qdbusconnection.h
+ qdbusconnectioninterface.cpp
+ qdbusconnectioninterface.h
+ qdbusconnection_p.h
+ qdbuscontext.cpp
+ qdbuscontext.h
+ qdbuscontext_p.h
+ qdbusdemarshaller.cpp
+ qdbuserror.cpp
+ qdbuserror.h
+ qdbusextratypes.cpp
+ qdbusextratypes.h
+ qdbusintegrator.cpp
+ qdbusintegrator_p.h
+ qdbusinterface.cpp
+ qdbusinterface.h
+ qdbusinterface_p.h
+ qdbusinternalfilters.cpp
+ qdbusintrospection.cpp
+ qdbusintrospection_p.h
+ qdbusmacros.h
+ qdbusmarshaller.cpp
+ qdbusmessage.cpp
+ qdbusmessage.h
+ qdbusmessage_p.h
+ qdbusmetaobject.cpp
+ qdbusmetaobject_p.h
+ qdbusmetatype.cpp
+ qdbusmetatype.h
+ qdbusmetatype_p.h
+ qdbusmisc.cpp
+ qdbuspendingcall.cpp
+ qdbuspendingcall.h
+ qdbuspendingcall_p.h
+ qdbuspendingreply.cpp
+ qdbuspendingreply.h
+ qdbusreply.cpp
+ qdbusreply.h
+ qdbusserver.cpp
+ qdbusserver.h
+ qdbusservicewatcher.cpp
+ qdbusservicewatcher.h
+ qdbus_symbols.cpp
+ qdbus_symbols_p.h
+ qdbusthreaddebug_p.h
+ qdbusutil.cpp
+ qdbusutil_p.h
+ qdbusxmlgenerator.cpp
+ qdbusxmlparser.cpp
+ qdbusxmlparser_p.h
+2 gui/
+0 accessible/
+0 accessible.pri
+ qaccessible2.cpp
+ qaccessible2.h
+ qaccessiblebridge.cpp
+ qaccessiblebridge.h
+ qaccessible.cpp
+ qaccessible.h
+ qaccessible_mac_carbon.cpp
+ qaccessible_mac_cocoa.mm
+ qaccessible_mac.mm
+ qaccessible_mac_p.h
+ qaccessibleobject.cpp
+ qaccessibleobject.h
+ qaccessibleplugin.cpp
+ qaccessibleplugin.h
+ qaccessible_unix.cpp
+ qaccessiblewidget.cpp
+ qaccessiblewidget.h
+ qaccessible_win.cpp
+2 animation/
+0 animation.pri
+ qguivariantanimation.cpp
+2 dialogs/
+0 dialogs.pri
+ images/
+0 fit-page-24.png
+ fit-page-32.png
+ fit-width-24.png
+ fit-width-32.png
+ go-first-24.png
+ go-first-32.png
+ go-last-24.png
+ go-last-32.png
+ go-next-24.png
+ go-next-32.png
+ go-previous-24.png
+ go-previous-32.png
+ layout-landscape-24.png
+ layout-landscape-32.png
+ layout-portrait-24.png
+ layout-portrait-32.png
+ page-setup-24.png
+ page-setup-32.png
+ print-24.png
+ print-32.png
+ qtlogo-64.png
+ status-color.png
+ status-gray-scale.png
+ view-page-multi-24.png
+ view-page-multi-32.png
+ view-page-one-24.png
+ view-page-one-32.png
+ view-page-sided-24.png
+ view-page-sided-32.png
+ zoom-in-24.png
+ zoom-in-32.png
+ zoom-out-24.png
+ zoom-out-32.png
+2 qabstractpagesetupdialog.cpp
+ qabstractpagesetupdialog.h
+ qabstractpagesetupdialog_p.h
+ qabstractprintdialog.cpp
+ qabstractprintdialog.h
+ qabstractprintdialog_p.h
+ qcolordialog.cpp
+ qcolordialog.h
+ qcolordialog_mac.mm
+ qcolordialog_p.h
+ qdialog.cpp
+ qdialog.h
+ qdialog_p.h
+ qdialogsbinarycompat_win.cpp
+ qerrormessage.cpp
+ qerrormessage.h
+ qfiledialog.cpp
+ qfiledialog_embedded.ui
+ qfiledialog.h
+ qfiledialog_mac.mm
+ qfiledialog_p.h
+ qfiledialog.ui
+ qfiledialog_win.cpp
+ qfileinfogatherer.cpp
+ qfileinfogatherer_p.h
+ qfilesystemmodel.cpp
+ qfilesystemmodel.h
+ qfilesystemmodel_p.h
+ qfontdialog.cpp
+ qfontdialog.h
+ qfontdialog_mac.mm
+ qfontdialog_p.h
+ qfscompleter_p.h
+ qinputdialog.cpp
+ qinputdialog.h
+ qmessagebox.cpp
+ qmessagebox.h
+ qmessagebox.qrc
+ qnspanelproxy_mac.mm
+ qpagesetupdialog.cpp
+ qpagesetupdialog.h
+ qpagesetupdialog_mac.mm
+ qpagesetupdialog_unix.cpp
+ qpagesetupdialog_unix_p.h
+ qpagesetupdialog_win.cpp
+ qpagesetupwidget.ui
+ qprintdialog.h
+ qprintdialog_mac.mm
+ qprintdialog.qdoc
+ qprintdialog.qrc
+ qprintdialog_qws.cpp
+ qprintdialog_unix.cpp
+ qprintdialog_win.cpp
+ qprintpreviewdialog.cpp
+ qprintpreviewdialog.h
+ qprintpropertieswidget.ui
+ qprintsettingsoutput.ui
+ qprintwidget.ui
+ qprogressdialog.cpp
+ qprogressdialog.h
+ qsidebar.cpp
+ qsidebar_p.h
+ qwizard.cpp
+ qwizard.h
+ qwizard_win.cpp
+ qwizard_win_p.h
+2 effects/
+0 effects.pri
+ qgraphicseffect.cpp
+ qgraphicseffect.h
+ qgraphicseffect_p.h
+2 egl/
+0 egl.pri
+ qegl.cpp
+ qegl_p.h
+ qeglproperties.cpp
+ qeglproperties_p.h
+ qegl_qws.cpp
+ qegl_symbian.cpp
+ qegl_wince.cpp
+ qegl_x11.cpp
+2 embedded/
+0 directfb.pri
+ embedded.pri
+ qcopchannel_qws.cpp
+ qcopchannel_qws.h
+ qdecorationdefault_qws.cpp
+ qdecorationdefault_qws.h
+ qdecorationfactory_qws.cpp
+ qdecorationfactory_qws.h
+ qdecorationplugin_qws.cpp
+ qdecorationplugin_qws.h
+ qdecoration_qws.cpp
+ qdecoration_qws.h
+ qdecorationstyled_qws.cpp
+ qdecorationstyled_qws.h
+ qdecorationwindows_qws.cpp
+ qdecorationwindows_qws.h
+ qdirectpainter_qws.cpp
+ qdirectpainter_qws.h
+ qkbd_defaultmap_qws_p.h
+ qkbddriverfactory_qws.cpp
+ qkbddriverfactory_qws.h
+ qkbddriverplugin_qws.cpp
+ qkbddriverplugin_qws.h
+ qkbdlinuxinput_qws.cpp
+ qkbdlinuxinput_qws.h
+ qkbdqnx_qws.cpp
+ qkbdqnx_qws.h
+ qkbd_qws.cpp
+ qkbd_qws.h
+ qkbd_qws_p.h
+ qkbdtty_qws.cpp
+ qkbdtty_qws.h
+ qkbdum_qws.cpp
+ qkbdum_qws.h
+ qkbdvfb_qws.cpp
+ qkbdvfb_qws.h
+ qlock.cpp
+ qlock_p.h
+ qmousedriverfactory_qws.cpp
+ qmousedriverfactory_qws.h
+ qmousedriverplugin_qws.cpp
+ qmousedriverplugin_qws.h
+ qmouselinuxinput_qws.cpp
+ qmouselinuxinput_qws.h
+ qmouselinuxtp_qws.cpp
+ qmouselinuxtp_qws.h
+ qmousepc_qws.cpp
+ qmousepc_qws.h
+ qmouseqnx_qws.cpp
+ qmouseqnx_qws.h
+ qmouse_qws.cpp
+ qmouse_qws.h
+ qmousetslib_qws.cpp
+ qmousetslib_qws.h
+ qmousevfb_qws.cpp
+ qmousevfb_qws.h
+ qscreendriverfactory_qws.cpp
+ qscreendriverfactory_qws.h
+ qscreendriverplugin_qws.cpp
+ qscreendriverplugin_qws.h
+ qscreenlinuxfb_qws.cpp
+ qscreenlinuxfb_qws.h
+ qscreenmulti_qws.cpp
+ qscreenmulti_qws_p.h
+ qscreenproxy_qws.cpp
+ qscreenproxy_qws.h
+ qscreenqnx_qws.cpp
+ qscreenqnx_qws.h
+ qscreen_qws.cpp
+ qscreen_qws.h
+ qscreentransformed_qws.cpp
+ qscreentransformed_qws.h
+ qscreenvfb_qws.cpp
+ qscreenvfb_qws.h
+ qsoundqss_qws.cpp
+ qsoundqss_qws.h
+ qtransportauthdefs_qws.h
+ qtransportauth_qws.cpp
+ qtransportauth_qws.h
+ qtransportauth_qws_p.h
+ qunixsocket.cpp
+ qunixsocket_p.h
+ qunixsocketserver.cpp
+ qunixsocketserver_p.h
+ qvfbhdr.h
+ qwindowsystem_p.h
+ qwindowsystem_qws.cpp
+ qwindowsystem_qws.h
+ qwscommand_qws.cpp
+ qwscommand_qws_p.h
+ qwscursor_qws.cpp
+ qwscursor_qws.h
+ qwsdisplay_qws.h
+ qwsdisplay_qws_p.h
+ qwsembedwidget.cpp
+ qwsembedwidget.h
+ qwsevent_qws.cpp
+ qwsevent_qws.h
+ qwslock.cpp
+ qwslock_p.h
+ qwsmanager_p.h
+ qwsmanager_qws.cpp
+ qwsmanager_qws.h
+ qwsproperty_qws.cpp
+ qwsproperty_qws.h
+ qwsprotocolitem_qws.h
+ qwssharedmemory.cpp
+ qwssharedmemory_p.h
+ qwssignalhandler.cpp
+ qwssignalhandler_p.h
+ qwssocket_qws.cpp
+ qwssocket_qws.h
+ qwsutils_qws.h
+2 graphicsview/
+0 graphicsview.pri
+ qgraphicsanchorlayout.cpp
+ qgraphicsanchorlayout.h
+ qgraphicsanchorlayout_p.cpp
+ qgraphicsanchorlayout_p.h
+ qgraphicsgridlayout.cpp
+ qgraphicsgridlayout.h
+ qgraphicsitemanimation.cpp
+ qgraphicsitemanimation.h
+ qgraphicsitem.cpp
+ qgraphicsitem.h
+ qgraphicsitem_p.h
+ qgraphicslayout.cpp
+ qgraphicslayout.h
+ qgraphicslayoutitem.cpp
+ qgraphicslayoutitem.h
+ qgraphicslayoutitem_p.h
+ qgraphicslayout_p.cpp
+ qgraphicslayout_p.h
+ qgraphicslinearlayout.cpp
+ qgraphicslinearlayout.h
+ qgraphicsproxywidget.cpp
+ qgraphicsproxywidget.h
+ qgraphicsproxywidget_p.h
+ qgraphicsscene_bsp.cpp
+ qgraphicsscene_bsp_p.h
+ qgraphicsscenebsptreeindex.cpp
+ qgraphicsscenebsptreeindex_p.h
+ qgraphicsscene.cpp
+ qgraphicssceneevent.cpp
+ qgraphicssceneevent.h
+ qgraphicsscene.h
+ qgraphicssceneindex.cpp
+ qgraphicssceneindex_p.h
+ qgraphicsscenelinearindex.cpp
+ qgraphicsscenelinearindex_p.h
+ qgraphicsscene_p.h
+ qgraphicstransform.cpp
+ qgraphicstransform.h
+ qgraphicstransform_p.h
+ qgraphicsview.cpp
+ qgraphicsview.h
+ qgraphicsview_p.h
+ qgraphicswidget.cpp
+ qgraphicswidget.h
+ qgraphicswidget_p.cpp
+ qgraphicswidget_p.h
+ qgraph_p.h
+ qgridlayoutengine.cpp
+ qgridlayoutengine_p.h
+ qsimplex_p.cpp
+ qsimplex_p.h
+2 gui.pro
+ image/
+0 image.pri
+ qbitmap.cpp
+ qbitmap.h
+ qbmphandler.cpp
+ qbmphandler_p.h
+ qicon.cpp
+ qiconengine.cpp
+ qiconengine.h
+ qiconengineplugin.cpp
+ qiconengineplugin.h
+ qicon.h
+ qiconloader.cpp
+ qiconloader_p.h
+ qicon_p.h
+ qimage.cpp
+ qimage.h
+ qimageiohandler.cpp
+ qimageiohandler.h
+ qimage_p.h
+ qimagepixmapcleanuphooks.cpp
+ qimagepixmapcleanuphooks_p.h
+ qimagereader.cpp
+ qimagereader.h
+ qimagewriter.cpp
+ qimagewriter.h
+ qmovie.cpp
+ qmovie.h
+ qnativeimage.cpp
+ qnativeimage_p.h
+ qpaintengine_pic.cpp
+ qpaintengine_pic_p.h
+ qpicture.cpp
+ qpictureformatplugin.cpp
+ qpictureformatplugin.h
+ qpicture.h
+ qpicture_p.h
+ qpixmapcache.cpp
+ qpixmapcache.h
+ qpixmapcache_p.h
+ qpixmap.cpp
+ qpixmapdata.cpp
+ qpixmapdatafactory.cpp
+ qpixmapdatafactory_p.h
+ qpixmapdata_p.h
+ qpixmapfilter.cpp
+ qpixmapfilter_p.h
+ qpixmap.h
+ qpixmap_mac.cpp
+ qpixmap_mac_p.h
+ qpixmap_qws.cpp
+ qpixmap_raster.cpp
+ qpixmap_raster_p.h
+ qpixmap_s60.cpp
+ qpixmap_s60_p.h
+ qpixmap_win.cpp
+ qpixmap_x11.cpp
+ qpixmap_x11_p.h
+ qpnghandler.cpp
+ qpnghandler_p.h
+ qppmhandler.cpp
+ qppmhandler_p.h
+ qxbmhandler.cpp
+ qxbmhandler_p.h
+ qxpmhandler.cpp
+ qxpmhandler_p.h
+2 inputmethod/
+0 inputmethod.pri
+ qcoefepinputcontext_p.h
+ qcoefepinputcontext_s60.cpp
+ qinputcontext.cpp
+ qinputcontextfactory.cpp
+ qinputcontextfactory.h
+ qinputcontext.h
+ qinputcontext_p.h
+ qinputcontextplugin.cpp
+ qinputcontextplugin.h
+ qmacinputcontext_mac.cpp
+ qmacinputcontext_p.h
+ qwininputcontext_p.h
+ qwininputcontext_win.cpp
+ qwsinputcontext_p.h
+ qwsinputcontext_qws.cpp
+ qximinputcontext_p.h
+ qximinputcontext_x11.cpp
+2 itemviews/
+0 itemviews.pri
+ qabstractitemdelegate.cpp
+ qabstractitemdelegate.h
+ qabstractitemview.cpp
+ qabstractitemview.h
+ qabstractitemview_p.h
+ qabstractproxymodel.cpp
+ qabstractproxymodel.h
+ qabstractproxymodel_p.h
+ qbsptree.cpp
+ qbsptree_p.h
+ qcolumnview.cpp
+ qcolumnviewgrip.cpp
+ qcolumnviewgrip_p.h
+ qcolumnview.h
+ qcolumnview_p.h
+ qdatawidgetmapper.cpp
+ qdatawidgetmapper.h
+ qdirmodel.cpp
+ qdirmodel.h
+ qfileiconprovider.cpp
+ qfileiconprovider.h
+ qheaderview.cpp
+ qheaderview.h
+ qheaderview_p.h
+ qitemdelegate.cpp
+ qitemdelegate.h
+ qitemeditorfactory.cpp
+ qitemeditorfactory.h
+ qitemeditorfactory_p.h
+ qitemselectionmodel.cpp
+ qitemselectionmodel.h
+ qitemselectionmodel_p.h
+ qlistview.cpp
+ qlistview.h
+ qlistview_p.h
+ qlistwidget.cpp
+ qlistwidget.h
+ qlistwidget_p.h
+ qproxymodel.cpp
+ qproxymodel.h
+ qproxymodel_p.h
+ qsortfilterproxymodel.cpp
+ qsortfilterproxymodel.h
+ qstandarditemmodel.cpp
+ qstandarditemmodel.h
+ qstandarditemmodel_p.h
+ qstringlistmodel.cpp
+ qstringlistmodel.h
+ qstyleditemdelegate.cpp
+ qstyleditemdelegate.h
+ qtableview.cpp
+ qtableview.h
+ qtableview_p.h
+ qtablewidget.cpp
+ qtablewidget.h
+ qtablewidget_p.h
+ qtreeview.cpp
+ qtreeview.h
+ qtreeview_p.h
+ qtreewidget.cpp
+ qtreewidget.h
+ qtreewidgetitemiterator.cpp
+ qtreewidgetitemiterator.h
+ qtreewidgetitemiterator_p.h
+ qtreewidget_p.h
+ qwidgetitemdata_p.h
+2 kernel/
+0 kernel.pri
+ mac.pri
+ qaction.cpp
+ qactiongroup.cpp
+ qactiongroup.h
+ qaction.h
+ qaction_p.h
+ qapplication.cpp
+ qapplication.h
+ qapplication_mac.mm
+ qapplication_p.h
+ qapplication_qws.cpp
+ qapplication_s60.cpp
+ qapplication_win.cpp
+ qapplication_x11.cpp
+ qboxlayout.cpp
+ qboxlayout.h
+ qclipboard.cpp
+ qclipboard.h
+ qclipboard_mac.cpp
+ qclipboard_p.h
+ qclipboard_qws.cpp
+ qclipboard_s60.cpp
+ qclipboard_win.cpp
+ qclipboard_x11.cpp
+ qcocoaapplicationdelegate_mac.mm
+ qcocoaapplicationdelegate_mac_p.h
+ qcocoaapplication_mac.mm
+ qcocoaapplication_mac_p.h
+ qcocoamenuloader_mac.mm
+ qcocoamenuloader_mac_p.h
+ qcocoapanel_mac.mm
+ qcocoapanel_mac_p.h
+ qcocoaview_mac.mm
+ qcocoaview_mac_p.h
+ qcocoawindowcustomthemeframe_mac.mm
+ qcocoawindowcustomthemeframe_mac_p.h
+ qcocoawindowdelegate_mac.mm
+ qcocoawindowdelegate_mac_p.h
+ qcocoawindow_mac.mm
+ qcocoawindow_mac_p.h
+ qcursor.cpp
+ qcursor.h
+ qcursor_mac.mm
+ qcursor_p.h
+ qcursor_qws.cpp
+ qcursor_s60.cpp
+ qcursor_win.cpp
+ qcursor_x11.cpp
+ qdesktopwidget.cpp
+ qdesktopwidget.h
+ qdesktopwidget_mac.mm
+ qdesktopwidget_mac_p.h
+ qdesktopwidget.qdoc
+ qdesktopwidget_qws.cpp
+ qdesktopwidget_s60.cpp
+ qdesktopwidget_win.cpp
+ qdesktopwidget_x11.cpp
+ qdnd.cpp
+ qdnd_mac.mm
+ qdnd_p.h
+ qdnd_qws.cpp
+ qdnd_s60.cpp
+ qdnd_win.cpp
+ qdnd_x11.cpp
+ qdrag.cpp
+ qdrag.h
+ qevent.cpp
+ qeventdispatcher_glib_qws.cpp
+ qeventdispatcher_glib_qws_p.h
+ qeventdispatcher_mac.mm
+ qeventdispatcher_mac_p.h
+ qeventdispatcher_qws.cpp
+ qeventdispatcher_qws_p.h
+ qeventdispatcher_s60.cpp
+ qeventdispatcher_s60_p.h
+ qeventdispatcher_x11.cpp
+ qeventdispatcher_x11_p.h
+ qevent.h
+ qevent_p.h
+ qformlayout.cpp
+ qformlayout.h
+ qgesture.cpp
+ qgesture.h
+ qgesturemanager.cpp
+ qgesturemanager_p.h
+ qgesture_p.h
+ qgesturerecognizer.cpp
+ qgesturerecognizer.h
+ qgridlayout.cpp
+ qgridlayout.h
+ qguieventdispatcher_glib.cpp
+ qguieventdispatcher_glib_p.h
+ qguifunctions_wince.cpp
+ qguifunctions_wince.h
+ qguiplatformplugin.cpp
+ qguiplatformplugin_p.h
+ qguivariant.cpp
+ qkde.cpp
+ qkde_p.h
+ qkeymapper.cpp
+ qkeymapper_mac.cpp
+ qkeymapper_p.h
+ qkeymapper_qws.cpp
+ qkeymapper_s60.cpp
+ qkeymapper_win.cpp
+ qkeymapper_x11.cpp
+ qkeymapper_x11_p.cpp
+ qkeysequence.cpp
+ qkeysequence.h
+ qkeysequence_p.h
+ qlayout.cpp
+ qlayoutengine.cpp
+ qlayoutengine_p.h
+ qlayout.h
+ qlayoutitem.cpp
+ qlayoutitem.h
+ qlayout_p.h
+ qmacdefines_mac.h
+ qmacgesturerecognizer_mac.mm
+ qmacgesturerecognizer_mac_p.h
+ qmime.cpp
+ qmime.h
+ qmime_mac.cpp
+ qmime_win.cpp
+ qmotifdnd_x11.cpp
+ qmultitouch_mac.mm
+ qmultitouch_mac_p.h
+ qnsframeview_mac_p.h
+ qnsthemeframe_mac_p.h
+ qnstitledframe_mac_p.h
+ qole_win.cpp
+ qpalette.cpp
+ qpalette.h
+ qsessionmanager.h
+ qsessionmanager_qws.cpp
+ qshortcut.cpp
+ qshortcut.h
+ qshortcutmap.cpp
+ qshortcutmap_p.h
+ qsizepolicy.h
+ qsizepolicy.qdoc
+ qsoftkeymanager.cpp
+ qsoftkeymanager_p.h
+ qsound.cpp
+ qsound.h
+ qsound_mac.mm
+ qsound_p.h
+ qsound_qws.cpp
+ qsound_s60.cpp
+ qsound_win.cpp
+ qsound_x11.cpp
+ qstackedlayout.cpp
+ qstackedlayout.h
+ qstandardgestures.cpp
+ qstandardgestures_p.h
+ qt_cocoa_helpers_mac.mm
+ qt_cocoa_helpers_mac_p.h
+ qt_gui_pch.h
+ qt_mac.cpp
+ qt_mac_p.h
+ qtooltip.cpp
+ qtooltip.h
+ qt_s60_p.h
+ qt_x11_p.h
+ qwhatsthis.cpp
+ qwhatsthis.h
+ qwidgetaction.cpp
+ qwidgetaction.h
+ qwidgetaction_p.h
+ qwidget.cpp
+ qwidgetcreate_x11.cpp
+ qwidget.h
+ qwidget_mac.mm
+ qwidget_p.h
+ qwidget_qws.cpp
+ qwidget_s60.cpp
+ qwidget_wince.cpp
+ qwidget_win.cpp
+ qwidget_x11.cpp
+ qwindowdefs.h
+ qwindowdefs_win.h
+ qwinnativepangesturerecognizer_win.cpp
+ qwinnativepangesturerecognizer_win_p.h
+ qx11embed_x11.cpp
+ qx11embed_x11.h
+ qx11info_x11.cpp
+ qx11info_x11.h
+ symbian.pri
+ win.pri
+ x11.pri
+2 mac/
+0 images/
+0 copyarrowcursor.png
+ forbiddencursor.png
+ leopard-unified-toolbar-on.png
+ pluscursor.png
+ spincursor.png
+ waitcursor.png
+2 macresources.qrc
+ qt_menu.nib/
+0 classes.nib
+ info.nib
+ keyedobjects.nib
+3 math3d/
+0 math3d.pri
+ qgenericmatrix.cpp
+ qgenericmatrix.h
+ qmatrix4x4.cpp
+ qmatrix4x4.h
+ qquaternion.cpp
+ qquaternion.h
+ qvector2d.cpp
+ qvector2d.h
+ qvector3d.cpp
+ qvector3d.h
+ qvector4d.cpp
+ qvector4d.h
+2 painting/
+0 makepsheader.pl
+ painting.pri
+ qbackingstore.cpp
+ qbackingstore_p.h
+ qbezier.cpp
+ qbezier_p.h
+ qblendfunctions_armv6_rvct.s
+ qblendfunctions.cpp
+ qbrush.cpp
+ qbrush.h
+ qcolor.cpp
+ qcolor.h
+ qcolormap.h
+ qcolormap_mac.cpp
+ qcolormap.qdoc
+ qcolormap_qws.cpp
+ qcolormap_s60.cpp
+ qcolormap_win.cpp
+ qcolormap_x11.cpp
+ qcolor_p.cpp
+ qcolor_p.h
+ qcssutil.cpp
+ qcssutil_p.h
+ qcups.cpp
+ qcups_p.h
+ qdatabuffer_p.h
+ qdrawhelper_armv6_p.h
+ qdrawhelper_armv6_rvct.inc
+ qdrawhelper_armv6_rvct.s
+ qdrawhelper.cpp
+ qdrawhelper_iwmmxt.cpp
+ qdrawhelper_mmx3dnow.cpp
+ qdrawhelper_mmx.cpp
+ qdrawhelper_mmx_p.h
+ qdrawhelper_p.h
+ qdrawhelper_sse2.cpp
+ qdrawhelper_sse3dnow.cpp
+ qdrawhelper_sse.cpp
+ qdrawhelper_sse_p.h
+ qdrawhelper_x86_p.h
+ qdrawutil.cpp
+ qdrawutil.h
+ qemulationpaintengine.cpp
+ qemulationpaintengine_p.h
+ qfixed_p.h
+ qgraphicssystem.cpp
+ qgraphicssystemfactory.cpp
+ qgraphicssystemfactory_p.h
+ qgraphicssystem_mac.cpp
+ qgraphicssystem_mac_p.h
+ qgraphicssystem_p.h
+ qgraphicssystemplugin.cpp
+ qgraphicssystemplugin_p.h
+ qgraphicssystem_qws.cpp
+ qgraphicssystem_qws_p.h
+ qgraphicssystem_raster.cpp
+ qgraphicssystem_raster_p.h
+ qgrayraster.c
+ qgrayraster_p.h
+ qimagescale.cpp
+ qimagescale_p.h
+ qmath_p.h
+ qmatrix.cpp
+ qmatrix.h
+ qmemrotate.cpp
+ qmemrotate_p.h
+ qoutlinemapper.cpp
+ qoutlinemapper_p.h
+ qpaintbuffer.cpp
+ qpaintbuffer_p.h
+ qpaintdevice.cpp
+ qpaintdevice.h
+ qpaintdevice_mac.cpp
+ qpaintdevice.qdoc
+ qpaintdevice_qws.cpp
+ qpaintdevice_win.cpp
+ qpaintdevice_x11.cpp
+ qpaintengine_alpha.cpp
+ qpaintengine_alpha_p.h
+ qpaintengine.cpp
+ qpaintengineex.cpp
+ qpaintengineex_p.h
+ qpaintengine.h
+ qpaintengine_mac.cpp
+ qpaintengine_mac_p.h
+ qpaintengine_p.h
+ qpaintengine_preview.cpp
+ qpaintengine_preview_p.h
+ qpaintengine_raster.cpp
+ qpaintengine_raster_p.h
+ qpaintengine_s60.cpp
+ qpaintengine_s60_p.h
+ qpaintengine_x11.cpp
+ qpaintengine_x11_p.h
+ qpainter.cpp
+ qpainter.h
+ qpainterpath.cpp
+ qpainterpath.h
+ qpainterpath_p.h
+ qpainter_p.h
+ qpathclipper.cpp
+ qpathclipper_p.h
+ qpdf.cpp
+ qpdf_p.h
+ qpen.cpp
+ qpen.h
+ qpen_p.h
+ qpolygonclipper_p.h
+ qpolygon.cpp
+ qpolygon.h
+ qprintengine.h
+ qprintengine_mac.mm
+ qprintengine_mac_p.h
+ qprintengine_pdf.cpp
+ qprintengine_pdf_p.h
+ qprintengine_ps.cpp
+ qprintengine_ps_p.h
+ qprintengine_qws.cpp
+ qprintengine_qws_p.h
+ qprintengine_win.cpp
+ qprintengine_win_p.h
+ qprinter.cpp
+ qprinter.h
+ qprinterinfo.h
+ qprinterinfo_mac.cpp
+ qprinterinfo.qdoc
+ qprinterinfo_unix.cpp
+ qprinterinfo_unix_p.h
+ qprinterinfo_win.cpp
+ qprinter_p.h
+ qpsprinter.agl
+ qpsprinter.ps
+ qrasterdefs_p.h
+ qrasterizer.cpp
+ qrasterizer_p.h
+ qregion.cpp
+ qregion.h
+ qregion_mac.cpp
+ qregion_qws.cpp
+ qregion_s60.cpp
+ qregion_win.cpp
+ qregion_x11.cpp
+ qrgb.h
+ qstroker.cpp
+ qstroker_p.h
+ qstylepainter.cpp
+ qstylepainter.h
+ qtessellator.cpp
+ qtessellator_p.h
+ qtextureglyphcache.cpp
+ qtextureglyphcache_p.h
+ qtransform.cpp
+ qtransform.h
+ qvectorpath_p.h
+ qwindowsurface.cpp
+ qwindowsurface_mac.cpp
+ qwindowsurface_mac_p.h
+ qwindowsurface_p.h
+ qwindowsurface_qws.cpp
+ qwindowsurface_qws_p.h
+ qwindowsurface_raster.cpp
+ qwindowsurface_raster_p.h
+ qwindowsurface_s60.cpp
+ qwindowsurface_s60_p.h
+ qwindowsurface_x11.cpp
+ qwindowsurface_x11_p.h
+ qwmatrix.h
+2 QtGui.dynlist
+ s60framework/
+0 qs60mainapplication.cpp
+ qs60mainapplication.h
+ qs60mainapplication_p.h
+ qs60mainappui.cpp
+ qs60mainappui.h
+ qs60maindocument.cpp
+ qs60maindocument.h
+ s60framework.pri
+ s60main.rss
+2 statemachine/
+0 qbasickeyeventtransition.cpp
+ qbasickeyeventtransition_p.h
+ qbasicmouseeventtransition.cpp
+ qbasicmouseeventtransition_p.h
+ qguistatemachine.cpp
+ qkeyeventtransition.cpp
+ qkeyeventtransition.h
+ qmouseeventtransition.cpp
+ qmouseeventtransition.h
+ statemachine.pri
+2 styles/
+0 images/
+0 cdr-128.png
+ cdr-16.png
+ cdr-32.png
+ closedock-16.png
+ closedock-down-16.png
+ computer-16.png
+ computer-32.png
+ defaults60theme.blob
+ desktop-16.png
+ desktop-32.png
+ dirclosed-128.png
+ dirclosed-16.png
+ dirclosed-32.png
+ dirlink-128.png
+ dirlink-16.png
+ dirlink-32.png
+ diropen-128.png
+ diropen-16.png
+ diropen-32.png
+ dockdock-16.png
+ dockdock-down-16.png
+ down-128.png
+ down-16.png
+ down-32.png
+ dvd-128.png
+ dvd-16.png
+ dvd-32.png
+ file-128.png
+ file-16.png
+ file-32.png
+ filecontents-128.png
+ filecontents-16.png
+ filecontents-32.png
+ fileinfo-128.png
+ fileinfo-16.png
+ fileinfo-32.png
+ filelink-128.png
+ filelink-16.png
+ filelink-32.png
+ floppy-128.png
+ floppy-16.png
+ floppy-32.png
+ fontbitmap-16.png
+ fonttruetype-16.png
+ harddrive-128.png
+ harddrive-16.png
+ harddrive-32.png
+ left-128.png
+ left-16.png
+ left-32.png
+ media-pause-16.png
+ media-pause-32.png
+ media-play-16.png
+ media-play-32.png
+ media-seek-backward-16.png
+ media-seek-backward-32.png
+ media-seek-forward-16.png
+ media-seek-forward-32.png
+ media-skip-backward-16.png
+ media-skip-backward-32.png
+ media-skip-forward-16.png
+ media-skip-forward-32.png
+ media-stop-16.png
+ media-stop-32.png
+ media-volume-16.png
+ media-volume-muted-16.png
+ networkdrive-128.png
+ networkdrive-16.png
+ networkdrive-32.png
+ newdirectory-128.png
+ newdirectory-16.png
+ newdirectory-32.png
+ parentdir-128.png
+ parentdir-16.png
+ parentdir-32.png
+ refresh-24.png
+ refresh-32.png
+ right-128.png
+ right-16.png
+ right-32.png
+ standardbutton-apply-128.png
+ standardbutton-apply-16.png
+ standardbutton-apply-32.png
+ standardbutton-cancel-128.png
+ standardbutton-cancel-16.png
+ standardbutton-cancel-32.png
+ standardbutton-clear-128.png
+ standardbutton-clear-16.png
+ standardbutton-clear-32.png
+ standardbutton-close-128.png
+ standardbutton-close-16.png
+ standardbutton-close-32.png
+ standardbutton-closetab-16.png
+ standardbutton-closetab-down-16.png
+ standardbutton-closetab-hover-16.png
+ standardbutton-delete-128.png
+ standardbutton-delete-16.png
+ standardbutton-delete-32.png
+ standardbutton-help-128.png
+ standardbutton-help-16.png
+ standardbutton-help-32.png
+ standardbutton-no-128.png
+ standardbutton-no-16.png
+ standardbutton-no-32.png
+ standardbutton-ok-128.png
+ standardbutton-ok-16.png
+ standardbutton-ok-32.png
+ standardbutton-open-128.png
+ standardbutton-open-16.png
+ standardbutton-open-32.png
+ standardbutton-save-128.png
+ standardbutton-save-16.png
+ standardbutton-save-32.png
+ standardbutton-yes-128.png
+ standardbutton-yes-16.png
+ standardbutton-yes-32.png
+ stop-24.png
+ stop-32.png
+ trash-128.png
+ trash-16.png
+ trash-32.png
+ up-128.png
+ up-16.png
+ up-32.png
+ viewdetailed-128.png
+ viewdetailed-16.png
+ viewdetailed-32.png
+ viewlist-128.png
+ viewlist-16.png
+ viewlist-32.png
+2 qcdestyle.cpp
+ qcdestyle.h
+ qcleanlooksstyle.cpp
+ qcleanlooksstyle.h
+ qcleanlooksstyle_p.h
+ qcommonstyle.cpp
+ qcommonstyle.h
+ qcommonstyle_p.h
+ qcommonstylepixmaps_p.h
+ qgtkpainter.cpp
+ qgtkpainter_p.h
+ qgtkstyle.cpp
+ qgtkstyle.h
+ qgtkstyle_p.cpp
+ qgtkstyle_p.h
+ qmacstyle_mac.h
+ qmacstyle_mac.mm
+ qmacstylepixmaps_mac_p.h
+ qmacstyle.qdoc
+ qmotifstyle.cpp
+ qmotifstyle.h
+ qmotifstyle_p.h
+ qplastiquestyle.cpp
+ qplastiquestyle.h
+ qproxystyle.cpp
+ qproxystyle.h
+ qproxystyle_p.h
+ qs60style.cpp
+ qs60style.h
+ qs60style_p.h
+ qs60style_s60.cpp
+ qs60style_simulated.cpp
+ qstyle.cpp
+ qstylefactory.cpp
+ qstylefactory.h
+ qstyle.h
+ qstylehelper.cpp
+ qstylehelper_p.h
+ qstyleoption.cpp
+ qstyleoption.h
+ qstyle_p.h
+ qstyleplugin.cpp
+ qstyleplugin.h
+ qstyle.qrc
+ qstyle_s60_simulated.qrc
+ qstylesheetstyle.cpp
+ qstylesheetstyle_default.cpp
+ qstylesheetstyle_p.h
+ qstyle_wince.qrc
+ qwindowscestyle.cpp
+ qwindowscestyle.h
+ qwindowscestyle_p.h
+ qwindowsmobilestyle.cpp
+ qwindowsmobilestyle.h
+ qwindowsmobilestyle_p.h
+ qwindowsstyle.cpp
+ qwindowsstyle.h
+ qwindowsstyle_p.h
+ qwindowsvistastyle.cpp
+ qwindowsvistastyle.h
+ qwindowsvistastyle_p.h
+ qwindowsxpstyle.cpp
+ qwindowsxpstyle.h
+ qwindowsxpstyle_p.h
+ styles.pri
+2 symbian/
+0 images/
+0 blank.png
+ busy12.png
+ busy3.png
+ busy6.png
+ busy9.png
+ closehand.png
+ cross.png
+ forbidden.png
+ handpoint.png
+ ibeam.png
+ openhand.png
+ pointer.png
+ sizeall.png
+ sizebdiag.png
+ sizefdiag.png
+ sizehor.png
+ sizever.png
+ splith.png
+ splitv.png
+ uparrow.png
+ wait10.png
+ wait11.png
+ wait12.png
+ wait1.png
+ wait2.png
+ wait3.png
+ wait4.png
+ wait5.png
+ wait6.png
+ wait7.png
+ wait8.png
+ wait9.png
+ whatsthis.png
+2 qsymbianevent.cpp
+ qsymbianevent.h
+ symbianresources.qrc
+2 text/
+0 qabstractfontengine_p.h
+ qabstractfontengine_qws.cpp
+ qabstractfontengine_qws.h
+ qabstracttextdocumentlayout.cpp
+ qabstracttextdocumentlayout.h
+ qabstracttextdocumentlayout_p.h
+ qcssparser.cpp
+ qcssparser_p.h
+ qcssscanner.cpp
+ qfont.cpp
+ qfontdatabase.cpp
+ qfontdatabase.h
+ qfontdatabase_mac.cpp
+ qfontdatabase_qws.cpp
+ qfontdatabase_s60.cpp
+ qfontdatabase_win.cpp
+ qfontdatabase_x11.cpp
+ qfontengine.cpp
+ qfontengine_ft.cpp
+ qfontengine_ft_p.h
+ qfontengineglyphcache_p.h
+ qfontengine_mac.mm
+ qfontengine_p.h
+ qfontengine_qpf.cpp
+ qfontengine_qpf_p.h
+ qfontengine_qws.cpp
+ qfontengine_s60.cpp
+ qfontengine_s60_p.h
+ qfontengine_win.cpp
+ qfontengine_win_p.h
+ qfontengine_x11.cpp
+ qfontengine_x11_p.h
+ qfont.h
+ qfontinfo.h
+ qfont_mac.cpp
+ qfontmetrics.cpp
+ qfontmetrics.h
+ qfont_p.h
+ qfont_qws.cpp
+ qfont_s60.cpp
+ qfontsubset.cpp
+ qfontsubset_p.h
+ qfont_win.cpp
+ qfont_x11.cpp
+ qfragmentmap.cpp
+ qfragmentmap_p.h
+ qpfutil.cpp
+ qsyntaxhighlighter.cpp
+ qsyntaxhighlighter.h
+ qtextcontrol.cpp
+ qtextcontrol_p.h
+ qtextcontrol_p_p.h
+ qtextcursor.cpp
+ qtextcursor.h
+ qtextcursor_p.h
+ qtextdocument.cpp
+ qtextdocumentfragment.cpp
+ qtextdocumentfragment.h
+ qtextdocumentfragment_p.h
+ qtextdocument.h
+ qtextdocumentlayout.cpp
+ qtextdocumentlayout_p.h
+ qtextdocument_p.cpp
+ qtextdocument_p.h
+ qtextdocumentwriter.cpp
+ qtextdocumentwriter.h
+ qtextengine.cpp
+ qtextengine_mac.cpp
+ qtextengine_p.h
+ qtextformat.cpp
+ qtextformat.h
+ qtextformat_p.h
+ qtexthtmlparser.cpp
+ qtexthtmlparser_p.h
+ qtextimagehandler.cpp
+ qtextimagehandler_p.h
+ qtextlayout.cpp
+ qtextlayout.h
+ qtextlist.cpp
+ qtextlist.h
+ qtextobject.cpp
+ qtextobject.h
+ qtextobject_p.h
+ qtextodfwriter.cpp
+ qtextodfwriter_p.h
+ qtextoption.cpp
+ qtextoption.h
+ qtexttable.cpp
+ qtexttable.h
+ qtexttable_p.h
+ qzip.cpp
+ qzipreader_p.h
+ qzipwriter_p.h
+ text.pri
+2 util/
+0 qcompleter.cpp
+ qcompleter.h
+ qcompleter_p.h
+ qdesktopservices.cpp
+ qdesktopservices.h
+ qdesktopservices_mac.cpp
+ qdesktopservices_qws.cpp
+ qdesktopservices_s60.cpp
+ qdesktopservices_win.cpp
+ qdesktopservices_x11.cpp
+ qsystemtrayicon.cpp
+ qsystemtrayicon.h
+ qsystemtrayicon_mac.mm
+ qsystemtrayicon_p.h
+ qsystemtrayicon_qws.cpp
+ qsystemtrayicon_win.cpp
+ qsystemtrayicon_x11.cpp
+ qundogroup.cpp
+ qundogroup.h
+ qundostack.cpp
+ qundostack.h
+ qundostack_p.h
+ qundoview.cpp
+ qundoview.h
+ util.pri
+2 widgets/
+0 qabstractbutton.cpp
+ qabstractbutton.h
+ qabstractbutton_p.h
+ qabstractscrollarea.cpp
+ qabstractscrollarea.h
+ qabstractscrollarea_p.h
+ qabstractslider.cpp
+ qabstractslider.h
+ qabstractslider_p.h
+ qabstractspinbox.cpp
+ qabstractspinbox.h
+ qabstractspinbox_p.h
+ qbuttongroup.cpp
+ qbuttongroup.h
+ qcalendartextnavigator_p.h
+ qcalendarwidget.cpp
+ qcalendarwidget.h
+ qcheckbox.cpp
+ qcheckbox.h
+ qcocoamenu_mac.mm
+ qcocoamenu_mac_p.h
+ qcocoatoolbardelegate_mac.mm
+ qcocoatoolbardelegate_mac_p.h
+ qcombobox.cpp
+ qcombobox.h
+ qcombobox_p.h
+ qcommandlinkbutton.cpp
+ qcommandlinkbutton.h
+ qdatetimeedit.cpp
+ qdatetimeedit.h
+ qdatetimeedit_p.h
+ qdial.cpp
+ qdial.h
+ qdialogbuttonbox.cpp
+ qdialogbuttonbox.h
+ qdockarealayout.cpp
+ qdockarealayout_p.h
+ qdockwidget.cpp
+ qdockwidget.h
+ qdockwidget_p.h
+ qeffects.cpp
+ qeffects_p.h
+ qfocusframe.cpp
+ qfocusframe.h
+ qfontcombobox.cpp
+ qfontcombobox.h
+ qframe.cpp
+ qframe.h
+ qframe_p.h
+ qgroupbox.cpp
+ qgroupbox.h
+ qlabel.cpp
+ qlabel.h
+ qlabel_p.h
+ qlcdnumber.cpp
+ qlcdnumber.h
+ qlinecontrol.cpp
+ qlinecontrol_p.h
+ qlineedit.cpp
+ qlineedit.h
+ qlineedit_p.cpp
+ qlineedit_p.h
+ qmaccocoaviewcontainer_mac.h
+ qmaccocoaviewcontainer_mac.mm
+ qmacnativewidget_mac.h
+ qmacnativewidget_mac.mm
+ qmainwindow.cpp
+ qmainwindow.h
+ qmainwindowlayout.cpp
+ qmainwindowlayout_mac.mm
+ qmainwindowlayout_p.h
+ qmdiarea.cpp
+ qmdiarea.h
+ qmdiarea_p.h
+ qmdisubwindow.cpp
+ qmdisubwindow.h
+ qmdisubwindow_p.h
+ qmenubar.cpp
+ qmenubar.h
+ qmenubar_p.h
+ qmenu.cpp
+ qmenudata.cpp
+ qmenudata.h
+ qmenu.h
+ qmenu_mac.mm
+ qmenu_p.h
+ qmenu_symbian.cpp
+ qmenu_wince.cpp
+ qmenu_wince.rc
+ qmenu_wince_resource_p.h
+ qplaintextedit.cpp
+ qplaintextedit.h
+ qplaintextedit_p.h
+ qprintpreviewwidget.cpp
+ qprintpreviewwidget.h
+ qprogressbar.cpp
+ qprogressbar.h
+ qpushbutton.cpp
+ qpushbutton.h
+ qpushbutton_p.h
+ qradiobutton.cpp
+ qradiobutton.h
+ qrubberband.cpp
+ qrubberband.h
+ qscrollarea.cpp
+ qscrollarea.h
+ qscrollarea_p.h
+ qscrollbar.cpp
+ qscrollbar.h
+ qsizegrip.cpp
+ qsizegrip.h
+ qslider.cpp
+ qslider.h
+ qspinbox.cpp
+ qspinbox.h
+ qsplashscreen.cpp
+ qsplashscreen.h
+ qsplitter.cpp
+ qsplitter.h
+ qsplitter_p.h
+ qstackedwidget.cpp
+ qstackedwidget.h
+ qstatusbar.cpp
+ qstatusbar.h
+ qtabbar.cpp
+ qtabbar.h
+ qtabbar_p.h
+ qtabwidget.cpp
+ qtabwidget.h
+ qtextbrowser.cpp
+ qtextbrowser.h
+ qtextedit.cpp
+ qtextedit.h
+ qtextedit_p.h
+ qtoolbararealayout.cpp
+ qtoolbararealayout_p.h
+ qtoolbar.cpp
+ qtoolbarextension.cpp
+ qtoolbarextension_p.h
+ qtoolbar.h
+ qtoolbarlayout.cpp
+ qtoolbarlayout_p.h
+ qtoolbar_p.h
+ qtoolbarseparator.cpp
+ qtoolbarseparator_p.h
+ qtoolbox.cpp
+ qtoolbox.h
+ qtoolbutton.cpp
+ qtoolbutton.h
+ qvalidator.cpp
+ qvalidator.h
+ qwidgetanimator.cpp
+ qwidgetanimator_p.h
+ qwidgetresizehandler.cpp
+ qwidgetresizehandler_p.h
+ qworkspace.cpp
+ qworkspace.h
+ widgets.pri
+3 multimedia/
+0 audio/
+0 audio.pri
+ qaudio.cpp
+ qaudiodevicefactory.cpp
+ qaudiodevicefactory_p.h
+ qaudiodeviceinfo_alsa_p.cpp
+ qaudiodeviceinfo_alsa_p.h
+ qaudiodeviceinfo.cpp
+ qaudiodeviceinfo.h
+ qaudiodeviceinfo_mac_p.cpp
+ qaudiodeviceinfo_mac_p.h
+ qaudiodeviceinfo_win32_p.cpp
+ qaudiodeviceinfo_win32_p.h
+ qaudioengine.cpp
+ qaudioengine.h
+ qaudioengineplugin.cpp
+ qaudioengineplugin.h
+ qaudioformat.cpp
+ qaudioformat.h
+ qaudio.h
+ qaudioinput_alsa_p.cpp
+ qaudioinput_alsa_p.h
+ qaudioinput.cpp
+ qaudioinput.h
+ qaudioinput_mac_p.cpp
+ qaudioinput_mac_p.h
+ qaudioinput_win32_p.cpp
+ qaudioinput_win32_p.h
+ qaudio_mac.cpp
+ qaudio_mac_p.h
+ qaudiooutput_alsa_p.cpp
+ qaudiooutput_alsa_p.h
+ qaudiooutput.cpp
+ qaudiooutput.h
+ qaudiooutput_mac_p.cpp
+ qaudiooutput_mac_p.h
+ qaudiooutput_win32_p.cpp
+ qaudiooutput_win32_p.h
+2 multimedia.pro
+ video/
+0 qabstractvideobuffer.cpp
+ qabstractvideobuffer.h
+ qabstractvideobuffer_p.h
+ qabstractvideosurface.cpp
+ qabstractvideosurface.h
+ qabstractvideosurface_p.h
+ qimagevideobuffer.cpp
+ qimagevideobuffer_p.h
+ qmemoryvideobuffer.cpp
+ qmemoryvideobuffer_p.h
+ qvideoframe.cpp
+ qvideoframe.h
+ qvideosurfaceformat.cpp
+ qvideosurfaceformat.h
+ video.pri
+3 network/
+0 access/
+0 access.pri
+ qabstractnetworkcache.cpp
+ qabstractnetworkcache.h
+ qabstractnetworkcache_p.h
+ qftp.cpp
+ qftp.h
+ qhttp.cpp
+ qhttp.h
+ qhttpnetworkconnectionchannel.cpp
+ qhttpnetworkconnectionchannel_p.h
+ qhttpnetworkconnection.cpp
+ qhttpnetworkconnection_p.h
+ qhttpnetworkheader.cpp
+ qhttpnetworkheader_p.h
+ qhttpnetworkreply.cpp
+ qhttpnetworkreply_p.h
+ qhttpnetworkrequest.cpp
+ qhttpnetworkrequest_p.h
+ qnetworkaccessbackend.cpp
+ qnetworkaccessbackend_p.h
+ qnetworkaccesscachebackend.cpp
+ qnetworkaccesscachebackend_p.h
+ qnetworkaccesscache.cpp
+ qnetworkaccesscache_p.h
+ qnetworkaccessdatabackend.cpp
+ qnetworkaccessdatabackend_p.h
+ qnetworkaccessdebugpipebackend.cpp
+ qnetworkaccessdebugpipebackend_p.h
+ qnetworkaccessfilebackend.cpp
+ qnetworkaccessfilebackend_p.h
+ qnetworkaccessftpbackend.cpp
+ qnetworkaccessftpbackend_p.h
+ qnetworkaccesshttpbackend.cpp
+ qnetworkaccesshttpbackend_p.h
+ qnetworkaccessmanager.cpp
+ qnetworkaccessmanager.h
+ qnetworkaccessmanager_p.h
+ qnetworkcookie.cpp
+ qnetworkcookie.h
+ qnetworkcookiejar.cpp
+ qnetworkcookiejar.h
+ qnetworkcookiejar_p.h
+ qnetworkcookie_p.h
+ qnetworkdiskcache.cpp
+ qnetworkdiskcache.h
+ qnetworkdiskcache_p.h
+ qnetworkreply.cpp
+ qnetworkreply.h
+ qnetworkreplyimpl.cpp
+ qnetworkreplyimpl_p.h
+ qnetworkreply_p.h
+ qnetworkrequest.cpp
+ qnetworkrequest.h
+ qnetworkrequest_p.h
+2 kernel/
+0 kernel.pri
+ qauthenticator.cpp
+ qauthenticator.h
+ qauthenticator_p.h
+ qhostaddress.cpp
+ qhostaddress.h
+ qhostaddress_p.h
+ qhostinfo.cpp
+ qhostinfo.h
+ qhostinfo_p.h
+ qhostinfo_unix.cpp
+ qhostinfo_win.cpp
+ qnetworkinterface.cpp
+ qnetworkinterface.h
+ qnetworkinterface_p.h
+ qnetworkinterface_symbian.cpp
+ qnetworkinterface_unix.cpp
+ qnetworkinterface_win.cpp
+ qnetworkinterface_win_p.h
+ qnetworkproxy.cpp
+ qnetworkproxy_generic.cpp
+ qnetworkproxy.h
+ qnetworkproxy_mac.cpp
+ qnetworkproxy_p.h
+ qnetworkproxy_win.cpp
+ qurlinfo.cpp
+ qurlinfo.h
+2 network.pro
+ network.qrc
+ socket/
+0 qabstractsocket.cpp
+ qabstractsocketengine.cpp
+ qabstractsocketengine_p.h
+ qabstractsocket.h
+ qabstractsocket_p.h
+ qhttpsocketengine.cpp
+ qhttpsocketengine_p.h
+ qlocalserver.cpp
+ qlocalserver.h
+ qlocalserver_p.h
+ qlocalserver_tcp.cpp
+ qlocalserver_unix.cpp
+ qlocalserver_win.cpp
+ qlocalsocket.cpp
+ qlocalsocket.h
+ qlocalsocket_p.h
+ qlocalsocket_tcp.cpp
+ qlocalsocket_unix.cpp
+ qlocalsocket_win.cpp
+ qnativesocketengine.cpp
+ qnativesocketengine_p.h
+ qnativesocketengine_unix.cpp
+ qnativesocketengine_win.cpp
+ qnet_unix_p.h
+ qsocks5socketengine.cpp
+ qsocks5socketengine_p.h
+ qtcpserver.cpp
+ qtcpserver.h
+ qtcpsocket.cpp
+ qtcpsocket.h
+ qtcpsocket_p.h
+ qudpsocket.cpp
+ qudpsocket.h
+ socket.pri
+2 ssl/
+0 qsslcertificate.cpp
+ qsslcertificate.h
+ qsslcertificate_p.h
+ qsslcipher.cpp
+ qsslcipher.h
+ qsslcipher_p.h
+ qsslconfiguration.cpp
+ qsslconfiguration.h
+ qsslconfiguration_p.h
+ qssl.cpp
+ qsslerror.cpp
+ qsslerror.h
+ qssl.h
+ qsslkey.cpp
+ qsslkey.h
+ qsslkey_p.h
+ qsslsocket.cpp
+ qsslsocket.h
+ qsslsocket_openssl.cpp
+ qsslsocket_openssl_p.h
+ qsslsocket_openssl_symbols.cpp
+ qsslsocket_openssl_symbols_p.h
+ qsslsocket_p.h
+ qt-ca-bundle.crt
+ ssl.pri
+3 opengl/
+0 gl2paintengineex/
+0 qgl2pexvertexarray.cpp
+ qgl2pexvertexarray_p.h
+ qglcustomshaderstage.cpp
+ qglcustomshaderstage_p.h
+ qglengineshadermanager.cpp
+ qglengineshadermanager_p.h
+ qglengineshadersource_p.h
+ qglgradientcache.cpp
+ qglgradientcache_p.h
+ qpaintengineex_opengl2.cpp
+ qpaintengineex_opengl2_p.h
+ qtriangulatingstroker.cpp
+ qtriangulatingstroker_p.h
+2 opengl.pro
+ qgl_cl_p.h
+ qglcolormap.cpp
+ qglcolormap.h
+ qgl.cpp
+ qgl_egl.cpp
+ qgl_egl_p.h
+ qglextensions.cpp
+ qglextensions_p.h
+ qglframebufferobject.cpp
+ qglframebufferobject.h
+ qglframebufferobject_p.h
+ qgl.h
+ qgl_mac.mm
+ qglpaintdevice.cpp
+ qglpaintdevice_p.h
+ qgl_p.h
+ qglpixelbuffer.cpp
+ qglpixelbuffer_egl.cpp
+ qglpixelbuffer.h
+ qglpixelbuffer_mac.mm
+ qglpixelbuffer_p.h
+ qglpixelbuffer_win.cpp
+ qglpixelbuffer_x11.cpp
+ qglpixmapfilter.cpp
+ qglpixmapfilter_p.h
+ qgl_qws.cpp
+ qglscreen_qws.cpp
+ qglscreen_qws.h
+ qglshaderprogram.cpp
+ qglshaderprogram.h
+ qgl_wince.cpp
+ qgl_win.cpp
+ qglwindowsurface_qws.cpp
+ qglwindowsurface_qws_p.h
+ qgl_x11.cpp
+ qgl_x11egl.cpp
+ qgraphicsshadereffect.cpp
+ qgraphicsshadereffect_p.h
+ qgraphicssystem_gl.cpp
+ qgraphicssystem_gl_p.h
+ qpaintengine_opengl.cpp
+ qpaintengine_opengl_p.h
+ qpixmapdata_gl.cpp
+ qpixmapdata_gl_p.h
+ qpixmapdata_x11gl_egl.cpp
+ qpixmapdata_x11gl_p.h
+ qwindowsurface_gl.cpp
+ qwindowsurface_gl_p.h
+ qwindowsurface_x11gl.cpp
+ qwindowsurface_x11gl_p.h
+ util/
+0 brushes.conf
+ brush_painter.glsl
+ composition_mode_colorburn.glsl
+ composition_mode_colordodge.glsl
+ composition_mode_darken.glsl
+ composition_mode_difference.glsl
+ composition_mode_exclusion.glsl
+ composition_mode_hardlight.glsl
+ composition_mode_lighten.glsl
+ composition_mode_multiply.glsl
+ composition_mode_overlay.glsl
+ composition_modes.conf
+ composition_mode_screen.glsl
+ composition_mode_softlight.glsl
+ conical_brush.glsl
+ ellipse_aa.glsl
+ fast_painter.glsl
+ fragmentprograms_p.h
+ generator.cpp
+ generator.pro
+ glsl_to_include.sh
+ linear_brush.glsl
+ masks.conf
+ painter.glsl
+ painter_nomask.glsl
+ pattern_brush.glsl
+ radial_brush.glsl
+ README-GLSL
+ simple_porter_duff.glsl
+ solid_brush.glsl
+ texture_brush.glsl
+ trap_exact_aa.glsl
+3 openvg/
+0 openvg.pro
+ qpaintengine_vg.cpp
+ qpaintengine_vg_p.h
+ qpixmapdata_vg.cpp
+ qpixmapdata_vg_p.h
+ qpixmapfilter_vg.cpp
+ qpixmapfilter_vg_p.h
+ qvgcompositionhelper_p.h
+ qvg.h
+ qvg_p.h
+ qwindowsurface_vg.cpp
+ qwindowsurface_vgegl.cpp
+ qwindowsurface_vgegl_p.h
+ qwindowsurface_vg_p.h
+2 phonon/
+0 phonon.pro
+2 plugins/
+0 accessible/
+0 accessible.pro
+ compat/
+0 compat.pro
+ main.cpp
+ q3complexwidgets.cpp
+ q3complexwidgets.h
+ q3simplewidgets.cpp
+ q3simplewidgets.h
+ qaccessiblecompat.cpp
+ qaccessiblecompat.h
+2 qaccessiblebase.pri
+ widgets/
+0 complexwidgets.cpp
+ complexwidgets.h
+ main.cpp
+ qaccessiblemenu.cpp
+ qaccessiblemenu.h
+ qaccessiblewidgets.cpp
+ qaccessiblewidgets.h
+ rangecontrols.cpp
+ rangecontrols.h
+ simplewidgets.cpp
+ simplewidgets.h
+ widgets.pro
+3 audio/
+0 audio.pro
+2 codecs/
+0 cn/
+0 cn.pro
+ main.cpp
+ qgb18030codec.cpp
+ qgb18030codec.h
+2 codecs.pro
+ jp/
+0 jp.pro
+ main.cpp
+ qeucjpcodec.cpp
+ qeucjpcodec.h
+ qfontjpcodec.cpp
+ qfontjpcodec.h
+ qjiscodec.cpp
+ qjiscodec.h
+ qjpunicode.cpp
+ qjpunicode.h
+ qsjiscodec.cpp
+ qsjiscodec.h
+2 kr/
+0 cp949codetbl.h
+ kr.pro
+ main.cpp
+ qeuckrcodec.cpp
+ qeuckrcodec.h
+2 tw/
+0 main.cpp
+ qbig5codec.cpp
+ qbig5codec.h
+ tw.pro
+3 decorations/
+0 decorations.pro
+ default/
+0 default.pro
+ main.cpp
+2 styled/
+0 main.cpp
+ styled.pro
+2 windows/
+0 main.cpp
+ windows.pro
+3 gfxdrivers/
+0 ahi/
+0 ahi.pro
+ qscreenahiplugin.cpp
+ qscreenahi_qws.cpp
+ qscreenahi_qws.h
+2 directfb/
+0 directfb.pro
+ qdirectfbkeyboard.cpp
+ qdirectfbkeyboard.h
+ qdirectfbmouse.cpp
+ qdirectfbmouse.h
+ qdirectfbpaintdevice.cpp
+ qdirectfbpaintdevice.h
+ qdirectfbpaintengine.cpp
+ qdirectfbpaintengine.h
+ qdirectfbpixmap.cpp
+ qdirectfbpixmap.h
+ qdirectfbscreen.cpp
+ qdirectfbscreen.h
+ qdirectfbscreenplugin.cpp
+ qdirectfbwindowsurface.cpp
+ qdirectfbwindowsurface.h
+2 gfxdrivers.pro
+ linuxfb/
+0 linuxfb.pro
+ main.cpp
+2 powervr/
+0 powervr.pri
+ powervr.pro
+ pvreglscreen/
+0 pvreglscreen.cpp
+ pvreglscreen.h
+ pvreglscreenplugin.cpp
+ pvreglscreen.pro
+ pvreglwindowsurface.cpp
+ pvreglwindowsurface.h
+2 QWSWSEGL/
+0 pvrqwsdrawable.c
+ pvrqwsdrawable.h
+ pvrqwsdrawable_p.h
+ pvrqwswsegl.c
+ QWSWSEGL.pro
+2 README
+2 qvfb/
+0 main.cpp
+ qvfb.pro
+2 transformed/
+0 main.cpp
+ transformed.pro
+2 vnc/
+0 main.cpp
+ qscreenvnc_p.h
+ qscreenvnc_qws.cpp
+ qscreenvnc_qws.h
+ vnc.pro
+3 graphicssystems/
+0 graphicssystems.pro
+ opengl/
+0 main.cpp
+ opengl.pro
+2 openvg/
+0 main.cpp
+ openvg.pro
+ qgraphicssystem_vg.cpp
+ qgraphicssystem_vg_p.h
+2 shivavg/
+0 main.cpp
+ README
+ shivavggraphicssystem.cpp
+ shivavggraphicssystem.h
+ shivavg.pro
+ shivavgwindowsurface.cpp
+ shivavgwindowsurface.h
+2 trace/
+0 main.cpp
+ qgraphicssystem_trace.cpp
+ qgraphicssystem_trace_p.h
+ trace.pro
+3 iconengines/
+0 iconengines.pro
+ svgiconengine/
+0 main.cpp
+ qsvgiconengine.cpp
+ qsvgiconengine.h
+ svgiconengine.pro
+3 imageformats/
+0 gif/
+0 gif.pro
+ main.cpp
+ qgifhandler.cpp
+ qgifhandler.h
+2 ico/
+0 ico.pro
+ main.cpp
+ qicohandler.cpp
+ qicohandler.h
+2 imageformats.pro
+ jpeg/
+0 jpeg.pro
+ main.cpp
+ qjpeghandler.cpp
+ qjpeghandler.h
+2 mng/
+0 main.cpp
+ mng.pro
+ qmnghandler.cpp
+ qmnghandler.h
+2 svg/
+0 main.cpp
+ qsvgiohandler.cpp
+ qsvgiohandler.h
+ svg.pro
+2 tiff/
+0 main.cpp
+ qtiffhandler.cpp
+ qtiffhandler.h
+ tiff.pro
+3 inputmethods/
+0 imsw-multi/
+0 imsw-multi.pro
+ qmultiinputcontext.cpp
+ qmultiinputcontext.h
+ qmultiinputcontextplugin.cpp
+ qmultiinputcontextplugin.h
+2 inputmethods.pro
+2 kbddrivers/
+0 kbddrivers.pro
+ linuxinput/
+0 linuxinput.pro
+ main.cpp
+3 mousedrivers/
+0 linuxtp/
+0 linuxtp.pro
+ main.cpp
+2 mousedrivers.pro
+ pc/
+0 main.cpp
+ pc.pro
+2 tslib/
+0 main.cpp
+ tslib.pro
+3 phonon/
+0 ds9/
+0 ds9.pro
+2 gstreamer/
+0 gstreamer.pro
+2 mmf/
+0 mmf.pro
+2 phonon.pro
+ qt7/
+0 qt7.pro
+2 waveout/
+0 waveout.pro
+3 plugins.pro
+ qpluginbase.pri
+ s60/
+0 3_1/
+0 3_1.pro
+2 3_2/
+0 3_2.pro
+2 5_0/
+0 5_0.pro
+2 bwins/
+0 qts60pluginu.def
+2 eabi/
+0 qts60pluginu.def
+2 s60pluginbase.pri
+ s60.pro
+ src/
+0 qcoreapplication_3_1.cpp
+ qcoreapplication_3_2.cpp
+ qdesktopservices_3_1.cpp
+ qdesktopservices_3_2.cpp
+ qlocale_3_1.cpp
+ qlocale_3_2.cpp
+3 script/
+0 qtdbus/
+0 main.cpp
+ main.h
+ qtdbus.pro
+2 script.pro
+2 sqldrivers/
+0 db2/
+0 db2.pro
+ main.cpp
+ README
+2 ibase/
+0 ibase.pro
+ main.cpp
+2 mysql/
+0 main.cpp
+ mysql.pro
+ README
+2 oci/
+0 main.cpp
+ oci.pro
+ README
+2 odbc/
+0 main.cpp
+ odbc.pro
+ README
+2 psql/
+0 main.cpp
+ psql.pro
+ README
+2 qsqldriverbase.pri
+ README
+ sqldrivers.pro
+ sqlite/
+ sqlite2/
+0 README
+ smain.cpp
+ sqlite2.pro
+2 sqlite/README
+ sqlite/smain.cpp
+ sqlite/sqlite.pro
+ sqlite_symbian/
+0 SQLite3_v9.2.zip
+ sqlite_symbian.pro
+2 tds/
+0 main.cpp
+ README
+ tds.pro
+4 qbase.pri
+ qt3support/
+0 canvas/
+0 canvas.pri
+ q3canvas.cpp
+ q3canvas.h
+2 dialogs/
+0 dialogs.pri
+ q3filedialog.cpp
+ q3filedialog.h
+ q3filedialog_mac.cpp
+ q3filedialog_win.cpp
+ q3progressdialog.cpp
+ q3progressdialog.h
+ q3tabdialog.cpp
+ q3tabdialog.h
+ q3wizard.cpp
+ q3wizard.h
+2 itemviews/
+0 itemviews.pri
+ q3iconview.cpp
+ q3iconview.h
+ q3listbox.cpp
+ q3listbox.h
+ q3listview.cpp
+ q3listview.h
+ q3table.cpp
+ q3table.h
+2 network/
+0 network.pri
+ q3dns.cpp
+ q3dns.h
+ q3ftp.cpp
+ q3ftp.h
+ q3http.cpp
+ q3http.h
+ q3localfs.cpp
+ q3localfs.h
+ q3network.cpp
+ q3network.h
+ q3networkprotocol.cpp
+ q3networkprotocol.h
+ q3serversocket.cpp
+ q3serversocket.h
+ q3socket.cpp
+ q3socketdevice.cpp
+ q3socketdevice.h
+ q3socketdevice_unix.cpp
+ q3socketdevice_win.cpp
+ q3socket.h
+ q3url.cpp
+ q3url.h
+ q3urloperator.cpp
+ q3urloperator.h
+2 other/
+0 other.pri
+ q3accel.cpp
+ q3accel.h
+ q3boxlayout.cpp
+ q3boxlayout.h
+ q3dragobject.cpp
+ q3dragobject.h
+ q3dropsite.cpp
+ q3dropsite.h
+ q3gridlayout.h
+ q3membuf.cpp
+ q3membuf_p.h
+ q3mimefactory.cpp
+ q3mimefactory.h
+ q3polygonscanner.cpp
+ q3polygonscanner.h
+ q3process.cpp
+ q3process.h
+ q3process_unix.cpp
+ q3process_win.cpp
+ qiconset.h
+ qt_compat_pch.h
+2 painting/
+0 painting.pri
+ q3paintdevicemetrics.cpp
+ q3paintdevicemetrics.h
+ q3paintengine_svg.cpp
+ q3paintengine_svg_p.h
+ q3painter.cpp
+ q3painter.h
+ q3picture.cpp
+ q3picture.h
+ q3pointarray.cpp
+ q3pointarray.h
+2 qt3support.pro
+ sql/
+0 q3databrowser.cpp
+ q3databrowser.h
+ q3datatable.cpp
+ q3datatable.h
+ q3dataview.cpp
+ q3dataview.h
+ q3editorfactory.cpp
+ q3editorfactory.h
+ q3sqlcursor.cpp
+ q3sqlcursor.h
+ q3sqleditorfactory.cpp
+ q3sqleditorfactory.h
+ q3sqlfieldinfo.h
+ q3sqlfieldinfo.qdoc
+ q3sqlform.cpp
+ q3sqlform.h
+ q3sqlmanager_p.cpp
+ q3sqlmanager_p.h
+ q3sqlpropertymap.cpp
+ q3sqlpropertymap.h
+ q3sqlrecordinfo.h
+ q3sqlrecordinfo.qdoc
+ q3sqlselectcursor.cpp
+ q3sqlselectcursor.h
+ sql.pri
+2 text/
+0 q3multilineedit.cpp
+ q3multilineedit.h
+ q3richtext.cpp
+ q3richtext_p.cpp
+ q3richtext_p.h
+ q3simplerichtext.cpp
+ q3simplerichtext.h
+ q3stylesheet.cpp
+ q3stylesheet.h
+ q3syntaxhighlighter.cpp
+ q3syntaxhighlighter.h
+ q3syntaxhighlighter_p.h
+ q3textbrowser.cpp
+ q3textbrowser.h
+ q3textedit.cpp
+ q3textedit.h
+ q3textstream.cpp
+ q3textstream.h
+ q3textview.cpp
+ q3textview.h
+ text.pri
+2 tools/
+0 q3asciicache.h
+ q3asciicache.qdoc
+ q3asciidict.h
+ q3asciidict.qdoc
+ q3cache.h
+ q3cache.qdoc
+ q3cleanuphandler.h
+ q3cstring.cpp
+ q3cstring.h
+ q3deepcopy.cpp
+ q3deepcopy.h
+ q3dict.h
+ q3dict.qdoc
+ q3garray.cpp
+ q3garray.h
+ q3gcache.cpp
+ q3gcache.h
+ q3gdict.cpp
+ q3gdict.h
+ q3glist.cpp
+ q3glist.h
+ q3gvector.cpp
+ q3gvector.h
+ q3intcache.h
+ q3intcache.qdoc
+ q3intdict.h
+ q3intdict.qdoc
+ q3memarray.h
+ q3memarray.qdoc
+ q3objectdict.h
+ q3ptrcollection.cpp
+ q3ptrcollection.h
+ q3ptrdict.h
+ q3ptrdict.qdoc
+ q3ptrlist.h
+ q3ptrlist.qdoc
+ q3ptrqueue.h
+ q3ptrqueue.qdoc
+ q3ptrstack.h
+ q3ptrstack.qdoc
+ q3ptrvector.h
+ q3ptrvector.qdoc
+ q3semaphore.cpp
+ q3semaphore.h
+ q3shared.cpp
+ q3shared.h
+ q3signal.cpp
+ q3signal.h
+ q3sortedlist.h
+ q3strlist.h
+ q3strvec.h
+ q3tl.h
+ q3valuelist.h
+ q3valuelist.qdoc
+ q3valuestack.h
+ q3valuestack.qdoc
+ q3valuevector.h
+ q3valuevector.qdoc
+ tools.pri
+2 widgets/
+0 q3action.cpp
+ q3action.h
+ q3button.cpp
+ q3buttongroup.cpp
+ q3buttongroup.h
+ q3button.h
+ q3combobox.cpp
+ q3combobox.h
+ q3datetimeedit.cpp
+ q3datetimeedit.h
+ q3dockarea.cpp
+ q3dockarea.h
+ q3dockwindow.cpp
+ q3dockwindow.h
+ q3frame.cpp
+ q3frame.h
+ q3grid.cpp
+ q3grid.h
+ q3gridview.cpp
+ q3gridview.h
+ q3groupbox.cpp
+ q3groupbox.h
+ q3hbox.cpp
+ q3hbox.h
+ q3header.cpp
+ q3header.h
+ q3hgroupbox.cpp
+ q3hgroupbox.h
+ q3mainwindow.cpp
+ q3mainwindow.h
+ q3mainwindow_p.h
+ q3popupmenu.cpp
+ q3popupmenu.h
+ q3progressbar.cpp
+ q3progressbar.h
+ q3rangecontrol.cpp
+ q3rangecontrol.h
+ q3scrollview.cpp
+ q3scrollview.h
+ q3spinwidget.cpp
+ q3titlebar.cpp
+ q3titlebar_p.h
+ q3toolbar.cpp
+ q3toolbar.h
+ q3vbox.cpp
+ q3vbox.h
+ q3vgroupbox.cpp
+ q3vgroupbox.h
+ q3whatsthis.cpp
+ q3whatsthis.h
+ q3widgetstack.cpp
+ q3widgetstack.h
+ widgets.pri
+3 qt_install.pri
+ qt_targets.pri
+ s60installs/
+0 bwins/
+0 phononu.def
+ QtCoreu.def
+ QtGuiu.def
+ QtMultimediau.def
+ QtNetworku.def
+ QtScriptu.def
+ QtSqlu.def
+ QtSvgu.def
+ QtTestu.def
+ QtWebKitu.def
+ QtXmlPatternsu.def
+ QtXmlu.def
+2 eabi/
+0 phononu.def
+ QtCoreu.def
+ QtGuiu.def
+ QtMultimediau.def
+ QtNetworku.def
+ QtOpenVGu.def
+ QtScriptu.def
+ QtSqlu.def
+ QtSvgu.def
+ QtTestu.def
+ QtWebKitu.def
+ QtXmlPatternsu.def
+ QtXmlu.def
+2 .gitignore
+ qtdemoapps.iby
+ qt.iby
+ qt.svg
+ s60installs.pro
+ selfsigned.cer
+ selfsigned.key
+2 s60main/
+0 qts60main.cpp
+ qts60main_mcrt0.cpp
+ s60main.pro
+2 script/
+0 api/
+0 api.pri
+ qscriptable.cpp
+ qscriptable.h
+ qscriptable_p.h
+ qscriptclass.cpp
+ qscriptclass.h
+ qscriptclasspropertyiterator.cpp
+ qscriptclasspropertyiterator.h
+ qscriptcontext.cpp
+ qscriptcontext.h
+ qscriptcontextinfo.cpp
+ qscriptcontextinfo.h
+ qscriptcontext_p.h
+ qscriptengineagent.cpp
+ qscriptengineagent.h
+ qscriptengineagent_p.h
+ qscriptengine.cpp
+ qscriptengine.h
+ qscriptengine_p.h
+ qscriptextensioninterface.h
+ qscriptextensionplugin.cpp
+ qscriptextensionplugin.h
+ qscriptprogram.cpp
+ qscriptprogram.h
+ qscriptprogram_p.h
+ qscriptstring.cpp
+ qscriptstring.h
+ qscriptstring_p.h
+ qscriptvalue.cpp
+ qscriptvalue.h
+ qscriptvalueiterator.cpp
+ qscriptvalueiterator.h
+ qscriptvalue_p.h
+2 bridge/
+0 bridge.pri
+ qscriptactivationobject.cpp
+ qscriptactivationobject_p.h
+ qscriptclassobject.cpp
+ qscriptclassobject_p.h
+ qscriptdeclarativeclass.cpp
+ qscriptdeclarativeclass_p.h
+ qscriptdeclarativeobject.cpp
+ qscriptdeclarativeobject_p.h
+ qscriptfunction.cpp
+ qscriptfunction_p.h
+ qscriptglobalobject.cpp
+ qscriptglobalobject_p.h
+ qscriptobject.cpp
+ qscriptobject_p.h
+ qscriptqobject.cpp
+ qscriptqobject_p.h
+ qscriptvariant.cpp
+ qscriptvariant_p.h
+2 parser/
+0 parser.pri
+ qscriptast.cpp
+ qscriptastfwd_p.h
+ qscriptast_p.h
+ qscriptastvisitor.cpp
+ qscriptastvisitor_p.h
+ qscript.g
+ qscriptgrammar.cpp
+ qscriptgrammar_p.h
+ qscriptlexer.cpp
+ qscriptlexer_p.h
+ qscriptparser.cpp
+ qscriptparser_p.h
+ qscriptsyntaxchecker.cpp
+ qscriptsyntaxchecker_p.h
+2 script.pri
+ script.pro
+2 scripttools/
+0 debugging/
+0 debugging.pri
+ images/
+0 breakpoint.png
+ breakpoint.svg
+ d_breakpoint.png
+ d_breakpoint.svg
+ delete.png
+ d_interrupt.png
+ d_play.png
+ find.png
+ interrupt.png
+ location.png
+ location.svg
+ mac/
+0 closetab.png
+ next.png
+ plus.png
+ previous.png
+2 new.png
+ play.png
+ reload.png
+ return.png
+ runtocursor.png
+ runtonewscript.png
+ stepinto.png
+ stepout.png
+ stepover.png
+ win/
+0 closetab.png
+ next.png
+ plus.png
+ previous.png
+2 wrap.png
+2 qscriptbreakpointdata.cpp
+ qscriptbreakpointdata_p.h
+ qscriptbreakpointsmodel.cpp
+ qscriptbreakpointsmodel_p.h
+ qscriptbreakpointswidget.cpp
+ qscriptbreakpointswidgetinterface.cpp
+ qscriptbreakpointswidgetinterface_p.h
+ qscriptbreakpointswidgetinterface_p_p.h
+ qscriptbreakpointswidget_p.h
+ qscriptcompletionproviderinterface_p.h
+ qscriptcompletiontask.cpp
+ qscriptcompletiontaskinterface.cpp
+ qscriptcompletiontaskinterface_p.h
+ qscriptcompletiontaskinterface_p_p.h
+ qscriptcompletiontask_p.h
+ qscriptdebuggeragent.cpp
+ qscriptdebuggeragent_p.h
+ qscriptdebuggeragent_p_p.h
+ qscriptdebuggerbackend.cpp
+ qscriptdebuggerbackend_p.h
+ qscriptdebuggerbackend_p_p.h
+ qscriptdebuggercodefinderwidget.cpp
+ qscriptdebuggercodefinderwidgetinterface.cpp
+ qscriptdebuggercodefinderwidgetinterface_p.h
+ qscriptdebuggercodefinderwidgetinterface_p_p.h
+ qscriptdebuggercodefinderwidget_p.h
+ qscriptdebuggercodeview.cpp
+ qscriptdebuggercodeviewinterface.cpp
+ qscriptdebuggercodeviewinterface_p.h
+ qscriptdebuggercodeviewinterface_p_p.h
+ qscriptdebuggercodeview_p.h
+ qscriptdebuggercodewidget.cpp
+ qscriptdebuggercodewidgetinterface.cpp
+ qscriptdebuggercodewidgetinterface_p.h
+ qscriptdebuggercodewidgetinterface_p_p.h
+ qscriptdebuggercodewidget_p.h
+ qscriptdebuggercommand.cpp
+ qscriptdebuggercommandexecutor.cpp
+ qscriptdebuggercommandexecutor_p.h
+ qscriptdebuggercommand_p.h
+ qscriptdebuggercommandschedulerfrontend.cpp
+ qscriptdebuggercommandschedulerfrontend_p.h
+ qscriptdebuggercommandschedulerinterface_p.h
+ qscriptdebuggercommandschedulerjob.cpp
+ qscriptdebuggercommandschedulerjob_p.h
+ qscriptdebuggercommandschedulerjob_p_p.h
+ qscriptdebuggerconsolecommand.cpp
+ qscriptdebuggerconsolecommandgroupdata.cpp
+ qscriptdebuggerconsolecommandgroupdata_p.h
+ qscriptdebuggerconsolecommandjob.cpp
+ qscriptdebuggerconsolecommandjob_p.h
+ qscriptdebuggerconsolecommandjob_p_p.h
+ qscriptdebuggerconsolecommandmanager.cpp
+ qscriptdebuggerconsolecommandmanager_p.h
+ qscriptdebuggerconsolecommand_p.h
+ qscriptdebuggerconsolecommand_p_p.h
+ qscriptdebuggerconsole.cpp
+ qscriptdebuggerconsoleglobalobject.cpp
+ qscriptdebuggerconsoleglobalobject_p.h
+ qscriptdebuggerconsolehistorianinterface_p.h
+ qscriptdebuggerconsole_p.h
+ qscriptdebuggerconsolewidget.cpp
+ qscriptdebuggerconsolewidgetinterface.cpp
+ qscriptdebuggerconsolewidgetinterface_p.h
+ qscriptdebuggerconsolewidgetinterface_p_p.h
+ qscriptdebuggerconsolewidget_p.h
+ qscriptdebugger.cpp
+ qscriptdebuggerevent.cpp
+ qscriptdebuggereventhandlerinterface_p.h
+ qscriptdebuggerevent_p.h
+ qscriptdebuggerfrontend.cpp
+ qscriptdebuggerfrontend_p.h
+ qscriptdebuggerfrontend_p_p.h
+ qscriptdebuggerjob.cpp
+ qscriptdebuggerjob_p.h
+ qscriptdebuggerjob_p_p.h
+ qscriptdebuggerjobschedulerinterface_p.h
+ qscriptdebuggerlocalsmodel.cpp
+ qscriptdebuggerlocalsmodel_p.h
+ qscriptdebuggerlocalswidget.cpp
+ qscriptdebuggerlocalswidgetinterface.cpp
+ qscriptdebuggerlocalswidgetinterface_p.h
+ qscriptdebuggerlocalswidgetinterface_p_p.h
+ qscriptdebuggerlocalswidget_p.h
+ qscriptdebuggerobjectsnapshotdelta_p.h
+ qscriptdebugger_p.h
+ qscriptdebuggerresponse.cpp
+ qscriptdebuggerresponsehandlerinterface_p.h
+ qscriptdebuggerresponse_p.h
+ qscriptdebuggerscriptedconsolecommand.cpp
+ qscriptdebuggerscriptedconsolecommand_p.h
+ qscriptdebuggerscriptsmodel.cpp
+ qscriptdebuggerscriptsmodel_p.h
+ qscriptdebuggerscriptswidget.cpp
+ qscriptdebuggerscriptswidgetinterface.cpp
+ qscriptdebuggerscriptswidgetinterface_p.h
+ qscriptdebuggerscriptswidgetinterface_p_p.h
+ qscriptdebuggerscriptswidget_p.h
+ qscriptdebuggerstackmodel.cpp
+ qscriptdebuggerstackmodel_p.h
+ qscriptdebuggerstackwidget.cpp
+ qscriptdebuggerstackwidgetinterface.cpp
+ qscriptdebuggerstackwidgetinterface_p.h
+ qscriptdebuggerstackwidgetinterface_p_p.h
+ qscriptdebuggerstackwidget_p.h
+ qscriptdebuggerstandardwidgetfactory.cpp
+ qscriptdebuggerstandardwidgetfactory_p.h
+ qscriptdebuggervalue.cpp
+ qscriptdebuggervalue_p.h
+ qscriptdebuggervalueproperty.cpp
+ qscriptdebuggervalueproperty_p.h
+ qscriptdebuggerwidgetfactoryinterface_p.h
+ qscriptdebugoutputwidget.cpp
+ qscriptdebugoutputwidgetinterface.cpp
+ qscriptdebugoutputwidgetinterface_p.h
+ qscriptdebugoutputwidgetinterface_p_p.h
+ qscriptdebugoutputwidget_p.h
+ qscriptedit.cpp
+ qscriptedit_p.h
+ qscriptenginedebugger.cpp
+ qscriptenginedebuggerfrontend.cpp
+ qscriptenginedebuggerfrontend_p.h
+ qscriptenginedebugger.h
+ qscripterrorlogwidget.cpp
+ qscripterrorlogwidgetinterface.cpp
+ qscripterrorlogwidgetinterface_p.h
+ qscripterrorlogwidgetinterface_p_p.h
+ qscripterrorlogwidget_p.h
+ qscriptmessagehandlerinterface_p.h
+ qscriptobjectsnapshot.cpp
+ qscriptobjectsnapshot_p.h
+ qscriptscriptdata.cpp
+ qscriptscriptdata_p.h
+ qscriptstdmessagehandler.cpp
+ qscriptstdmessagehandler_p.h
+ qscriptsyntaxhighlighter.cpp
+ qscriptsyntaxhighlighter_p.h
+ qscripttooltipproviderinterface_p.h
+ qscriptvalueproperty.cpp
+ qscriptvalueproperty_p.h
+ qscriptxmlparser.cpp
+ qscriptxmlparser_p.h
+ scripts/
+0 commands/
+0 advance.qs
+ backtrace.qs
+ break.qs
+ clear.qs
+ complete.qs
+ condition.qs
+ continue.qs
+ delete.qs
+ disable.qs
+ down.qs
+ enable.qs
+ eval.qs
+ finish.qs
+ frame.qs
+ help.qs
+ ignore.qs
+ info.qs
+ interrupt.qs
+ list.qs
+ next.qs
+ print.qs
+ return.qs
+ step.qs
+ tbreak.qs
+ up.qs
+3 scripttools_debugging.qrc
+2 scripttools.pro
+2 script/utils/
+0 qscriptdate.cpp
+ qscriptdate_p.h
+ utils.pri
+2 sql/
+0 drivers/
+0 db2/
+0 qsql_db2.cpp
+ qsql_db2.h
+2 drivers.pri
+ ibase/
+0 qsql_ibase.cpp
+ qsql_ibase.h
+2 mysql/
+0 qsql_mysql.cpp
+ qsql_mysql.h
+2 oci/
+0 qsql_oci.cpp
+ qsql_oci.h
+2 odbc/
+0 qsql_odbc.cpp
+ qsql_odbc.h
+2 psql/
+0 qsql_psql.cpp
+ qsql_psql.h
+2 sqlite/
+ sqlite2/
+0 qsql_sqlite2.cpp
+ qsql_sqlite2.h
+2 sqlite/qsql_sqlite.cpp
+ sqlite/qsql_sqlite.h
+ tds/
+0 qsql_tds.cpp
+ qsql_tds.h
+3 kernel/
+0 kernel.pri
+ qsqlcachedresult.cpp
+ qsqlcachedresult_p.h
+ qsqldatabase.cpp
+ qsqldatabase.h
+ qsqldriver.cpp
+ qsqldriver.h
+ qsqldriverplugin.cpp
+ qsqldriverplugin.h
+ qsqlerror.cpp
+ qsqlerror.h
+ qsqlfield.cpp
+ qsqlfield.h
+ qsql.h
+ qsqlindex.cpp
+ qsqlindex.h
+ qsqlnulldriver_p.h
+ qsql.qdoc
+ qsqlquery.cpp
+ qsqlquery.h
+ qsqlrecord.cpp
+ qsqlrecord.h
+ qsqlresult.cpp
+ qsqlresult.h
+2 models/
+0 models.pri
+ qsqlquerymodel.cpp
+ qsqlquerymodel.h
+ qsqlquerymodel_p.h
+ qsqlrelationaldelegate.cpp
+ qsqlrelationaldelegate.h
+ qsqlrelationaltablemodel.cpp
+ qsqlrelationaltablemodel.h
+ qsqltablemodel.cpp
+ qsqltablemodel.h
+ qsqltablemodel_p.h
+2 README.module
+ sql.pro
+2 src.pro
+ svg/
+0 qgraphicssvgitem.cpp
+ qgraphicssvgitem.h
+ qsvgfont.cpp
+ qsvgfont_p.h
+ qsvggenerator.cpp
+ qsvggenerator.h
+ qsvggraphics.cpp
+ qsvggraphics_p.h
+ qsvghandler.cpp
+ qsvghandler_p.h
+ qsvgnode.cpp
+ qsvgnode_p.h
+ qsvgrenderer.cpp
+ qsvgrenderer.h
+ qsvgstructure.cpp
+ qsvgstructure_p.h
+ qsvgstyle.cpp
+ qsvgstyle_p.h
+ qsvgtinydocument.cpp
+ qsvgtinydocument_p.h
+ qsvgwidget.cpp
+ qsvgwidget.h
+ svg.pro
+2 testlib/
+0 3rdparty/
+0 callgrind_p.h
+ cycle_p.h
+ valgrind_p.h
+2 qabstracttestlogger.cpp
+ qabstracttestlogger_p.h
+ qasciikey.cpp
+ qbenchmark.cpp
+ qbenchmarkevent.cpp
+ qbenchmarkevent_p.h
+ qbenchmark.h
+ qbenchmarkmeasurement.cpp
+ qbenchmarkmeasurement_p.h
+ qbenchmark_p.h
+ qbenchmarkvalgrind.cpp
+ qbenchmarkvalgrind_p.h
+ qplaintestlogger.cpp
+ qplaintestlogger_p.h
+ qsignaldumper.cpp
+ qsignaldumper_p.h
+ qsignalspy.h
+ qsignalspy.qdoc
+ qtestaccessible.h
+ qtestassert.h
+ qtestbasicstreamer.cpp
+ qtestbasicstreamer.h
+ qtestcase.cpp
+ qtestcase.h
+ qtestcoreelement.h
+ qtestcorelist.h
+ qtestdata.cpp
+ qtestdata.h
+ qtestelementattribute.cpp
+ qtestelementattribute.h
+ qtestelement.cpp
+ qtestelement.h
+ qtestevent.h
+ qtesteventloop.h
+ qtestevent.qdoc
+ qtestfilelogger.cpp
+ qtestfilelogger.h
+ qtest_global.h
+ qtest_gui.h
+ qtest.h
+ qtestkeyboard.h
+ qtestlightxmlstreamer.cpp
+ qtestlightxmlstreamer.h
+ qtestlog.cpp
+ qtestlogger.cpp
+ qtestlogger_p.h
+ qtestlog_p.h
+ qtestmouse.h
+ qtestresult.cpp
+ qtestresult_p.h
+ qtestspontaneevent.h
+ qtestsystem.h
+ qtesttable.cpp
+ qtesttable_p.h
+ qtesttouch.h
+ qtestxmlstreamer.cpp
+ qtestxmlstreamer.h
+ qtestxunitstreamer.cpp
+ qtestxunitstreamer.h
+ qxmltestlogger.cpp
+ qxmltestlogger_p.h
+ testlib.pro
+2 tools/
+0 bootstrap/
+0 bootstrap.pri
+ bootstrap.pro
+2 idc/
+0 idc.pro
+ main.cpp
+2 moc/
+0 generator.cpp
+ generator.h
+ keywords.cpp
+ main.cpp
+ moc.cpp
+ moc.h
+ moc.pri
+ moc.pro
+ mwerks_mac.cpp
+ mwerks_mac.h
+ outputrevision.h
+ parser.cpp
+ parser.h
+ ppkeywords.cpp
+ preprocessor.cpp
+ preprocessor.h
+ symbols.h
+ token.cpp
+ token.h
+ util/
+0 generate_keywords.cpp
+ generate_keywords.pro
+ generate.sh
+ licenseheader.txt
+2 utils.h
+2 rcc/
+0 main.cpp
+ rcc.cpp
+ rcc.h
+ rcc.pri
+ rcc.pro
+2 tools.pro
+ uic/
+ uic3/
+0 converter.cpp
+ deps.cpp
+ domtool.cpp
+ domtool.h
+ embed.cpp
+ form.cpp
+ main.cpp
+ object.cpp
+ parser.cpp
+ parser.h
+ qt3to4.cpp
+ qt3to4.h
+ subclassing.cpp
+ ui3reader.cpp
+ ui3reader.h
+ uic3.pro
+ uic.cpp
+ uic.h
+ widgetinfo.cpp
+ widgetinfo.h
+2 uic/cpp/
+0 cppextractimages.cpp
+ cppextractimages.h
+ cpp.pri
+ cppwritedeclaration.cpp
+ cppwritedeclaration.h
+ cppwriteicondata.cpp
+ cppwriteicondata.h
+ cppwriteicondeclaration.cpp
+ cppwriteicondeclaration.h
+ cppwriteiconinitialization.cpp
+ cppwriteiconinitialization.h
+ cppwriteincludes.cpp
+ cppwriteincludes.h
+ cppwriteinitialization.cpp
+ cppwriteinitialization.h
+2 uic/customwidgetsinfo.cpp
+ uic/customwidgetsinfo.h
+ uic/databaseinfo.cpp
+ uic/databaseinfo.h
+ uic/driver.cpp
+ uic/driver.h
+ uic/globaldefs.h
+ uic/main.cpp
+ uic/option.h
+ uic/treewalker.cpp
+ uic/treewalker.h
+ uic/ui4.cpp
+ uic/ui4.h
+ uic/uic.cpp
+ uic/uic.h
+ uic/uic.pri
+ uic/uic.pro
+ uic/utils.h
+ uic/validator.cpp
+ uic/validator.h
+2 winmain/
+0 qtmain_win.cpp
+ winmain.pro
+2 xml/
+0 dom/
+0 dom.pri
+ qdom.cpp
+ qdom.h
+3 xmlpatterns/
+0 acceltree/
+0 acceltree.pri
+ qacceliterators.cpp
+ qacceliterators_p.h
+ qacceltreebuilder.cpp
+ qacceltreebuilder_p.h
+ qacceltree.cpp
+ qacceltree_p.h
+ qacceltreeresourceloader.cpp
+ qacceltreeresourceloader_p.h
+ qcompressedwhitespace.cpp
+ qcompressedwhitespace_p.h
+2 api/
+0 api.pri
+ qabstractmessagehandler.cpp
+ qabstractmessagehandler.h
+ qabstracturiresolver.cpp
+ qabstracturiresolver.h
+ qabstractxmlforwarditerator.cpp
+ qabstractxmlforwarditerator_p.h
+ qabstractxmlnodemodel.cpp
+ qabstractxmlnodemodel.h
+ qabstractxmlnodemodel_p.h
+ qabstractxmlpullprovider.cpp
+ qabstractxmlpullprovider_p.h
+ qabstractxmlreceiver.cpp
+ qabstractxmlreceiver.h
+ qabstractxmlreceiver_p.h
+ qdeviceresourceloader_p.h
+ qiodevicedelegate.cpp
+ qiodevicedelegate_p.h
+ qnetworkaccessdelegator.cpp
+ qnetworkaccessdelegator_p.h
+ qpullbridge.cpp
+ qpullbridge_p.h
+ qreferencecountedvalue_p.h
+ qresourcedelegator.cpp
+ qresourcedelegator_p.h
+ qsimplexmlnodemodel.cpp
+ qsimplexmlnodemodel.h
+ qsourcelocation.cpp
+ qsourcelocation.h
+ quriloader.cpp
+ quriloader_p.h
+ qvariableloader.cpp
+ qvariableloader_p.h
+ qxmlformatter.cpp
+ qxmlformatter.h
+ qxmlname.cpp
+ qxmlname.h
+ qxmlnamepool.cpp
+ qxmlnamepool.h
+ qxmlquery.cpp
+ qxmlquery.h
+ qxmlquery_p.h
+ qxmlresultitems.cpp
+ qxmlresultitems.h
+ qxmlresultitems_p.h
+ qxmlschema.cpp
+ qxmlschema.h
+ qxmlschema_p.cpp
+ qxmlschema_p.h
+ qxmlschemavalidator.cpp
+ qxmlschemavalidator.h
+ qxmlschemavalidator_p.h
+ qxmlserializer.cpp
+ qxmlserializer.h
+ qxmlserializer_p.h
+2 common.pri
+ data/
+0 data.pri
+ qabstractdatetime.cpp
+ qabstractdatetime_p.h
+ qabstractduration.cpp
+ qabstractduration_p.h
+ qabstractfloatcasters.cpp
+ qabstractfloatcasters_p.h
+ qabstractfloat.cpp
+ qabstractfloatmathematician.cpp
+ qabstractfloatmathematician_p.h
+ qabstractfloat_p.h
+ qanyuri.cpp
+ qanyuri_p.h
+ qatomiccaster.cpp
+ qatomiccaster_p.h
+ qatomiccasters.cpp
+ qatomiccasters_p.h
+ qatomiccomparator.cpp
+ qatomiccomparator_p.h
+ qatomiccomparators.cpp
+ qatomiccomparators_p.h
+ qatomicmathematician.cpp
+ qatomicmathematician_p.h
+ qatomicmathematicians.cpp
+ qatomicmathematicians_p.h
+ qatomicstring.cpp
+ qatomicstring_p.h
+ qatomicvalue.cpp
+ qbase64binary.cpp
+ qbase64binary_p.h
+ qboolean.cpp
+ qboolean_p.h
+ qcommonvalues.cpp
+ qcommonvalues_p.h
+ qcomparisonfactory.cpp
+ qcomparisonfactory_p.h
+ qdate.cpp
+ qdate_p.h
+ qdaytimeduration.cpp
+ qdaytimeduration_p.h
+ qdecimal.cpp
+ qdecimal_p.h
+ qderivedinteger_p.h
+ qderivedstring_p.h
+ qduration.cpp
+ qduration_p.h
+ qgday.cpp
+ qgday_p.h
+ qgmonth.cpp
+ qgmonthday.cpp
+ qgmonthday_p.h
+ qgmonth_p.h
+ qgyear.cpp
+ qgyearmonth.cpp
+ qgyearmonth_p.h
+ qgyear_p.h
+ qhexbinary.cpp
+ qhexbinary_p.h
+ qinteger.cpp
+ qinteger_p.h
+ qitem.cpp
+ qitem_p.h
+ qnodebuilder.cpp
+ qnodebuilder_p.h
+ qnodemodel.cpp
+ qqnamevalue.cpp
+ qqnamevalue_p.h
+ qresourceloader.cpp
+ qresourceloader_p.h
+ qschemadatetime.cpp
+ qschemadatetime_p.h
+ qschemanumeric.cpp
+ qschemanumeric_p.h
+ qschematime.cpp
+ qschematime_p.h
+ qsequencereceiver.cpp
+ qsequencereceiver_p.h
+ qsorttuple.cpp
+ qsorttuple_p.h
+ quntypedatomic.cpp
+ quntypedatomic_p.h
+ qvalidationerror.cpp
+ qvalidationerror_p.h
+ qvaluefactory.cpp
+ qvaluefactory_p.h
+ qyearmonthduration.cpp
+ qyearmonthduration_p.h
+2 documentationGroups.dox
+ Doxyfile
+ environment/
+0 createReportContext.sh
+ createReportContext.xsl
+ environment.pri
+ qcurrentitemcontext.cpp
+ qcurrentitemcontext_p.h
+ qdelegatingdynamiccontext.cpp
+ qdelegatingdynamiccontext_p.h
+ qdelegatingstaticcontext.cpp
+ qdelegatingstaticcontext_p.h
+ qdynamiccontext.cpp
+ qdynamiccontext_p.h
+ qfocus.cpp
+ qfocus_p.h
+ qgenericdynamiccontext.cpp
+ qgenericdynamiccontext_p.h
+ qgenericstaticcontext.cpp
+ qgenericstaticcontext_p.h
+ qreceiverdynamiccontext.cpp
+ qreceiverdynamiccontext_p.h
+ qreportcontext.cpp
+ qreportcontext_p.h
+ qstackcontextbase.cpp
+ qstackcontextbase_p.h
+ qstaticbaseuricontext.cpp
+ qstaticbaseuricontext_p.h
+ qstaticcompatibilitycontext.cpp
+ qstaticcompatibilitycontext_p.h
+ qstaticcontext.cpp
+ qstaticcontext_p.h
+ qstaticcurrentcontext.cpp
+ qstaticcurrentcontext_p.h
+ qstaticfocuscontext.cpp
+ qstaticfocuscontext_p.h
+ qstaticnamespacecontext.cpp
+ qstaticnamespacecontext_p.h
+2 expr/
+0 expr.pri
+ qandexpression.cpp
+ qandexpression_p.h
+ qapplytemplate.cpp
+ qapplytemplate_p.h
+ qargumentreference.cpp
+ qargumentreference_p.h
+ qarithmeticexpression.cpp
+ qarithmeticexpression_p.h
+ qattributeconstructor.cpp
+ qattributeconstructor_p.h
+ qattributenamevalidator.cpp
+ qattributenamevalidator_p.h
+ qaxisstep.cpp
+ qaxisstep_p.h
+ qcachecells_p.h
+ qcallsite.cpp
+ qcallsite_p.h
+ qcalltargetdescription.cpp
+ qcalltargetdescription_p.h
+ qcalltemplate.cpp
+ qcalltemplate_p.h
+ qcastableas.cpp
+ qcastableas_p.h
+ qcastas.cpp
+ qcastas_p.h
+ qcastingplatform.cpp
+ qcastingplatform_p.h
+ qcollationchecker.cpp
+ qcollationchecker_p.h
+ qcombinenodes.cpp
+ qcombinenodes_p.h
+ qcommentconstructor.cpp
+ qcommentconstructor_p.h
+ qcomparisonplatform.cpp
+ qcomparisonplatform_p.h
+ qcomputednamespaceconstructor.cpp
+ qcomputednamespaceconstructor_p.h
+ qcontextitem.cpp
+ qcontextitem_p.h
+ qcopyof.cpp
+ qcopyof_p.h
+ qcurrentitemstore.cpp
+ qcurrentitemstore_p.h
+ qdocumentconstructor.cpp
+ qdocumentconstructor_p.h
+ qdocumentcontentvalidator.cpp
+ qdocumentcontentvalidator_p.h
+ qdynamiccontextstore.cpp
+ qdynamiccontextstore_p.h
+ qelementconstructor.cpp
+ qelementconstructor_p.h
+ qemptycontainer.cpp
+ qemptycontainer_p.h
+ qemptysequence.cpp
+ qemptysequence_p.h
+ qevaluationcache.cpp
+ qevaluationcache_p.h
+ qexpression.cpp
+ qexpressiondispatch_p.h
+ qexpressionfactory.cpp
+ qexpressionfactory_p.h
+ qexpression_p.h
+ qexpressionsequence.cpp
+ qexpressionsequence_p.h
+ qexpressionvariablereference.cpp
+ qexpressionvariablereference_p.h
+ qexternalvariableloader.cpp
+ qexternalvariableloader_p.h
+ qexternalvariablereference.cpp
+ qexternalvariablereference_p.h
+ qfirstitempredicate.cpp
+ qfirstitempredicate_p.h
+ qforclause.cpp
+ qforclause_p.h
+ qgeneralcomparison.cpp
+ qgeneralcomparison_p.h
+ qgenericpredicate.cpp
+ qgenericpredicate_p.h
+ qifthenclause.cpp
+ qifthenclause_p.h
+ qinstanceof.cpp
+ qinstanceof_p.h
+ qletclause.cpp
+ qletclause_p.h
+ qliteral.cpp
+ qliteral_p.h
+ qliteralsequence.cpp
+ qliteralsequence_p.h
+ qnamespaceconstructor.cpp
+ qnamespaceconstructor_p.h
+ qncnameconstructor.cpp
+ qncnameconstructor_p.h
+ qnodecomparison.cpp
+ qnodecomparison_p.h
+ qnodesort.cpp
+ qnodesort_p.h
+ qoperandsiterator_p.h
+ qoptimizationpasses.cpp
+ qoptimizationpasses_p.h
+ qoptimizerblocks.cpp
+ qoptimizerblocks_p.h
+ qoptimizerframework.cpp
+ qoptimizerframework_p.h
+ qorderby.cpp
+ qorderby_p.h
+ qorexpression.cpp
+ qorexpression_p.h
+ qpaircontainer.cpp
+ qpaircontainer_p.h
+ qparentnodeaxis.cpp
+ qparentnodeaxis_p.h
+ qpath.cpp
+ qpath_p.h
+ qpositionalvariablereference.cpp
+ qpositionalvariablereference_p.h
+ qprocessinginstructionconstructor.cpp
+ qprocessinginstructionconstructor_p.h
+ qqnameconstructor.cpp
+ qqnameconstructor_p.h
+ qquantifiedexpression.cpp
+ qquantifiedexpression_p.h
+ qrangeexpression.cpp
+ qrangeexpression_p.h
+ qrangevariablereference.cpp
+ qrangevariablereference_p.h
+ qreturnorderby.cpp
+ qreturnorderby_p.h
+ qsimplecontentconstructor.cpp
+ qsimplecontentconstructor_p.h
+ qsinglecontainer.cpp
+ qsinglecontainer_p.h
+ qsourcelocationreflection.cpp
+ qsourcelocationreflection_p.h
+ qstaticbaseuristore.cpp
+ qstaticbaseuristore_p.h
+ qstaticcompatibilitystore.cpp
+ qstaticcompatibilitystore_p.h
+ qtemplate.cpp
+ qtemplateinvoker.cpp
+ qtemplateinvoker_p.h
+ qtemplatemode.cpp
+ qtemplatemode_p.h
+ qtemplateparameterreference.cpp
+ qtemplateparameterreference_p.h
+ qtemplatepattern_p.h
+ qtemplate_p.h
+ qtextnodeconstructor.cpp
+ qtextnodeconstructor_p.h
+ qtreatas.cpp
+ qtreatas_p.h
+ qtriplecontainer.cpp
+ qtriplecontainer_p.h
+ qtruthpredicate.cpp
+ qtruthpredicate_p.h
+ qunaryexpression.cpp
+ qunaryexpression_p.h
+ qunlimitedcontainer.cpp
+ qunlimitedcontainer_p.h
+ qunresolvedvariablereference.cpp
+ qunresolvedvariablereference_p.h
+ quserfunctioncallsite.cpp
+ quserfunctioncallsite_p.h
+ quserfunction.cpp
+ quserfunction_p.h
+ qvalidate.cpp
+ qvalidate_p.h
+ qvaluecomparison.cpp
+ qvaluecomparison_p.h
+ qvariabledeclaration.cpp
+ qvariabledeclaration_p.h
+ qvariablereference.cpp
+ qvariablereference_p.h
+ qwithparam_p.h
+ qxsltsimplecontentconstructor.cpp
+ qxsltsimplecontentconstructor_p.h
+2 functions/
+0 functions.pri
+ qabstractfunctionfactory.cpp
+ qabstractfunctionfactory_p.h
+ qaccessorfns.cpp
+ qaccessorfns_p.h
+ qaggregatefns.cpp
+ qaggregatefns_p.h
+ qaggregator.cpp
+ qaggregator_p.h
+ qassemblestringfns.cpp
+ qassemblestringfns_p.h
+ qbooleanfns.cpp
+ qbooleanfns_p.h
+ qcomparescaseaware.cpp
+ qcomparescaseaware_p.h
+ qcomparestringfns.cpp
+ qcomparestringfns_p.h
+ qcomparingaggregator.cpp
+ qcomparingaggregator_p.h
+ qconstructorfunctionsfactory.cpp
+ qconstructorfunctionsfactory_p.h
+ qcontextfns.cpp
+ qcontextfns_p.h
+ qcontextnodechecker.cpp
+ qcontextnodechecker_p.h
+ qcurrentfn.cpp
+ qcurrentfn_p.h
+ qdatetimefn.cpp
+ qdatetimefn_p.h
+ qdatetimefns.cpp
+ qdatetimefns_p.h
+ qdeepequalfn.cpp
+ qdeepequalfn_p.h
+ qdocumentfn.cpp
+ qdocumentfn_p.h
+ qelementavailablefn.cpp
+ qelementavailablefn_p.h
+ qerrorfn.cpp
+ qerrorfn_p.h
+ qfunctionargument.cpp
+ qfunctionargument_p.h
+ qfunctionavailablefn.cpp
+ qfunctionavailablefn_p.h
+ qfunctioncall.cpp
+ qfunctioncall_p.h
+ qfunctionfactorycollection.cpp
+ qfunctionfactorycollection_p.h
+ qfunctionfactory.cpp
+ qfunctionfactory_p.h
+ qfunctionsignature.cpp
+ qfunctionsignature_p.h
+ qgenerateidfn.cpp
+ qgenerateidfn_p.h
+ qnodefns.cpp
+ qnodefns_p.h
+ qnumericfns.cpp
+ qnumericfns_p.h
+ qpatternmatchingfns.cpp
+ qpatternmatchingfns_p.h
+ qpatternplatform.cpp
+ qpatternplatform_p.h
+ qqnamefns.cpp
+ qqnamefns_p.h
+ qresolveurifn.cpp
+ qresolveurifn_p.h
+ qsequencefns.cpp
+ qsequencefns_p.h
+ qsequencegeneratingfns.cpp
+ qsequencegeneratingfns_p.h
+ qstaticbaseuricontainer_p.h
+ qstaticnamespacescontainer.cpp
+ qstaticnamespacescontainer_p.h
+ qstringvaluefns.cpp
+ qstringvaluefns_p.h
+ qsubstringfns.cpp
+ qsubstringfns_p.h
+ qsystempropertyfn.cpp
+ qsystempropertyfn_p.h
+ qtimezonefns.cpp
+ qtimezonefns_p.h
+ qtracefn.cpp
+ qtracefn_p.h
+ qtypeavailablefn.cpp
+ qtypeavailablefn_p.h
+ qunparsedentitypublicidfn.cpp
+ qunparsedentitypublicidfn_p.h
+ qunparsedentityurifn.cpp
+ qunparsedentityurifn_p.h
+ qunparsedtextavailablefn.cpp
+ qunparsedtextavailablefn_p.h
+ qunparsedtextfn.cpp
+ qunparsedtextfn_p.h
+ qxpath10corefunctions.cpp
+ qxpath10corefunctions_p.h
+ qxpath20corefunctions.cpp
+ qxpath20corefunctions_p.h
+ qxslt20corefunctions.cpp
+ qxslt20corefunctions_p.h
+2 .gitignore
+ iterators/
+0 iterators.pri
+ qcachingiterator.cpp
+ qcachingiterator_p.h
+ qdeduplicateiterator.cpp
+ qdeduplicateiterator_p.h
+ qdistinctiterator.cpp
+ qdistinctiterator_p.h
+ qemptyiterator_p.h
+ qexceptiterator.cpp
+ qexceptiterator_p.h
+ qindexofiterator.cpp
+ qindexofiterator_p.h
+ qinsertioniterator.cpp
+ qinsertioniterator_p.h
+ qintersectiterator.cpp
+ qintersectiterator_p.h
+ qitemmappingiterator_p.h
+ qrangeiterator.cpp
+ qrangeiterator_p.h
+ qremovaliterator.cpp
+ qremovaliterator_p.h
+ qsequencemappingiterator_p.h
+ qsingletoniterator_p.h
+ qsubsequenceiterator.cpp
+ qsubsequenceiterator_p.h
+ qtocodepointsiterator.cpp
+ qtocodepointsiterator_p.h
+ qunioniterator.cpp
+ qunioniterator_p.h
+2 janitors/
+0 janitors.pri
+ qargumentconverter.cpp
+ qargumentconverter_p.h
+ qatomizer.cpp
+ qatomizer_p.h
+ qcardinalityverifier.cpp
+ qcardinalityverifier_p.h
+ qebvextractor.cpp
+ qebvextractor_p.h
+ qitemverifier.cpp
+ qitemverifier_p.h
+ quntypedatomicconverter.cpp
+ quntypedatomicconverter_p.h
+2 Mainpage.dox
+ parser/
+0 createParser.sh
+ createTokenLookup.sh
+ createXSLTTokenLookup.sh
+ .gitattributes
+ .gitignore
+ parser.pri
+ qmaintainingreader.cpp
+ qmaintainingreader_p.h
+ qparsercontext.cpp
+ qparsercontext_p.h
+ qquerytransformparser.cpp
+ qquerytransformparser_p.h
+ qtokenizer_p.h
+ qtokenlookup.cpp
+ qtokenrevealer.cpp
+ qtokenrevealer_p.h
+ qtokensource.cpp
+ qtokensource_p.h
+ querytransformparser.ypp
+ qxquerytokenizer.cpp
+ qxquerytokenizer_p.h
+ qxslttokenizer.cpp
+ qxslttokenizer_p.h
+ qxslttokenlookup.cpp
+ qxslttokenlookup_p.h
+ qxslttokenlookup.xml
+ TokenLookup.gperf
+ trolltechHeader.txt
+ winCEWorkaround.sed
+2 projection/
+0 projection.pri
+ qdocumentprojector.cpp
+ qdocumentprojector_p.h
+ qprojectedexpression_p.h
+2 qtokenautomaton/
+0 exampleFile.xml
+ qautomaton2cpp.xsl
+ qtokenautomaton.xsd
+ README
+2 query.pri
+ schema/
+0 builtinschemas.qrc
+ doc/
+0 All_diagram.dot
+ Alternative_diagram.dot
+ Annotation_diagram.dot
+ AnyAttribute_diagram.dot
+ Any_diagram.dot
+ Assert_diagram.dot
+ Choice_diagram.dot
+ ComplexContent_diagram.dot
+ ComplexContentExtension_diagram.dot
+ ComplexContentRestriction_diagram.dot
+ DefaultOpenContent_diagram.dot
+ EnumerationFacet_diagram.dot
+ Field_diagram.dot
+ FractionDigitsFacet_diagram.dot
+ GlobalAttribute_diagram.dot
+ GlobalComplexType_diagram.dot
+ GlobalElement_diagram.dot
+ GlobalSimpleType_diagram.dot
+ Import_diagram.dot
+ Include_diagram.dot
+ Key_diagram.dot
+ KeyRef_diagram.dot
+ legend.dot
+ LengthFacet_diagram.dot
+ List_diagram.dot
+ LocalAll_diagram.dot
+ LocalAttribute_diagram.dot
+ LocalChoice_diagram.dot
+ LocalComplexType_diagram.dot
+ LocalElement_diagram.dot
+ LocalSequence_diagram.dot
+ LocalSimpleType_diagram.dot
+ MaxExclusiveFacet_diagram.dot
+ MaxInclusiveFacet_diagram.dot
+ MaxLengthFacet_diagram.dot
+ MinExclusiveFacet_diagram.dot
+ MinInclusiveFacet_diagram.dot
+ MinLengthFacet_diagram.dot
+ NamedAttributeGroup_diagram.dot
+ NamedGroup_diagram.dot
+ Notation_diagram.dot
+ Override_diagram.dot
+ PatternFacet_diagram.dot
+ Redefine_diagram.dot
+ ReferredAttributeGroup_diagram.dot
+ ReferredGroup_diagram.dot
+ Schema_diagram.dot
+ Selector_diagram.dot
+ Sequence_diagram.dot
+ SimpleContent_diagram.dot
+ SimpleContentExtension_diagram.dot
+ SimpleContentRestriction_diagram.dot
+ SimpleRestriction_diagram.dot
+ TotalDigitsFacet_diagram.dot
+ Union_diagram.dot
+ Unique_diagram.dot
+ WhiteSpaceFacet_diagram.dot
+2 .gitignore
+ qnamespacesupport.cpp
+ qnamespacesupport_p.h
+ qxsdalternative.cpp
+ qxsdalternative_p.h
+ qxsdannotated.cpp
+ qxsdannotated_p.h
+ qxsdannotation.cpp
+ qxsdannotation_p.h
+ qxsdapplicationinformation.cpp
+ qxsdapplicationinformation_p.h
+ qxsdassertion.cpp
+ qxsdassertion_p.h
+ qxsdattribute.cpp
+ qxsdattributegroup.cpp
+ qxsdattributegroup_p.h
+ qxsdattribute_p.h
+ qxsdattributereference.cpp
+ qxsdattributereference_p.h
+ qxsdattributeterm.cpp
+ qxsdattributeterm_p.h
+ qxsdattributeuse.cpp
+ qxsdattributeuse_p.h
+ qxsdcomplextype.cpp
+ qxsdcomplextype_p.h
+ qxsddocumentation.cpp
+ qxsddocumentation_p.h
+ qxsdelement.cpp
+ qxsdelement_p.h
+ qxsdfacet.cpp
+ qxsdfacet_p.h
+ qxsdidcache.cpp
+ qxsdidcache_p.h
+ qxsdidchelper.cpp
+ qxsdidchelper_p.h
+ qxsdidentityconstraint.cpp
+ qxsdidentityconstraint_p.h
+ qxsdinstancereader.cpp
+ qxsdinstancereader_p.h
+ qxsdmodelgroup.cpp
+ qxsdmodelgroup_p.h
+ qxsdnotation.cpp
+ qxsdnotation_p.h
+ qxsdparticlechecker.cpp
+ qxsdparticlechecker_p.h
+ qxsdparticle.cpp
+ qxsdparticle_p.h
+ qxsdreference.cpp
+ qxsdreference_p.h
+ qxsdschemachecker.cpp
+ qxsdschemachecker_helper.cpp
+ qxsdschemachecker_p.h
+ qxsdschemachecker_setup.cpp
+ qxsdschemacontext.cpp
+ qxsdschemacontext_p.h
+ qxsdschema.cpp
+ qxsdschemadebugger.cpp
+ qxsdschemadebugger_p.h
+ qxsdschemahelper.cpp
+ qxsdschemahelper_p.h
+ qxsdschemamerger.cpp
+ qxsdschemamerger_p.h
+ qxsdschemaparsercontext.cpp
+ qxsdschemaparsercontext_p.h
+ qxsdschemaparser.cpp
+ qxsdschemaparser_p.h
+ qxsdschemaparser_setup.cpp
+ qxsdschema_p.h
+ qxsdschemaresolver.cpp
+ qxsdschemaresolver_p.h
+ qxsdschematoken.cpp
+ qxsdschematoken_p.h
+ qxsdschematypesfactory.cpp
+ qxsdschematypesfactory_p.h
+ qxsdsimpletype.cpp
+ qxsdsimpletype_p.h
+ qxsdstatemachinebuilder.cpp
+ qxsdstatemachinebuilder_p.h
+ qxsdstatemachine.cpp
+ qxsdstatemachine_p.h
+ qxsdterm.cpp
+ qxsdterm_p.h
+ qxsdtypechecker.cpp
+ qxsdtypechecker_p.h
+ qxsduserschematype.cpp
+ qxsduserschematype_p.h
+ qxsdvalidatedxmlnodemodel.cpp
+ qxsdvalidatedxmlnodemodel_p.h
+ qxsdvalidatinginstancereader.cpp
+ qxsdvalidatinginstancereader_p.h
+ qxsdwildcard.cpp
+ qxsdwildcard_p.h
+ qxsdxpathexpression.cpp
+ qxsdxpathexpression_p.h
+ schema.pri
+ schemas/
+0 xml.xsd
+0 -LICENSE
+3 tokens.xml
+2 type/
+0 qabstractnodetest.cpp
+ qabstractnodetest_p.h
+ qanyitemtype.cpp
+ qanyitemtype_p.h
+ qanynodetype.cpp
+ qanynodetype_p.h
+ qanysimpletype.cpp
+ qanysimpletype_p.h
+ qanytype.cpp
+ qanytype_p.h
+ qatomiccasterlocator.cpp
+ qatomiccasterlocator_p.h
+ qatomiccasterlocators.cpp
+ qatomiccasterlocators_p.h
+ qatomiccomparatorlocator.cpp
+ qatomiccomparatorlocator_p.h
+ qatomiccomparatorlocators.cpp
+ qatomiccomparatorlocators_p.h
+ qatomicmathematicianlocator.cpp
+ qatomicmathematicianlocator_p.h
+ qatomicmathematicianlocators.cpp
+ qatomicmathematicianlocators_p.h
+ qatomictype.cpp
+ qatomictypedispatch_p.h
+ qatomictype_p.h
+ qbasictypesfactory.cpp
+ qbasictypesfactory_p.h
+ qbuiltinatomictype.cpp
+ qbuiltinatomictype_p.h
+ qbuiltinatomictypes.cpp
+ qbuiltinatomictypes_p.h
+ qbuiltinnodetype.cpp
+ qbuiltinnodetype_p.h
+ qbuiltintypes.cpp
+ qbuiltintypes_p.h
+ qcardinality.cpp
+ qcardinality_p.h
+ qcommonsequencetypes.cpp
+ qcommonsequencetypes_p.h
+ qebvtype.cpp
+ qebvtype_p.h
+ qemptysequencetype.cpp
+ qemptysequencetype_p.h
+ qgenericsequencetype.cpp
+ qgenericsequencetype_p.h
+ qitemtype.cpp
+ qitemtype_p.h
+ qlocalnametest.cpp
+ qlocalnametest_p.h
+ qmultiitemtype.cpp
+ qmultiitemtype_p.h
+ qnamedschemacomponent.cpp
+ qnamedschemacomponent_p.h
+ qnamespacenametest.cpp
+ qnamespacenametest_p.h
+ qnonetype.cpp
+ qnonetype_p.h
+ qnumerictype.cpp
+ qnumerictype_p.h
+ qprimitives_p.h
+ qqnametest.cpp
+ qqnametest_p.h
+ qschemacomponent.cpp
+ qschemacomponent_p.h
+ qschematype.cpp
+ qschematypefactory.cpp
+ qschematypefactory_p.h
+ qschematype_p.h
+ qsequencetype.cpp
+ qsequencetype_p.h
+ qtypechecker.cpp
+ qtypechecker_p.h
+ quntyped.cpp
+ quntyped_p.h
+ qxsltnodetest.cpp
+ qxsltnodetest_p.h
+ type.pri
+2 utils/
+0 qautoptr.cpp
+ qautoptr_p.h
+ qcommonnamespaces_p.h
+ qcppcastinghelper_p.h
+ qdebug_p.h
+ qdelegatingnamespaceresolver.cpp
+ qdelegatingnamespaceresolver_p.h
+ qgenericnamespaceresolver.cpp
+ qgenericnamespaceresolver_p.h
+ qnamepool.cpp
+ qnamepool_p.h
+ qnamespacebinding_p.h
+ qnamespaceresolver.cpp
+ qnamespaceresolver_p.h
+ qnodenamespaceresolver.cpp
+ qnodenamespaceresolver_p.h
+ qoutputvalidator.cpp
+ qoutputvalidator_p.h
+ qpatternistlocale.cpp
+ qpatternistlocale_p.h
+ qxpathhelper.cpp
+ qxpathhelper_p.h
+ utils.pri
+2 xmlpatterns.pro
+2 xml/sax/
+0 qxml.cpp
+ qxml.h
+ sax.pri
+2 xml/stream/
+0 qxmlstream.h
+ stream.pri
+2 xml/xml.pro
diff --git a/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp b/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp
new file mode 100644
index 0000000000..236332b355
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.cpp
@@ -0,0 +1,240 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QTest>
+
+#include <QDirIterator>
+#include <QFile>
+#include <QString>
+#include <QStack>
+
+#include "../../../../../shared/filesystem.h"
+
+class bench_QDir_tree
+ : public QObject
+{
+ Q_OBJECT
+
+public:
+ bench_QDir_tree()
+ : prefix("./test-tree/"),
+ musicprefix(QLatin1String("music")),
+ photoprefix(QLatin1String("photos")),
+ sourceprefix(QLatin1String("source")),
+ musicsize(0),
+ photosize(0),
+ sourcesize(0)
+ {
+ }
+
+private:
+ QByteArray prefix;
+ QString musicprefix;
+ QString photoprefix;
+ QString sourceprefix;
+ qint64 musicsize;
+ qint64 photosize;
+ qint64 sourcesize;
+
+private slots:
+ void initTestCase()
+ {
+ QFile list(":/4.6.0-list.txt");
+ QVERIFY(list.open(QIODevice::ReadOnly | QIODevice::Text));
+
+ QVERIFY(fs.createDirectory(prefix));
+
+ QStack<QByteArray> stack;
+ QByteArray line;
+ Q_FOREVER {
+ char ch;
+ if (!list.getChar(&ch))
+ break;
+ if (ch != ' ') {
+ line.append(ch);
+ continue;
+ }
+
+ int pop = 1;
+ if (!line.isEmpty())
+ pop = line.toInt();
+
+ while (pop) {
+ stack.pop();
+ --pop;
+ }
+
+ line = list.readLine();
+ line.chop(1);
+ stack.push(line);
+
+ line = prefix;
+ Q_FOREACH(const QByteArray &pathElement, stack)
+ line += pathElement;
+
+ if (line.endsWith('/'))
+ QVERIFY(fs.createDirectory(line));
+ else
+ QVERIFY(fs.createFile(line));
+
+ line.clear();
+ }
+
+ //Use case: music collection - 10 files in 100 directories (albums)
+ QVERIFY(fs.createDirectory(musicprefix));
+ for (int i=0;i<1000;i++) {
+ if ((i % 10) == 0)
+ QVERIFY(fs.createDirectory(QString("%1/directory%2").arg(musicprefix).arg(i/10)));
+ qint64 size = fs.createFileWithContent(QString("%1/directory%2/file%3").arg(musicprefix).arg(i/10).arg(i));
+ QVERIFY(size > 0);
+ musicsize += size;
+ }
+ //Use case: photos - 1000 files in 1 directory
+ QVERIFY(fs.createDirectory(photoprefix));
+ for (int i=0;i<1000;i++) {
+ qint64 size = fs.createFileWithContent(QString("%1/file%2").arg(photoprefix).arg(i));
+ QVERIFY(size > 0);
+ photosize += size;
+ }
+ //Use case: source - 10 files in 10 subdirectories in 10 directories (1000 total)
+ QVERIFY(fs.createDirectory(sourceprefix));
+ for (int i=0;i<1000;i++) {
+ if ((i % 100) == 0)
+ QVERIFY(fs.createDirectory(QString("%1/directory%2").arg(sourceprefix).arg(i/100)));
+ if ((i % 10) == 0)
+ QVERIFY(fs.createDirectory(QString("%1/directory%2/subdirectory%3").arg(sourceprefix).arg(i/100).arg(i/10)));
+ qint64 size = fs.createFileWithContent(QString("%1/directory%2/subdirectory%3/file%4").arg(sourceprefix).arg(i/100).arg(i/10).arg(i));
+ QVERIFY(size > 0);
+ sourcesize += size;
+ }
+ }
+
+ void fileSearch_data() const
+ {
+ QTest::addColumn<QStringList>("nameFilters");
+ QTest::addColumn<int>("filter");
+ QTest::addColumn<int>("entryCount");
+
+ QTest::newRow("*.cpp") << QStringList("*.cpp")
+ << int(QDir::Files)
+ << 3813;
+
+ QTest::newRow("executables") << QStringList("*")
+ << int(QDir::Executable | QDir::Files | QDir::AllDirs | QDir::NoDotAndDotDot)
+ << 543;
+ }
+
+ void fileSearch() const
+ {
+ QFETCH(QStringList, nameFilters);
+ QFETCH(int, filter);
+ QFETCH(int, entryCount);
+
+ int count = 0;
+ QBENCHMARK {
+ // Recursive directory iteration
+ QDirIterator iterator(prefix, nameFilters, QDir::Filter(filter),
+ QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
+
+ count = 0;
+ while (iterator.hasNext()) {
+ iterator.next();
+ ++count;
+ }
+
+ QCOMPARE(count, entryCount);
+ }
+
+ QCOMPARE(count, entryCount);
+ }
+
+ void traverseDirectory() const
+ {
+ int count = 0;
+ QBENCHMARK {
+ QDirIterator iterator(prefix,
+ QDir::AllEntries | QDir::NoDotAndDotDot | QDir::Hidden | QDir::System,
+ QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
+
+ count = 0;
+ while (iterator.hasNext()) {
+ iterator.next();
+ ++count;
+ }
+
+ QCOMPARE(count, 11963);
+ }
+
+ QCOMPARE(count, 11963);
+ }
+
+ void thousandFiles_data() const
+ {
+ QTest::addColumn<QString>("dirName");
+ QTest::addColumn<qint64>("expectedSize");
+ QTest::newRow("music") << musicprefix << musicsize;
+ QTest::newRow("photos") << photoprefix << photosize;
+ QTest::newRow("src") << sourceprefix << sourcesize;
+ }
+
+ void thousandFiles() const
+ {
+ QFETCH(QString, dirName);
+ QFETCH(qint64, expectedSize);
+ QBENCHMARK {
+ qint64 totalsize = 0;
+ int count = 0;
+ QDirIterator iter(dirName, QDir::Files, QDirIterator::Subdirectories);
+ while(iter.hasNext()) {
+ iter.next();
+ count++;
+ totalsize += iter.fileInfo().size();
+ }
+ QCOMPARE(count, 1000);
+ QCOMPARE(totalsize, expectedSize);
+ }
+ }
+private:
+ FileSystem fs;
+};
+
+QTEST_MAIN(bench_QDir_tree)
+#include "bench_qdir_tree.moc"
diff --git a/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.qrc b/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.qrc
new file mode 100644
index 0000000000..d57cb6c368
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/tree/bench_qdir_tree.qrc
@@ -0,0 +1,5 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+ <file>4.6.0-list.txt</file>
+</qresource>
+</RCC>
diff --git a/tests/benchmarks/corelib/io/qdir/tree/tree.pro b/tests/benchmarks/corelib/io/qdir/tree/tree.pro
new file mode 100644
index 0000000000..773f0f7ccd
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdir/tree/tree.pro
@@ -0,0 +1,11 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = bench_qdir_tree
+DEPENDPATH += .
+INCLUDEPATH += .
+
+# Input
+SOURCES += bench_qdir_tree.cpp
+RESOURCES += bench_qdir_tree.qrc
+
+QT -= gui
diff --git a/tests/benchmarks/corelib/io/qdiriterator/main.cpp b/tests/benchmarks/corelib/io/qdiriterator/main.cpp
new file mode 100644
index 0000000000..fb9626f8db
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdiriterator/main.cpp
@@ -0,0 +1,251 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <QDirIterator>
+#include <QString>
+
+#ifdef Q_OS_WIN
+# include <windows.h>
+# include <atlbase.h>
+#else
+# include <sys/stat.h>
+# include <sys/types.h>
+# include <dirent.h>
+# include <errno.h>
+# include <string.h>
+#endif
+
+#include <qtest.h>
+
+#include "qfilesystemiterator.h"
+
+class tst_qdiriterator : public QObject
+{
+ Q_OBJECT
+private slots:
+ void posix();
+ void posix_data() { data(); }
+ void diriterator();
+ void diriterator_data() { data(); }
+ void fsiterator();
+ void fsiterator_data() { data(); }
+ void data();
+};
+
+
+void tst_qdiriterator::data()
+{
+#if defined(Q_OS_WINCE) || defined(Q_OS_SYMBIAN)
+ QByteArray qtdir = qPrintable(QCoreApplication::applicationDirPath());
+ qtdir += "/depot";
+#else
+#if defined(Q_OS_WIN)
+ const char *qtdir = "C:\\depot\\qt\\main";
+#else
+ const char *qtdir = ::getenv("QTDIR");
+#endif
+ if (!qtdir) {
+ fprintf(stderr, "QTDIR not set\n");
+ exit(1);
+ }
+#endif
+
+ QTest::addColumn<QByteArray>("dirpath");
+ QByteArray ba = QByteArray(qtdir) + "/src/corelib";
+ QByteArray ba1 = ba + "/io";
+ QTest::newRow(ba) << ba;
+ //QTest::newRow(ba1) << ba1;
+}
+
+#ifdef Q_OS_WIN
+static int posix_helper(const wchar_t *dirpath)
+{
+ int count = 0;
+ HANDLE hSearch;
+ WIN32_FIND_DATA fd;
+
+ const size_t origDirPathLength = wcslen(dirpath);
+
+ wchar_t appendedPath[MAX_PATH];
+ wcscpy(appendedPath, dirpath);
+ wcscat(appendedPath, L"\\*");
+ hSearch = FindFirstFile(appendedPath, &fd);
+ appendedPath[origDirPathLength] = 0;
+
+ if (hSearch == INVALID_HANDLE_VALUE) {
+ qWarning("FindFirstFile failed");
+ return count;
+ }
+
+ do {
+ if (!(fd.cFileName[0] == L'.' && fd.cFileName[1] == 0) &&
+ !(fd.cFileName[0] == L'.' && fd.cFileName[1] == L'.' && fd.cFileName[2] == 0))
+ {
+ if (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
+ wcscat(appendedPath, L"\\");
+ wcscat(appendedPath, fd.cFileName);
+ count += posix_helper(appendedPath);
+ appendedPath[origDirPathLength] = 0;
+ }
+ else {
+ ++count;
+ }
+ }
+ } while (FindNextFile(hSearch, &fd));
+ FindClose(hSearch);
+
+ return count;
+}
+
+#else
+
+static int posix_helper(const char *dirpath)
+{
+ //qDebug() << "DIR" << dirpath;
+ DIR *dir = ::opendir(dirpath);
+ if (!dir)
+ return 0;
+
+ dirent *entry = 0;
+
+ int count = 0;
+ while ((entry = ::readdir(dir))) {
+ if (qstrcmp(entry->d_name, ".") == 0)
+ continue;
+ if (qstrcmp(entry->d_name, "..") == 0)
+ continue;
+ ++count;
+ QByteArray ba = dirpath;
+ ba += '/';
+ ba += entry->d_name;
+ struct stat st;
+ lstat(ba.constData(), &st);
+ if (S_ISDIR(st.st_mode))
+ count += posix_helper(ba.constData());
+ }
+
+ ::closedir(dir);
+ return count;
+}
+#endif
+
+
+void tst_qdiriterator::posix()
+{
+ QFETCH(QByteArray, dirpath);
+
+ int count = 0;
+ QString path(dirpath);
+ QBENCHMARK {
+#ifdef Q_OS_WIN
+ count = posix_helper(path.utf16());
+#else
+ count = posix_helper(dirpath.constData());
+#endif
+ }
+ qDebug() << count;
+}
+
+void tst_qdiriterator::diriterator()
+{
+ QFETCH(QByteArray, dirpath);
+
+ int count = 0;
+
+ QBENCHMARK {
+ int c = 0;
+
+ QDirIterator dir(dirpath,
+ //QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot,
+ //QDir::AllEntries | QDir::Hidden,
+ QDir::Files,
+ QDirIterator::Subdirectories);
+
+ while (dir.hasNext()) {
+ dir.next();
+ //printf("%s\n", qPrintable(dir.fileName()));
+ 0 && printf("%d %s\n",
+ dir.fileInfo().isDir(),
+ //qPrintable(dir.fileInfo().absoluteFilePath()),
+ //qPrintable(dir.path()),
+ qPrintable(dir.filePath()));
+ ++c;
+ }
+ count = c;
+ }
+ qDebug() << count;
+}
+
+void tst_qdiriterator::fsiterator()
+{
+ QFETCH(QByteArray, dirpath);
+
+ int count = 0;
+ int dump = 0;
+
+ QBENCHMARK {
+ int c = 0;
+
+ dump && printf("\n\n\n\n");
+ QFileSystemIterator dir(dirpath,
+ //QDir::AllEntries | QDir::Hidden | QDir::NoDotAndDotDot,
+ //QDir::AllEntries | QDir::Hidden,
+ //QDir::Files | QDir::NoDotAndDotDot,
+ QDir::Files,
+ QFileSystemIterator::Subdirectories);
+
+ for (; !dir.atEnd(); dir.next()) {
+ dump && printf("%d %s\n",
+ dir.fileInfo().isDir(),
+ //qPrintable(dir.fileInfo().absoluteFilePath()),
+ //qPrintable(dir.path()),
+ qPrintable(dir.filePath())
+ );
+ ++c;
+ }
+ count = c;
+ }
+ qDebug() << count;
+}
+
+QTEST_MAIN(tst_qdiriterator)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro b/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro
new file mode 100755
index 0000000000..17d164d463
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro
@@ -0,0 +1,23 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qdiriterator
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+
+CONFIG += release
+CONFIG += debug
+
+
+SOURCES += main.cpp
+
+SOURCES += qfilesystemiterator.cpp
+HEADERS += qfilesystemiterator.h
+
+wince*|symbian: {
+ corelibdir.files = $$QT_SOURCE_TREE/src/corelib
+ corelibdir.path = ./depot/src
+ DEPLOYMENT += corelibdir
+}
+
diff --git a/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp
new file mode 100644
index 0000000000..ba5f3887f9
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.cpp
@@ -0,0 +1,678 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \since 4.5
+ \class QFileSystemIterator
+ \brief The QFileSystemIterator class provides an iterator for directory entrylists.
+
+ You can use QFileSystemIterator to navigate entries of a directory one at a time.
+ It is similar to QDir::entryList() and QDir::entryInfoList(), but because
+ it lists entries one at a time instead of all at once, it scales better
+ and is more suitable for large directories. It also supports listing
+ directory contents recursively, and following symbolic links. Unlike
+ QDir::entryList(), QFileSystemIterator does not support sorting.
+
+ The QFileSystemIterator constructor takes a QDir or a directory as
+ argument. After construction, the iterator is located before the first
+ directory entry. Here's how to iterate over all the entries sequentially:
+
+ \snippet doc/src/snippets/code/src.corelib.io.qdiriterator.cpp 0
+
+ The next() function returns the path to the next directory entry and
+ advances the iterator. You can also call filePath() to get the current
+ file path without advancing the iterator. The fileName() function returns
+ only the name of the file, similar to how QDir::entryList() works. You can
+ also call fileInfo() to get a QFileInfo for the current entry.
+
+ Unlike Qt's container iterators, QFileSystemIterator is uni-directional (i.e.,
+ you cannot iterate directories in reverse order) and does not allow random
+ access.
+
+ QFileSystemIterator works with all supported file engines, and is implemented
+ using QAbstractFileEngineIterator.
+
+ \sa QDir, QDir::entryList(), QAbstractFileEngineIterator
+*/
+
+/*! \enum QFileSystemIterator::IteratorFlag
+
+ This enum describes flags that you can combine to configure the behavior
+ of QFileSystemIterator.
+
+ \value NoIteratorFlags The default value, representing no flags. The
+ iterator will return entries for the assigned path.
+
+ \value Subdirectories List entries inside all subdirectories as well.
+
+ \value FollowSymlinks When combined with Subdirectories, this flag
+ enables iterating through all subdirectories of the assigned path,
+ following all symbolic links. Symbolic link loops (e.g., "link" => "." or
+ "link" => "..") are automatically detected and ignored.
+*/
+
+#include "qfilesystemiterator.h"
+
+#include <QDebug>
+#include <QtCore/qset.h>
+#include <QtCore/qstack.h>
+#include <QtCore/qvariant.h>
+
+#ifdef Q_OS_WIN
+# include <windows.h>
+# include <atlbase.h>
+#else
+# include <sys/stat.h>
+# include <sys/types.h>
+# include <dirent.h>
+# include <errno.h>
+#endif
+
+QT_BEGIN_NAMESPACE
+
+class QFileSystemIteratorPrivate
+{
+public:
+ QFileSystemIteratorPrivate(const QString &path, const QStringList &nameFilters,
+ QDir::Filters filters, QFileSystemIterator::IteratorFlags flags);
+ ~QFileSystemIteratorPrivate();
+
+ void pushSubDirectory(const QByteArray &path);
+ void advance();
+ bool isAcceptable() const;
+ bool shouldFollowDirectory(const QFileInfo &);
+ //bool matchesFilters(const QAbstractFileEngineIterator *it) const;
+ inline bool atEnd() const { return m_dirPaths.isEmpty(); }
+
+#ifdef Q_OS_WIN
+ QStack<HANDLE> m_dirStructs;
+ WIN32_FIND_DATA* m_entry;
+ WIN32_FIND_DATA m_fileSearchResult;
+ bool m_bFirstSearchResult;
+#else
+ QStack<DIR *> m_dirStructs;
+ dirent *m_entry;
+#endif
+
+ QSet<QString> visitedLinks;
+ QStack<QByteArray> m_dirPaths;
+ QFileInfo fileInfo;
+ QString currentFilePath;
+ QFileSystemIterator::IteratorFlags iteratorFlags;
+ QDir::Filters filters;
+ QStringList nameFilters;
+
+ enum { DontShowDir, ShowDotDotDir, ShowDotDir, ShowDir }
+ m_currentDirShown, m_nextDirShown;
+
+ QFileSystemIterator *q;
+
+private:
+ bool advanceHelper(); // returns true if we know we have something suitable
+};
+
+/*!
+ \internal
+*/
+QFileSystemIteratorPrivate::QFileSystemIteratorPrivate(const QString &path,
+ const QStringList &nameFilters, QDir::Filters filters,
+ QFileSystemIterator::IteratorFlags flags)
+ : iteratorFlags(flags)
+{
+ if (filters == QDir::NoFilter)
+ filters = QDir::AllEntries;
+ this->filters = filters;
+ this->nameFilters = nameFilters;
+
+ fileInfo.setFile(path);
+ QString dir = fileInfo.isSymLink() ? fileInfo.canonicalFilePath() : path;
+ pushSubDirectory(dir.toLocal8Bit());
+ // skip to acceptable entry
+ while (true) {
+ if (atEnd())
+ return;
+ if (isAcceptable())
+ return;
+ if (advanceHelper())
+ return;
+ }
+}
+
+/*!
+ \internal
+*/
+QFileSystemIteratorPrivate::~QFileSystemIteratorPrivate()
+{
+#ifdef Q_OS_WIN
+ while (!m_dirStructs.isEmpty())
+ ::FindClose(m_dirStructs.pop());
+#else
+ while (!m_dirStructs.isEmpty())
+ ::closedir(m_dirStructs.pop());
+#endif
+}
+
+#ifdef Q_OS_WIN
+static bool isDotOrDotDot(const wchar_t* name)
+{
+ if (name[0] == L'.' && name[1] == 0)
+ return true;
+ if (name[0] == L'.' && name[1] == L'.' && name[2] == 0)
+ return true;
+ return false;
+}
+#else
+static bool isDotOrDotDot(const char *name)
+{
+ if (name[0] == '.' && name[1] == 0)
+ return true;
+ if (name[0] == '.' && name[1] == '.' && name[2] == 0)
+ return true;
+ return false;
+}
+#endif
+
+/*!
+ \internal
+*/
+void QFileSystemIteratorPrivate::pushSubDirectory(const QByteArray &path)
+{
+/*
+ if (iteratorFlags & QFileSystemIterator::FollowSymlinks) {
+ if (fileInfo.filePath() != path)
+ fileInfo.setFile(path);
+ if (fileInfo.isSymLink()) {
+ visitedLinks << fileInfo.canonicalFilePath();
+ } else {
+ visitedLinks << fileInfo.absoluteFilePath();
+ }
+ }
+*/
+
+#ifdef Q_OS_WIN
+ wchar_t szSearchPath[MAX_PATH];
+ wcscpy(szSearchPath, QString(path).utf16());
+ wcscat(szSearchPath, L"\\*");
+ HANDLE dir = FindFirstFile(szSearchPath, &m_fileSearchResult);
+ m_bFirstSearchResult = true;
+#else
+ DIR *dir = ::opendir(path.constData());
+ //m_entry = ::readdir(dir);
+ //while (m_entry && isDotOrDotDot(m_entry->d_name))
+ // m_entry = ::readdir(m_dirStructs.top());
+#endif
+ m_dirStructs.append(dir);
+ m_dirPaths.append(path);
+ m_entry = 0;
+ if (filters & QDir::Dirs)
+ m_nextDirShown = ShowDir;
+ else
+ m_nextDirShown = DontShowDir;
+ m_currentDirShown = DontShowDir;
+}
+
+/*!
+ \internal
+*/
+bool QFileSystemIteratorPrivate::isAcceptable() const
+{
+ if (!m_entry)
+ return false;
+ return true;
+}
+
+/*!
+ \internal
+*/
+
+
+void QFileSystemIteratorPrivate::advance()
+{
+ while (true) {
+ if (advanceHelper())
+ return;
+ if (atEnd())
+ return;
+ if (isAcceptable())
+ return;
+ }
+}
+
+bool QFileSystemIteratorPrivate::advanceHelper()
+{
+ if (m_dirStructs.isEmpty())
+ return true;
+
+ //printf("ADV %d %d\n", int(m_currentDirShown), int(m_nextDirShown));
+
+ if ((filters & QDir::Dirs)) {
+ m_currentDirShown = m_nextDirShown;
+ if (m_nextDirShown == ShowDir) {
+ //printf("RESTING ON DIR %s %x\n", m_dirPaths.top().constData(), int(filters));
+ m_nextDirShown = (filters & QDir::NoDotAndDotDot) ? DontShowDir : ShowDotDir;
+ // skip start directory itself
+ if (m_dirStructs.size() == 1 && m_currentDirShown == ShowDir)
+ return advanceHelper();
+ return true;
+ }
+ if (m_nextDirShown == ShowDotDir) {
+ //printf("RESTING ON DOT %s %x\n", m_dirPaths.top().constData(), int(filters));
+ m_nextDirShown = ShowDotDotDir;
+ return true;
+ }
+ if (m_nextDirShown == ShowDotDotDir) {
+ //printf("RESTING ON DOTDOT %s %x\n", m_dirPaths.top().constData(), int(filters));
+ m_nextDirShown = DontShowDir;
+ return true;
+ }
+ m_currentDirShown = DontShowDir;
+ }
+
+#ifdef Q_OS_WIN
+ m_entry = &m_fileSearchResult;
+ if (m_bFirstSearchResult) {
+ m_bFirstSearchResult = false;
+ } else {
+ if (!FindNextFile(m_dirStructs.top(), m_entry))
+ m_entry = 0;
+ }
+
+ while (m_entry && isDotOrDotDot(m_entry->cFileName))
+ if (!FindNextFile(m_dirStructs.top(), m_entry))
+ m_entry = 0;
+
+ if (!m_entry) {
+ m_dirPaths.pop();
+ FindClose(m_dirStructs.pop());
+ return false;
+ }
+
+ if (m_entry->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
+ QByteArray ba = m_dirPaths.top();
+ ba += '\\';
+ ba += QString::fromWCharArray(m_entry->cFileName);
+ pushSubDirectory(ba);
+ }
+#else
+ m_entry = ::readdir(m_dirStructs.top());
+ while (m_entry && isDotOrDotDot(m_entry->d_name))
+ m_entry = ::readdir(m_dirStructs.top());
+ //return false; // further iteration possibly needed
+ //printf("READ %p %s\n", m_entry, m_entry ? m_entry->d_name : "");
+
+ if (!m_entry) {
+ m_dirPaths.pop();
+ DIR *dir = m_dirStructs.pop();
+ ::closedir(dir);
+ return false; // further iteration possibly needed
+ }
+
+ const char *name = m_entry->d_name;
+
+ QByteArray ba = m_dirPaths.top();
+ ba += '/';
+ ba += name;
+ struct stat st;
+ lstat(ba.constData(), &st);
+
+ if (S_ISDIR(st.st_mode)) {
+ pushSubDirectory(ba);
+ return false; // further iteration possibly needed
+ }
+#endif
+ return false; // further iteration possiblye needed
+}
+
+/*!
+ \internal
+ */
+bool QFileSystemIteratorPrivate::shouldFollowDirectory(const QFileInfo &fileInfo)
+{
+ // If we're doing flat iteration, we're done.
+ if (!(iteratorFlags & QFileSystemIterator::Subdirectories))
+ return false;
+
+ // Never follow non-directory entries
+ if (!fileInfo.isDir())
+ return false;
+
+
+ // Never follow . and ..
+ if (fileInfo.fileName() == QLatin1String(".") || fileInfo.fileName() == QLatin1String(".."))
+ return false;
+
+
+ // Check symlinks
+ if (fileInfo.isSymLink() && !(iteratorFlags & QFileSystemIterator::FollowSymlinks)) {
+ // Follow symlinks only if FollowSymlinks was passed
+ return false;
+ }
+
+ // Stop link loops
+ if (visitedLinks.contains(fileInfo.canonicalFilePath()))
+ return false;
+
+ return true;
+}
+
+
+/*!
+ \internal
+
+ This convenience function implements the iterator's filtering logics and
+ applies then to the current directory entry.
+
+ It returns true if the current entry matches the filters (i.e., the
+ current entry will be returned as part of the directory iteration);
+ otherwise, false is returned.
+*/
+#if 0
+bool QFileSystemIteratorPrivate::matchesFilters(const QAbstractFileEngineIterator *it) const
+{
+ const bool filterPermissions = ((filters & QDir::PermissionMask)
+ && (filters & QDir::PermissionMask) != QDir::PermissionMask);
+ const bool skipDirs = !(filters & (QDir::Dirs | QDir::AllDirs));
+ const bool skipFiles = !(filters & QDir::Files);
+ const bool skipSymlinks = (filters & QDir::NoSymLinks);
+ const bool doReadable = !filterPermissions || (filters & QDir::Readable);
+ const bool doWritable = !filterPermissions || (filters & QDir::Writable);
+ const bool doExecutable = !filterPermissions || (filters & QDir::Executable);
+ const bool includeHidden = (filters & QDir::Hidden);
+ const bool includeSystem = (filters & QDir::System);
+
+#ifndef QT_NO_REGEXP
+ // Prepare name filters
+ QList<QRegExp> regexps;
+ bool hasNameFilters = !nameFilters.isEmpty() && !(nameFilters.contains(QLatin1String("*")));
+ if (hasNameFilters) {
+ for (int i = 0; i < nameFilters.size(); ++i) {
+ regexps << QRegExp(nameFilters.at(i),
+ (filters & QDir::CaseSensitive) ? Qt::CaseSensitive : Qt::CaseInsensitive,
+ QRegExp::Wildcard);
+ }
+ }
+#endif
+
+ QString fileName = it->currentFileName();
+ if (fileName.isEmpty()) {
+ // invalid entry
+ return false;
+ }
+
+ QFileInfo fi = it->currentFileInfo();
+ QString filePath = it->currentFilePath();
+
+#ifndef QT_NO_REGEXP
+ // Pass all entries through name filters, except dirs if the AllDirs
+ // filter is passed.
+ if (hasNameFilters && !((filters & QDir::AllDirs) && fi.isDir())) {
+ bool matched = false;
+ for (int i = 0; i < regexps.size(); ++i) {
+ if (regexps.at(i).exactMatch(fileName)) {
+ matched = true;
+ break;
+ }
+ }
+ if (!matched)
+ return false;
+ }
+#endif
+
+ bool dotOrDotDot = (fileName == QLatin1String(".") || fileName == QLatin1String(".."));
+ if ((filters & QDir::NoDotAndDotDot) && dotOrDotDot)
+ return false;
+
+ bool isHidden = !dotOrDotDot && fi.isHidden();
+ if (!includeHidden && isHidden)
+ return false;
+
+ bool isSystem = (!fi.isFile() && !fi.isDir() && !fi.isSymLink())
+ || (!fi.exists() && fi.isSymLink());
+ if (!includeSystem && isSystem)
+ return false;
+
+ bool alwaysShow = (filters & QDir::TypeMask) == 0
+ && ((isHidden && includeHidden)
+ || (includeSystem && isSystem));
+
+ // Skip files and directories
+ if ((filters & QDir::AllDirs) == 0 && skipDirs && fi.isDir()) {
+ if (!alwaysShow)
+ return false;
+ }
+
+ if ((skipFiles && (fi.isFile() || !fi.exists()))
+ || (skipSymlinks && fi.isSymLink())) {
+ if (!alwaysShow)
+ return false;
+ }
+
+ if (filterPermissions
+ && ((doReadable && !fi.isReadable())
+ || (doWritable && !fi.isWritable())
+ || (doExecutable && !fi.isExecutable()))) {
+ return false;
+ }
+
+ if (!includeSystem && !dotOrDotDot && ((fi.exists() && !fi.isFile() && !fi.isDir() && !fi.isSymLink())
+ || (!fi.exists() && fi.isSymLink()))) {
+ return false;
+ }
+
+ return true;
+}
+#endif
+
+/*!
+ Constructs a QFileSystemIterator that can iterate over \a dir's entrylist, using
+ \a dir's name filters and regular filters. You can pass options via \a
+ flags to decide how the directory should be iterated.
+
+ By default, \a flags is NoIteratorFlags, which provides the same behavior
+ as in QDir::entryList().
+
+ The sorting in \a dir is ignored.
+
+ \sa atEnd(), next(), IteratorFlags
+*/
+QFileSystemIterator::QFileSystemIterator(const QDir &dir, IteratorFlags flags)
+ : d(new QFileSystemIteratorPrivate(dir.path(), dir.nameFilters(), dir.filter(), flags))
+{
+ d->q = this;
+}
+
+/*!
+ Constructs a QFileSystemIterator that can iterate over \a path, with no name
+ filtering and \a filters for entry filtering. You can pass options via \a
+ flags to decide how the directory should be iterated.
+
+ By default, \a filters is QDir::NoFilter, and \a flags is NoIteratorFlags,
+ which provides the same behavior as in QDir::entryList().
+
+ \sa atEnd(), next(), IteratorFlags
+*/
+QFileSystemIterator::QFileSystemIterator(const QString &path, QDir::Filters filters, IteratorFlags flags)
+ : d(new QFileSystemIteratorPrivate(path, QStringList(QLatin1String("*")), filters, flags))
+{
+ d->q = this;
+}
+
+/*!
+ Constructs a QFileSystemIterator that can iterate over \a path. You can pass
+ options via \a flags to decide how the directory should be iterated.
+
+ By default, \a flags is NoIteratorFlags, which provides the same behavior
+ as in QDir::entryList().
+
+ \sa atEnd(), next(), IteratorFlags
+*/
+QFileSystemIterator::QFileSystemIterator(const QString &path, IteratorFlags flags)
+ : d(new QFileSystemIteratorPrivate(path, QStringList(QLatin1String("*")), QDir::NoFilter, flags))
+{
+ d->q = this;
+}
+
+/*!
+ Constructs a QFileSystemIterator that can iterate over \a path, using \a
+ nameFilters and \a filters. You can pass options via \a flags to decide
+ how the directory should be iterated.
+
+ By default, \a flags is NoIteratorFlags, which provides the same behavior
+ as QDir::entryList().
+
+ \sa atEnd(), next(), IteratorFlags
+*/
+QFileSystemIterator::QFileSystemIterator(const QString &path, const QStringList &nameFilters,
+ QDir::Filters filters, IteratorFlags flags)
+ : d(new QFileSystemIteratorPrivate(path, nameFilters, filters, flags))
+{
+ d->q = this;
+}
+
+/*!
+ Destroys the QFileSystemIterator.
+*/
+QFileSystemIterator::~QFileSystemIterator()
+{
+ delete d;
+}
+
+/*!
+ Advances the iterator to the next entry, and returns the file path of this
+ new entry. If atEnd() returns true, this function does nothing, and
+ returns a null QString.
+
+ You can call fileName() or filePath() to get the current entry file name
+ or path, or fileInfo() to get a QFileInfo for the current entry.
+
+ \sa hasNext(), fileName(), filePath(), fileInfo()
+*/
+void QFileSystemIterator::next()
+{
+ d->advance();
+}
+
+/*!
+ Returns true if there is at least one more entry in the directory;
+ otherwise, false is returned.
+
+ \sa next(), fileName(), filePath(), fileInfo()
+*/
+bool QFileSystemIterator::atEnd() const
+{
+ return d->atEnd();
+}
+
+/*!
+ Returns the file name for the current directory entry, without the path
+ prepended. If the current entry is invalid (i.e., isValid() returns
+ false), a null QString is returned.
+
+ This function is provided for the convenience when iterating single
+ directories. For recursive iteration, you should call filePath() or
+ fileInfo() instead.
+
+ \sa filePath(), fileInfo()
+*/
+QString QFileSystemIterator::fileName() const
+{
+ if (d->atEnd() || !d->m_entry)
+ return QString();
+ if (d->m_currentDirShown == QFileSystemIteratorPrivate::ShowDir)
+ return QString();
+ if (d->m_currentDirShown == QFileSystemIteratorPrivate::ShowDotDir)
+ return QLatin1String("@");
+ if (d->m_currentDirShown == QFileSystemIteratorPrivate::ShowDotDotDir)
+ return QLatin1String("@@");
+#ifdef Q_OS_WIN
+ return QString::fromWCharArray(d->m_entry->cFileName);
+#else
+ return QString::fromLocal8Bit(d->m_entry->d_name);
+#endif
+}
+
+/*!
+ Returns the full file path for the current directory entry. If the current
+ entry is invalid (i.e., isValid() returns false), a null QString is
+ returned.
+
+ \sa fileInfo(), fileName()
+*/
+QString QFileSystemIterator::filePath() const
+{
+ if (d->atEnd())
+ return QString();
+ QByteArray ba = d->m_dirPaths.top();
+ if (d->m_currentDirShown == QFileSystemIteratorPrivate::ShowDotDir)
+ ba += "/.";
+ else if (d->m_currentDirShown == QFileSystemIteratorPrivate::ShowDotDotDir)
+ ba += "/..";
+ else if (d->m_entry) {
+ ba += '/';
+#ifdef Q_OS_WIN
+ ba += QString::fromWCharArray(d->m_entry->cFileName);
+#else
+ ba += d->m_entry->d_name;
+#endif
+ }
+ return QString::fromLocal8Bit(ba);
+}
+
+/*!
+ Returns a QFileInfo for the current directory entry. If the current entry
+ is invalid (i.e., isValid() returns false), a null QFileInfo is returned.
+
+ \sa filePath(), fileName()
+*/
+QFileInfo QFileSystemIterator::fileInfo() const
+{
+ return QFileInfo(filePath());
+}
+
+/*!
+ Returns the base directory of the iterator.
+*/
+QString QFileSystemIterator::path() const
+{
+ return QString::fromLocal8Bit(d->m_dirPaths.top());
+}
+
+QT_END_NAMESPACE
diff --git a/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h
new file mode 100644
index 0000000000..b382b2534c
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qdiriterator/qfilesystemiterator.h
@@ -0,0 +1,99 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QFILESYSTEMITERATOR_H
+#define QFILESYSTEMITERATOR_H
+
+#include <QtCore/qdir.h>
+
+QT_BEGIN_HEADER
+
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Core)
+
+class QFileSystemIteratorPrivate;
+class //Q_CORE_EXPORT
+QFileSystemIterator
+{
+public:
+ enum IteratorFlag {
+ NoIteratorFlags = 0x0,
+ FollowSymlinks = 0x1,
+ Subdirectories = 0x2
+ };
+ Q_DECLARE_FLAGS(IteratorFlags, IteratorFlag)
+
+ QFileSystemIterator(const QDir &dir, IteratorFlags flags = NoIteratorFlags);
+ QFileSystemIterator(const QString &path,
+ IteratorFlags flags = NoIteratorFlags);
+ QFileSystemIterator(const QString &path,
+ QDir::Filters filter,
+ IteratorFlags flags = NoIteratorFlags);
+ QFileSystemIterator(const QString &path,
+ const QStringList &nameFilters,
+ QDir::Filters filters = QDir::NoFilter,
+ IteratorFlags flags = NoIteratorFlags);
+
+ virtual ~QFileSystemIterator();
+
+ void next();
+ bool atEnd() const;
+
+ QString fileName() const;
+ QString filePath() const;
+ QFileInfo fileInfo() const;
+ QString path() const;
+
+private:
+ Q_DISABLE_COPY(QFileSystemIterator)
+
+ QFileSystemIteratorPrivate *d;
+ friend class QDir;
+};
+
+Q_DECLARE_OPERATORS_FOR_FLAGS(QFileSystemIterator::IteratorFlags)
+
+QT_END_NAMESPACE
+
+QT_END_HEADER
+
+#endif
diff --git a/tests/benchmarks/corelib/io/qfile/main.cpp b/tests/benchmarks/corelib/io/qfile/main.cpp
new file mode 100644
index 0000000000..9c8684db0c
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qfile/main.cpp
@@ -0,0 +1,684 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QTemporaryFile>
+#include <QFSFileEngine>
+#include <QString>
+#include <QDirIterator>
+
+#include <qtest.h>
+
+#include <stdio.h>
+
+#ifdef Q_OS_WIN
+# include <windows.h>
+# include <atlbase.h>
+#endif
+
+#define BUFSIZE 1024*512
+#define FACTOR 1024*512
+#define TF_SIZE FACTOR*81
+
+// 10 predefined (but random() seek positions
+// hardcoded to be comparable over several runs
+const int seekpos[] = {int(TF_SIZE*0.52),
+ int(TF_SIZE*0.23),
+ int(TF_SIZE*0.73),
+ int(TF_SIZE*0.77),
+ int(TF_SIZE*0.80),
+ int(TF_SIZE*0.12),
+ int(TF_SIZE*0.53),
+ int(TF_SIZE*0.21),
+ int(TF_SIZE*0.27),
+ int(TF_SIZE*0.78)};
+
+const int sp_size = sizeof(seekpos)/sizeof(int);
+
+class tst_qfile: public QObject
+{
+Q_ENUMS(BenchmarkType)
+Q_OBJECT
+public:
+ enum BenchmarkType {
+ QFileBenchmark = 1,
+ QFSFileEngineBenchmark,
+ Win32Benchmark,
+ PosixBenchmark,
+ QFileFromPosixBenchmark
+ };
+private slots:
+ void initTestCase();
+ void cleanupTestCase();
+
+ void open_data();
+ void open();
+ void seek_data();
+ void seek();
+
+ void readSmallFiles_QFile();
+ void readSmallFiles_QFSFileEngine();
+ void readSmallFiles_posix();
+ void readSmallFiles_Win32();
+
+ void readSmallFiles_QFile_data();
+ void readSmallFiles_QFSFileEngine_data();
+ void readSmallFiles_posix_data();
+ void readSmallFiles_Win32_data();
+
+ void readBigFile_QFile_data();
+ void readBigFile_QFSFileEngine_data();
+ void readBigFile_posix_data();
+ void readBigFile_Win32_data();
+
+ void readBigFile_QFile();
+ void readBigFile_QFSFileEngine();
+ void readBigFile_posix();
+ void readBigFile_Win32();
+
+private:
+ void readBigFile_data(BenchmarkType type, QIODevice::OpenModeFlag t, QIODevice::OpenModeFlag b);
+ void readBigFile();
+ void readSmallFiles_data(BenchmarkType type, QIODevice::OpenModeFlag t, QIODevice::OpenModeFlag b);
+ void readSmallFiles();
+ void createFile();
+ void fillFile(int factor=FACTOR);
+ void removeFile();
+ void createSmallFiles();
+ void removeSmallFiles();
+ QString filename;
+ QString tmpDirName;
+};
+
+Q_DECLARE_METATYPE(tst_qfile::BenchmarkType)
+Q_DECLARE_METATYPE(QIODevice::OpenMode)
+Q_DECLARE_METATYPE(QIODevice::OpenModeFlag)
+
+void tst_qfile::createFile()
+{
+ removeFile(); // Cleanup in case previous test case aborted before cleaning up
+
+ QTemporaryFile tmpFile;
+ tmpFile.setAutoRemove(false);
+ if (!tmpFile.open())
+ ::exit(1);
+ filename = tmpFile.fileName();
+ tmpFile.close();
+}
+
+void tst_qfile::removeFile()
+{
+ if (!filename.isEmpty())
+ QFile::remove(filename);
+}
+
+void tst_qfile::fillFile(int factor)
+{
+ QFile tmpFile(filename);
+ tmpFile.open(QIODevice::WriteOnly);
+ //for (int row=0; row<factor; ++row) {
+ // tmpFile.write(QByteArray().fill('0'+row%('0'-'z'), 80));
+ // tmpFile.write("\n");
+ //}
+ tmpFile.seek(factor*80);
+ tmpFile.putChar('\n');
+ tmpFile.close();
+ // let IO settle
+ QTest::qSleep(2000);
+}
+
+void tst_qfile::initTestCase()
+{
+}
+
+void tst_qfile::cleanupTestCase()
+{
+}
+
+void tst_qfile::readBigFile_QFile() { readBigFile(); }
+void tst_qfile::readBigFile_QFSFileEngine() { readBigFile(); }
+void tst_qfile::readBigFile_posix()
+{
+ readBigFile();
+}
+void tst_qfile::readBigFile_Win32() { readBigFile(); }
+
+void tst_qfile::readBigFile_QFile_data()
+{
+ readBigFile_data(QFileBenchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+ readBigFile_data(QFileBenchmark, QIODevice::NotOpen, QIODevice::Unbuffered);
+ readBigFile_data(QFileBenchmark, QIODevice::Text, QIODevice::NotOpen);
+ readBigFile_data(QFileBenchmark, QIODevice::Text, QIODevice::Unbuffered);
+
+}
+
+void tst_qfile::readBigFile_QFSFileEngine_data()
+{
+ readBigFile_data(QFSFileEngineBenchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+ readBigFile_data(QFSFileEngineBenchmark, QIODevice::NotOpen, QIODevice::Unbuffered);
+ readBigFile_data(QFSFileEngineBenchmark, QIODevice::Text, QIODevice::NotOpen);
+ readBigFile_data(QFSFileEngineBenchmark, QIODevice::Text, QIODevice::Unbuffered);
+}
+
+void tst_qfile::readBigFile_posix_data()
+{
+ readBigFile_data(PosixBenchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+}
+
+void tst_qfile::readBigFile_Win32_data()
+{
+ readBigFile_data(Win32Benchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+}
+
+
+void tst_qfile::readBigFile_data(BenchmarkType type, QIODevice::OpenModeFlag t, QIODevice::OpenModeFlag b)
+{
+ QTest::addColumn<tst_qfile::BenchmarkType>("testType");
+ QTest::addColumn<int>("blockSize");
+ QTest::addColumn<QFile::OpenModeFlag>("textMode");
+ QTest::addColumn<QFile::OpenModeFlag>("bufferedMode");
+
+ const int bs[] = {1024, 1024*2, 1024*8, 1024*16, 1024*32,1024*512};
+ int bs_entries = sizeof(bs)/sizeof(const int);
+
+ QString flagstring;
+ if (t & QIODevice::Text) flagstring += "textMode ";
+ if (b & QIODevice::Unbuffered) flagstring += "unbuffered ";
+ if (flagstring.isEmpty()) flagstring = "none";
+
+ for (int i=0; i<bs_entries; ++i)
+ QTest::newRow((QString("BS: %1, Flags: %2" )).arg(bs[i]).arg(flagstring).toLatin1().constData()) << type << bs[i] << t << b;
+}
+
+void tst_qfile::readBigFile()
+{
+ QFETCH(tst_qfile::BenchmarkType, testType);
+ QFETCH(int, blockSize);
+ QFETCH(QFile::OpenModeFlag, textMode);
+ QFETCH(QFile::OpenModeFlag, bufferedMode);
+
+#ifndef Q_OS_WIN
+ if (testType == Win32Benchmark)
+ QSKIP("This is Windows only benchmark.", SkipSingle);
+#endif
+
+ char *buffer = new char[BUFSIZE];
+ createFile();
+ fillFile();
+
+ switch (testType) {
+ case(QFileBenchmark): {
+ QFile file(filename);
+ file.open(QIODevice::ReadOnly|textMode|bufferedMode);
+ QBENCHMARK {
+ while(!file.atEnd())
+ file.read(blockSize);
+ file.reset();
+ }
+ file.close();
+ }
+ break;
+ case(QFSFileEngineBenchmark): {
+ QFSFileEngine fse(filename);
+ fse.open(QIODevice::ReadOnly|textMode|bufferedMode);
+ QBENCHMARK {
+ //qWarning() << fse.supportsExtension(QAbstractFileEngine::AtEndExtension);
+ while(fse.read(buffer, blockSize));
+ fse.seek(0);
+ }
+ fse.close();
+ }
+ break;
+ case(PosixBenchmark): {
+ QByteArray data = filename.toLocal8Bit();
+ const char* cfilename = data.constData();
+ FILE* cfile = ::fopen(cfilename, "rb");
+ QBENCHMARK {
+ while(!feof(cfile))
+ ::fread(buffer, blockSize, 1, cfile);
+ ::fseek(cfile, 0, SEEK_SET);
+ }
+ ::fclose(cfile);
+ }
+ break;
+ case(QFileFromPosixBenchmark): {
+ // No gain in benchmarking this case
+ }
+ break;
+ case(Win32Benchmark): {
+#ifdef Q_OS_WIN
+ HANDLE hndl;
+
+ // ensure we don't account string conversion
+ wchar_t* cfilename = (wchar_t*)filename.utf16();
+
+ hndl = CreateFile(cfilename, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0);
+ Q_ASSERT(hndl);
+ wchar_t* nativeBuffer = new wchar_t[BUFSIZE];
+ DWORD numberOfBytesRead;
+
+ QBENCHMARK {
+ do {
+ ReadFile(hndl, nativeBuffer, blockSize, &numberOfBytesRead, NULL);
+ } while(numberOfBytesRead != 0);
+ SetFilePointer(hndl, 0, NULL, FILE_BEGIN);
+ }
+ delete[] nativeBuffer;
+ CloseHandle(hndl);
+#else
+ QFAIL("Not running on a non-Windows platform!");
+#endif
+ }
+ break;
+ }
+
+ removeFile();
+ delete[] buffer;
+}
+
+void tst_qfile::seek_data()
+{
+ QTest::addColumn<tst_qfile::BenchmarkType>("testType");
+ QTest::newRow("QFile") << QFileBenchmark;
+ QTest::newRow("QFSFileEngine") << QFSFileEngineBenchmark;
+ QTest::newRow("Posix FILE*") << PosixBenchmark;
+#ifdef Q_OS_WIN
+ QTest::newRow("Win32 API") << Win32Benchmark;
+#endif
+}
+
+void tst_qfile::seek()
+{
+ QFETCH(tst_qfile::BenchmarkType, testType);
+ int i = 0;
+
+ createFile();
+ fillFile();
+
+ switch (testType) {
+ case(QFileBenchmark): {
+ QFile file(filename);
+ file.open(QIODevice::ReadOnly);
+ QBENCHMARK {
+ i=(i+1)%sp_size;
+ file.seek(seekpos[i]);
+ }
+ file.close();
+ }
+ break;
+ case(QFSFileEngineBenchmark): {
+ QFSFileEngine fse(filename);
+ fse.open(QIODevice::ReadOnly);
+ QBENCHMARK {
+ i=(i+1)%sp_size;
+ fse.seek(seekpos[i]);
+ }
+ fse.close();
+ }
+ break;
+ case(PosixBenchmark): {
+ QByteArray data = filename.toLocal8Bit();
+ const char* cfilename = data.constData();
+ FILE* cfile = ::fopen(cfilename, "rb");
+ QBENCHMARK {
+ i=(i+1)%sp_size;
+ ::fseek(cfile, seekpos[i], SEEK_SET);
+ }
+ ::fclose(cfile);
+ }
+ break;
+ case(QFileFromPosixBenchmark): {
+ // No gain in benchmarking this case
+ }
+ break;
+ case(Win32Benchmark): {
+#ifdef Q_OS_WIN
+ HANDLE hndl;
+
+ // ensure we don't account string conversion
+ wchar_t* cfilename = (wchar_t*)filename.utf16();
+
+ hndl = CreateFile(cfilename, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0);
+ Q_ASSERT(hndl);
+ QBENCHMARK {
+ i=(i+1)%sp_size;
+ SetFilePointer(hndl, seekpos[i], NULL, 0);
+ }
+ CloseHandle(hndl);
+#else
+ QFAIL("Not running on a Windows plattform!");
+#endif
+ }
+ break;
+ }
+
+ removeFile();
+}
+
+void tst_qfile::open_data()
+{
+ QTest::addColumn<tst_qfile::BenchmarkType>("testType");
+ QTest::newRow("QFile") << QFileBenchmark;
+ QTest::newRow("QFSFileEngine") << QFSFileEngineBenchmark;
+ QTest::newRow("Posix FILE*") << PosixBenchmark;
+ QTest::newRow("QFile from FILE*") << QFileFromPosixBenchmark;
+#ifdef Q_OS_WIN
+ QTest::newRow("Win32 API") << Win32Benchmark;
+#endif
+}
+
+void tst_qfile::open()
+{
+ QFETCH(tst_qfile::BenchmarkType, testType);
+
+ createFile();
+
+ switch (testType) {
+ case(QFileBenchmark): {
+ QBENCHMARK {
+ QFile file( filename );
+ file.open( QIODevice::ReadOnly );
+ file.close();
+ }
+ }
+ break;
+ case(QFSFileEngineBenchmark): {
+ QBENCHMARK {
+ QFSFileEngine fse(filename);
+ fse.open(QIODevice::ReadOnly);
+ fse.close();
+ }
+ }
+ break;
+
+ case(PosixBenchmark): {
+ // ensure we don't account toLocal8Bit()
+ QByteArray data = filename.toLocal8Bit();
+ const char* cfilename = data.constData();
+
+ QBENCHMARK {
+ FILE* cfile = ::fopen(cfilename, "rb");
+ ::fclose(cfile);
+ }
+ }
+ break;
+ case(QFileFromPosixBenchmark): {
+ // ensure we don't account toLocal8Bit()
+ QByteArray data = filename.toLocal8Bit();
+ const char* cfilename = data.constData();
+ FILE* cfile = ::fopen(cfilename, "rb");
+
+ QBENCHMARK {
+ QFile file;
+ file.open(cfile, QIODevice::ReadOnly);
+ file.close();
+ }
+ ::fclose(cfile);
+ }
+ break;
+ case(Win32Benchmark): {
+#ifdef Q_OS_WIN
+ HANDLE hndl;
+
+ // ensure we don't account string conversion
+ wchar_t* cfilename = (wchar_t*)filename.utf16();
+
+ QBENCHMARK {
+ hndl = CreateFile(cfilename, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0);
+ Q_ASSERT(hndl);
+ CloseHandle(hndl);
+ }
+#else
+ QFAIL("Not running on a non-Windows platform!");
+#endif
+ }
+ break;
+ }
+
+ removeFile();
+}
+
+
+void tst_qfile::readSmallFiles_QFile() { readSmallFiles(); }
+void tst_qfile::readSmallFiles_QFSFileEngine() { readSmallFiles(); }
+void tst_qfile::readSmallFiles_posix()
+{
+ readSmallFiles();
+}
+void tst_qfile::readSmallFiles_Win32()
+{
+ readSmallFiles();
+}
+
+void tst_qfile::readSmallFiles_QFile_data()
+{
+ readSmallFiles_data(QFileBenchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+ readSmallFiles_data(QFileBenchmark, QIODevice::NotOpen, QIODevice::Unbuffered);
+ readSmallFiles_data(QFileBenchmark, QIODevice::Text, QIODevice::NotOpen);
+ readSmallFiles_data(QFileBenchmark, QIODevice::Text, QIODevice::Unbuffered);
+
+}
+
+void tst_qfile::readSmallFiles_QFSFileEngine_data()
+{
+ readSmallFiles_data(QFSFileEngineBenchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+ readSmallFiles_data(QFSFileEngineBenchmark, QIODevice::NotOpen, QIODevice::Unbuffered);
+ readSmallFiles_data(QFSFileEngineBenchmark, QIODevice::Text, QIODevice::NotOpen);
+ readSmallFiles_data(QFSFileEngineBenchmark, QIODevice::Text, QIODevice::Unbuffered);
+}
+
+void tst_qfile::readSmallFiles_posix_data()
+{
+ readSmallFiles_data(PosixBenchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+}
+
+void tst_qfile::readSmallFiles_Win32_data()
+{
+ readSmallFiles_data(Win32Benchmark, QIODevice::NotOpen, QIODevice::NotOpen);
+}
+
+
+void tst_qfile::readSmallFiles_data(BenchmarkType type, QIODevice::OpenModeFlag t, QIODevice::OpenModeFlag b)
+{
+ QTest::addColumn<tst_qfile::BenchmarkType>("testType");
+ QTest::addColumn<int>("blockSize");
+ QTest::addColumn<QFile::OpenModeFlag>("textMode");
+ QTest::addColumn<QFile::OpenModeFlag>("bufferedMode");
+
+ const int bs[] = {1024, 1024*2, 1024*8, 1024*16, 1024*32,1024*512};
+ int bs_entries = sizeof(bs)/sizeof(const int);
+
+ QString flagstring;
+ if (t & QIODevice::Text) flagstring += "textMode ";
+ if (b & QIODevice::Unbuffered) flagstring += "unbuffered ";
+ if (flagstring.isEmpty()) flagstring = "none";
+
+ for (int i=0; i<bs_entries; ++i)
+ QTest::newRow((QString("BS: %1, Flags: %2" )).arg(bs[i]).arg(flagstring).toLatin1().constData()) << type << bs[i] << t << b;
+
+}
+
+void tst_qfile::createSmallFiles()
+{
+ QDir dir = QDir::temp();
+ dir.mkdir("tst");
+ dir.cd("tst");
+ tmpDirName = dir.absolutePath();
+
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_WINCE)
+ for (int i = 0; i < 100; ++i)
+#else
+ for (int i = 0; i < 1000; ++i)
+#endif
+ {
+ QFile f(tmpDirName+"/"+QString::number(i));
+ f.open(QIODevice::WriteOnly);
+ f.seek(511);
+ f.putChar('\n');
+ f.close();
+ }
+}
+
+void tst_qfile::removeSmallFiles()
+{
+ QDirIterator it(tmpDirName, QDirIterator::FollowSymlinks);
+ while (it.hasNext())
+ QFile::remove(it.next());
+ QDir::temp().rmdir("tst");
+}
+
+
+void tst_qfile::readSmallFiles()
+{
+ QFETCH(tst_qfile::BenchmarkType, testType);
+ QFETCH(int, blockSize);
+ QFETCH(QFile::OpenModeFlag, textMode);
+ QFETCH(QFile::OpenModeFlag, bufferedMode);
+
+#ifndef Q_OS_WIN
+ if (testType == Win32Benchmark)
+ QSKIP("This is Windows only benchmark.", SkipSingle);
+#endif
+
+ createSmallFiles();
+
+ QDir dir(tmpDirName);
+ const QStringList files = dir.entryList(QDir::NoDotAndDotDot|QDir::NoSymLinks|QDir::Files);
+ char *buffer = new char[BUFSIZE];
+
+ switch (testType) {
+ case(QFileBenchmark): {
+ QList<QFile*> fileList;
+ Q_FOREACH(QString file, files) {
+ QFile *f = new QFile(tmpDirName+ "/" + file);
+ f->open(QIODevice::ReadOnly|textMode|bufferedMode);
+ fileList.append(f);
+ }
+
+ QBENCHMARK {
+ Q_FOREACH(QFile *file, fileList) {
+ while (!file->atEnd()) {
+ file->read(buffer, blockSize);
+ }
+ }
+ }
+
+ Q_FOREACH(QFile *file, fileList) {
+ file->close();
+ delete file;
+ }
+ }
+ break;
+ case(QFSFileEngineBenchmark): {
+ QList<QFSFileEngine*> fileList;
+ Q_FOREACH(QString file, files) {
+ QFSFileEngine *fse = new QFSFileEngine(tmpDirName+ "/" + file);
+ fse->open(QIODevice::ReadOnly|textMode|bufferedMode);
+ fileList.append(fse);
+ }
+
+ QBENCHMARK {
+ Q_FOREACH(QFSFileEngine *fse, fileList) {
+ while (fse->read(buffer, blockSize));
+ }
+ }
+
+ Q_FOREACH(QFSFileEngine *fse, fileList) {
+ fse->close();
+ delete fse;
+ }
+ }
+ break;
+ case(PosixBenchmark): {
+ QList<FILE*> fileList;
+ Q_FOREACH(QString file, files) {
+ fileList.append(::fopen(QFile::encodeName(tmpDirName+ "/" + file).constData(), "rb"));
+ }
+
+ QBENCHMARK {
+ Q_FOREACH(FILE* cfile, fileList) {
+ while(!feof(cfile))
+ ::fread(buffer, blockSize, 1, cfile);
+ ::fseek(cfile, 0, SEEK_SET);
+ }
+ }
+
+ Q_FOREACH(FILE* cfile, fileList) {
+ ::fclose(cfile);
+ }
+ }
+ break;
+ case(QFileFromPosixBenchmark): {
+ // No gain in benchmarking this case
+ }
+ break;
+ case(Win32Benchmark): {
+#ifdef Q_OS_WIN
+ HANDLE hndl;
+
+ // ensure we don't account string conversion
+ wchar_t* cfilename = (wchar_t*)filename.utf16();
+
+ hndl = CreateFile(cfilename, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0);
+ Q_ASSERT(hndl);
+ wchar_t* nativeBuffer = new wchar_t[BUFSIZE];
+ DWORD numberOfBytesRead;
+ QBENCHMARK {
+ do {
+ ReadFile(hndl, nativeBuffer, blockSize, &numberOfBytesRead, NULL);
+ } while(numberOfBytesRead != 0);
+ }
+ delete nativeBuffer;
+ CloseHandle(hndl);
+#else
+ QFAIL("Not running on a non-Windows platform!");
+#endif
+ }
+ break;
+ }
+
+ removeSmallFiles();
+ delete[] buffer;
+}
+
+QTEST_MAIN(tst_qfile)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/io/qfile/qfile.pro b/tests/benchmarks/corelib/io/qfile/qfile.pro
new file mode 100644
index 0000000000..8663cab24b
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qfile/qfile.pro
@@ -0,0 +1,7 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qfile
+QT -= gui
+win32: DEFINES+= _CRT_SECURE_NO_WARNINGS
+
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qfileinfo/main.cpp b/tests/benchmarks/corelib/io/qfileinfo/main.cpp
new file mode 100644
index 0000000000..3274adee8f
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qfileinfo/main.cpp
@@ -0,0 +1,125 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <qtest.h>
+#include <QtTest/QtTest>
+#include <QtCore/QCoreApplication>
+#include <QtCore/QFileInfo>
+#include <QtCore/QFile>
+
+#include "private/qfsfileengine_p.h"
+#include "../../../../shared/filesystem.h"
+
+class qfileinfo : public QObject
+{
+ Q_OBJECT
+private slots:
+ void canonicalFileNamePerformance();
+#if defined(Q_OS_WIN) && !defined(Q_OS_WINCE)
+ void symLinkTargetPerformanceLNK();
+ void symLinkTargetPerformanceMounpoint();
+#endif
+ void initTestCase();
+ void cleanupTestCase();
+public:
+ qfileinfo() : QObject() {};
+};
+
+void qfileinfo::initTestCase()
+{
+}
+
+void qfileinfo::cleanupTestCase()
+{
+}
+
+void qfileinfo::canonicalFileNamePerformance()
+{
+ QString appPath = QCoreApplication::applicationFilePath();
+ QFSFileEnginePrivate::canonicalized(appPath); // warmup
+ QFSFileEnginePrivate::canonicalized(appPath); // more warmup
+ QBENCHMARK {
+ for (int i = 0; i < 5000; i++) {
+ QFSFileEnginePrivate::canonicalized(appPath);
+ }
+ }
+}
+
+#if defined(Q_OS_WIN) && !defined(Q_OS_WINCE)
+void qfileinfo::symLinkTargetPerformanceLNK()
+{
+ QVERIFY(QFile::link("file","link.lnk"));
+ QFileInfo info("link.lnk");
+ info.setCaching(false);
+ QVERIFY(info.isSymLink());
+ QString linkTarget;
+ QBENCHMARK {
+ for(int i=0; i<100; i++)
+ linkTarget = info.readLink();
+ }
+ QVERIFY(QFile::remove("link.lnk"));
+}
+
+void qfileinfo::symLinkTargetPerformanceMounpoint()
+{
+ wchar_t buffer[MAX_PATH];
+ QString rootPath = QDir::toNativeSeparators(QDir::rootPath());
+ QVERIFY(GetVolumeNameForVolumeMountPointW(rootPath.utf16(), buffer, MAX_PATH));
+ QString rootVolume = QString::fromWCharArray(buffer);
+ QString mountpoint = "mountpoint";
+ rootVolume.replace("\\\\?\\","\\??\\");
+ FileSystem::createNtfsJunction(rootVolume, mountpoint);
+
+ QFileInfo info(mountpoint);
+ info.setCaching(false);
+ QVERIFY(info.isSymLink());
+ QString linkTarget;
+ QBENCHMARK {
+ for(int i=0; i<100; i++)
+ linkTarget = info.readLink();
+ }
+ QVERIFY(QDir().rmdir(mountpoint));
+}
+#endif
+
+QTEST_MAIN(qfileinfo)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro b/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro
new file mode 100644
index 0000000000..3edf6a65c8
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qfileinfo
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qiodevice/main.cpp b/tests/benchmarks/corelib/io/qiodevice/main.cpp
new file mode 100644
index 0000000000..6f16794b10
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qiodevice/main.cpp
@@ -0,0 +1,107 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <QIODevice>
+#include <QFile>
+#include <QString>
+
+#include <qtest.h>
+
+
+class tst_qiodevice : public QObject
+{
+ Q_OBJECT
+private slots:
+ void read_old();
+ void read_old_data() { read_data(); }
+ //void read_new();
+ //void read_new_data() { read_data(); }
+private:
+ void read_data();
+};
+
+
+void tst_qiodevice::read_data()
+{
+ QTest::addColumn<qint64>("size");
+ QTest::newRow("10k") << qint64(10 * 1024);
+ QTest::newRow("100k") << qint64(100 * 1024);
+ QTest::newRow("1000k") << qint64(1000 * 1024);
+ QTest::newRow("10000k") << qint64(10000 * 1024);
+#ifndef Q_OS_SYMBIAN // Symbian devices don't (yet) have enough available RAM to run these
+ QTest::newRow("100000k") << qint64(100000 * 1024);
+ QTest::newRow("1000000k") << qint64(1000000 * 1024);
+#endif
+}
+
+void tst_qiodevice::read_old()
+{
+ QFETCH(qint64, size);
+
+ QString name = "tmp" + QString::number(size);
+
+ {
+ QFile file(name);
+ file.open(QIODevice::WriteOnly);
+ file.seek(size);
+ file.write("x", 1);
+ file.close();
+ }
+
+ QBENCHMARK {
+ QFile file(name);
+ file.open(QIODevice::ReadOnly);
+ QByteArray ba;
+ qint64 s = size - 1024;
+ file.seek(512);
+ ba = file.read(s); // crash happens during this read / assignment operation
+ }
+
+ {
+ QFile file(name);
+ file.remove();
+ }
+}
+
+
+QTEST_MAIN(tst_qiodevice)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro b/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro
new file mode 100755
index 0000000000..2e0f6a172c
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro
@@ -0,0 +1,13 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qiodevice
+TARGET.EPOCHEAPSIZE = 0x100000 0x2000000
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp b/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp
new file mode 100644
index 0000000000..667714272a
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qtemporaryfile/main.cpp
@@ -0,0 +1,103 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <QIODevice>
+#include <QFile>
+#include <QString>
+#include <QTemporaryFile>
+#include <qtest.h>
+
+
+class tst_qtemporaryfile : public QObject
+{
+ Q_OBJECT
+private slots:
+ void openclose_data();
+ void openclose();
+ void readwrite_data() { openclose_data(); }
+ void readwrite();
+
+private:
+};
+
+void tst_qtemporaryfile::openclose_data()
+{
+ QTest::addColumn<qint64>("amount");
+ QTest::newRow("100") << qint64(100);
+ QTest::newRow("1000") << qint64(1000);
+ QTest::newRow("10000") << qint64(10000);
+}
+
+void tst_qtemporaryfile::openclose()
+{
+ QFETCH(qint64, amount);
+
+ QBENCHMARK {
+ for (qint64 i = 0; i < amount; ++i) {
+ QTemporaryFile file;
+ file.open();
+ file.close();
+ }
+ }
+}
+
+void tst_qtemporaryfile::readwrite()
+{
+ QFETCH(qint64, amount);
+
+ const int dataSize = 4096;
+ QByteArray data;
+ data.fill('a', dataSize);
+ QBENCHMARK {
+ for (qint64 i = 0; i < amount; ++i) {
+ QTemporaryFile file;
+ file.open();
+ file.write(data);
+ file.seek(0);
+ file.read(dataSize);
+ file.close();
+ }
+ }
+}
+
+QTEST_MAIN(tst_qtemporaryfile)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro b/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro
new file mode 100644
index 0000000000..74fd534ec2
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qtemporaryfile
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qurl/main.cpp b/tests/benchmarks/corelib/io/qurl/main.cpp
new file mode 100644
index 0000000000..385a20931c
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qurl/main.cpp
@@ -0,0 +1,244 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qurl.h>
+#include <qtest.h>
+
+class tst_qurl: public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void emptyUrl();
+ void relativeUrl();
+ void absoluteUrl();
+ void isRelative_data();
+ void isRelative();
+ void toLocalFile_data();
+ void toLocalFile();
+ void toString_data();
+ void toString();
+ void toEncoded_data();
+ void toEncoded();
+ void resolved_data();
+ void resolved();
+ void equality_data();
+ void equality();
+ void qmlPropertyWriteUseCase();
+
+private:
+ void generateFirstRunData();
+};
+
+void tst_qurl::emptyUrl()
+{
+ QBENCHMARK {
+ QUrl url;
+ }
+}
+
+void tst_qurl::relativeUrl()
+{
+ QBENCHMARK {
+ QUrl url("pics/avatar.png");
+ }
+}
+
+void tst_qurl::absoluteUrl()
+{
+ QBENCHMARK {
+ QUrl url("/tmp/avatar.png");
+ }
+}
+
+void tst_qurl::generateFirstRunData()
+{
+ QTest::addColumn<bool>("firstRun");
+
+ QTest::newRow("construction + first run") << true;
+ QTest::newRow("subsequent runs") << false;
+}
+
+void tst_qurl::isRelative_data()
+{
+ generateFirstRunData();
+}
+
+void tst_qurl::isRelative()
+{
+ QFETCH(bool, firstRun);
+ if (firstRun) {
+ QBENCHMARK {
+ QUrl url("pics/avatar.png");
+ url.isRelative();
+ }
+ } else {
+ QUrl url("pics/avatar.png");
+ QBENCHMARK {
+ url.isRelative();
+ }
+ }
+}
+
+void tst_qurl::toLocalFile_data()
+{
+ generateFirstRunData();
+}
+
+void tst_qurl::toLocalFile()
+{
+ QFETCH(bool, firstRun);
+ if (firstRun) {
+ QBENCHMARK {
+ QUrl url("/tmp/avatar.png");
+ url.toLocalFile();
+ }
+ } else {
+ QUrl url("/tmp/avatar.png");
+ QBENCHMARK {
+ url.toLocalFile();
+ }
+ }
+}
+
+void tst_qurl::toString_data()
+{
+ generateFirstRunData();
+}
+
+void tst_qurl::toString()
+{
+ QFETCH(bool, firstRun);
+ if(firstRun) {
+ QBENCHMARK {
+ QUrl url("pics/avatar.png");
+ url.toString();
+ }
+ } else {
+ QUrl url("pics/avatar.png");
+ QBENCHMARK {
+ url.toString();
+ }
+ }
+}
+
+void tst_qurl::toEncoded_data()
+{
+ generateFirstRunData();
+}
+
+void tst_qurl::toEncoded()
+{
+ QFETCH(bool, firstRun);
+ if(firstRun) {
+ QBENCHMARK {
+ QUrl url("pics/avatar.png");
+ url.toEncoded(QUrl::FormattingOption(0x100));
+ }
+ } else {
+ QUrl url("pics/avatar.png");
+ QBENCHMARK {
+ url.toEncoded(QUrl::FormattingOption(0x100));
+ }
+ }
+}
+
+void tst_qurl::resolved_data()
+{
+ generateFirstRunData();
+}
+
+void tst_qurl::resolved()
+{
+ QFETCH(bool, firstRun);
+ if(firstRun) {
+ QBENCHMARK {
+ QUrl baseUrl("/home/user/");
+ QUrl url("pics/avatar.png");
+ baseUrl.resolved(url);
+ }
+ } else {
+ QUrl baseUrl("/home/user/");
+ QUrl url("pics/avatar.png");
+ QBENCHMARK {
+ baseUrl.resolved(url);
+ }
+ }
+}
+
+void tst_qurl::equality_data()
+{
+ generateFirstRunData();
+}
+
+void tst_qurl::equality()
+{
+ QFETCH(bool, firstRun);
+ if(firstRun) {
+ QBENCHMARK {
+ QUrl url("pics/avatar.png");
+ QUrl url2("pics/avatar2.png");
+ //url == url2;
+ }
+ } else {
+ QUrl url("pics/avatar.png");
+ QUrl url2("pics/avatar2.png");
+ QBENCHMARK {
+ url == url2;
+ }
+ }
+}
+
+void tst_qurl::qmlPropertyWriteUseCase()
+{
+ QUrl base("file:///home/user/qt/demos/declarative/samegame/SamegameCore/");
+ QString str("pics/redStar.png");
+
+ QBENCHMARK {
+ QUrl u = QUrl(str);
+ if (!u.isEmpty() && u.isRelative())
+ u = base.resolved(u);
+ }
+}
+
+QTEST_MAIN(tst_qurl)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/io/qurl/qurl.pro b/tests/benchmarks/corelib/io/qurl/qurl.pro
new file mode 100644
index 0000000000..1d2d35e707
--- /dev/null
+++ b/tests/benchmarks/corelib/io/qurl/qurl.pro
@@ -0,0 +1,7 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_qurl
+QT -= gui
+win32: DEFINES+= _CRT_SECURE_NO_WARNINGS
+
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/kernel/events/events.pro b/tests/benchmarks/corelib/kernel/events/events.pro
new file mode 100644
index 0000000000..d7d770a944
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/events/events.pro
@@ -0,0 +1,8 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_events
+DEPENDPATH += .
+INCLUDEPATH += .
+# Input
+SOURCES += main.cpp
+QT -= gui
diff --git a/tests/benchmarks/corelib/kernel/events/main.cpp b/tests/benchmarks/corelib/kernel/events/main.cpp
new file mode 100644
index 0000000000..94dd4b02db
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/events/main.cpp
@@ -0,0 +1,187 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtCore>
+
+#include <qtest.h>
+#include <qtesteventloop.h>
+
+class PingPong : public QObject
+{
+public:
+ void setPeer(QObject *peer);
+ void resetCounter() {m_counter = 100;}
+
+protected:
+ bool event(QEvent *e);
+
+private:
+ QObject *m_peer;
+ int m_counter;
+};
+
+void PingPong::setPeer(QObject *peer)
+{
+ m_peer = peer;
+ m_counter = 100;
+}
+
+bool PingPong::event(QEvent *)
+{
+ --m_counter;
+ if (m_counter > 0) {
+ QEvent *e = new QEvent(QEvent::User);
+ QCoreApplication::postEvent(m_peer, e);
+ } else {
+ QTestEventLoop::instance().exitLoop();
+ }
+ return true;
+}
+
+class EventTester : public QObject
+{
+public:
+ int foo(int bar);
+
+protected:
+ bool event(QEvent *e);
+};
+
+bool EventTester::event(QEvent *e)
+{
+ if (e->type() == QEvent::User+1)
+ return foo(e->type()) != 0;
+ return false;
+}
+
+int EventTester::foo(int bar)
+{
+ return bar + 1;
+}
+
+class EventsBench : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void initTestCase();
+ void cleanupTestCase();
+
+ void noEvent();
+ void sendEvent_data();
+ void sendEvent();
+ void postEvent_data();
+ void postEvent();
+};
+
+void EventsBench::initTestCase()
+{
+}
+
+void EventsBench::cleanupTestCase()
+{
+}
+
+void EventsBench::noEvent()
+{
+ EventTester tst;
+ int val = 0;
+ QBENCHMARK {
+ val += tst.foo(1);
+ }
+}
+
+void EventsBench::sendEvent_data()
+{
+ QTest::addColumn<bool>("filterEvents");
+ QTest::newRow("no eventfilter") << false;
+ QTest::newRow("eventfilter") << true;
+}
+
+void EventsBench::sendEvent()
+{
+ QFETCH(bool, filterEvents);
+ EventTester tst;
+ if (filterEvents)
+ tst.installEventFilter(this);
+ QEvent evt(QEvent::Type(QEvent::User+1));
+ QBENCHMARK {
+ QCoreApplication::sendEvent(&tst, &evt);
+ }
+}
+
+void EventsBench::postEvent_data()
+{
+ QTest::addColumn<bool>("filterEvents");
+ // The first time an eventloop is executed, the case runs radically slower at least
+ // on some platforms, so test the "no eventfilter" case to get a comparable results
+ // with the "eventfilter" case.
+ QTest::newRow("first time, no eventfilter") << false;
+ QTest::newRow("no eventfilter") << false;
+ QTest::newRow("eventfilter") << true;
+}
+
+void EventsBench::postEvent()
+{
+ QFETCH(bool, filterEvents);
+ PingPong ping;
+ PingPong pong;
+ ping.setPeer(&pong);
+ pong.setPeer(&ping);
+ if (filterEvents) {
+ ping.installEventFilter(this);
+ pong.installEventFilter(this);
+ }
+
+ QBENCHMARK {
+ // In case multiple iterations are done, event needs to be created inside the QBENCHMARK,
+ // or it gets deleted once first iteration exits and can cause a crash. Similarly,
+ // ping and pong need their counters reset.
+ QEvent *e = new QEvent(QEvent::User);
+ ping.resetCounter();
+ pong.resetCounter();
+ QCoreApplication::postEvent(&ping, e);
+ QTestEventLoop::instance().enterLoop( 61 );
+ }
+}
+
+QTEST_MAIN(EventsBench)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/kernel/kernel.pro b/tests/benchmarks/corelib/kernel/kernel.pro
new file mode 100644
index 0000000000..da3f0d609f
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/kernel.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ events \
+ qmetaobject \
+ qmetatype \
+ qobject \
+ qvariant
diff --git a/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp b/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp
new file mode 100644
index 0000000000..257915e28d
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qmetaobject/main.cpp
@@ -0,0 +1,264 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtCore>
+#include <QtGui>
+#include <qtest.h>
+
+class LotsOfSignals : public QObject
+{
+ Q_OBJECT
+public:
+ LotsOfSignals() {}
+
+signals:
+ void extraSignal1();
+ void extraSignal2();
+ void extraSignal3();
+ void extraSignal4();
+ void extraSignal5();
+ void extraSignal6();
+ void extraSignal7();
+ void extraSignal8();
+ void extraSignal9();
+ void extraSignal10();
+ void extraSignal12();
+ void extraSignal13();
+ void extraSignal14();
+ void extraSignal15();
+ void extraSignal16();
+ void extraSignal17();
+ void extraSignal18();
+ void extraSignal19();
+ void extraSignal20();
+ void extraSignal21();
+ void extraSignal22();
+ void extraSignal23();
+ void extraSignal24();
+ void extraSignal25();
+ void extraSignal26();
+ void extraSignal27();
+ void extraSignal28();
+ void extraSignal29();
+ void extraSignal30();
+ void extraSignal31();
+ void extraSignal32();
+ void extraSignal33();
+ void extraSignal34();
+ void extraSignal35();
+ void extraSignal36();
+ void extraSignal37();
+ void extraSignal38();
+ void extraSignal39();
+ void extraSignal40();
+ void extraSignal41();
+ void extraSignal42();
+ void extraSignal43();
+ void extraSignal44();
+ void extraSignal45();
+ void extraSignal46();
+ void extraSignal47();
+ void extraSignal48();
+ void extraSignal49();
+ void extraSignal50();
+ void extraSignal51();
+ void extraSignal52();
+ void extraSignal53();
+ void extraSignal54();
+ void extraSignal55();
+ void extraSignal56();
+ void extraSignal57();
+ void extraSignal58();
+ void extraSignal59();
+ void extraSignal60();
+ void extraSignal61();
+ void extraSignal62();
+ void extraSignal63();
+ void extraSignal64();
+ void extraSignal65();
+ void extraSignal66();
+ void extraSignal67();
+ void extraSignal68();
+ void extraSignal69();
+ void extraSignal70();
+};
+
+class tst_qmetaobject: public QObject
+{
+Q_OBJECT
+private slots:
+ void initTestCase();
+ void cleanupTestCase();
+
+ void indexOfProperty_data();
+ void indexOfProperty();
+ void indexOfMethod_data();
+ void indexOfMethod();
+ void indexOfSignal_data();
+ void indexOfSignal();
+ void indexOfSlot_data();
+ void indexOfSlot();
+
+ void unconnected_data();
+ void unconnected();
+};
+
+void tst_qmetaobject::initTestCase()
+{
+}
+
+void tst_qmetaobject::cleanupTestCase()
+{
+}
+
+void tst_qmetaobject::indexOfProperty_data()
+{
+ QTest::addColumn<QByteArray>("name");
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ for (int i = 0; i < mo->propertyCount(); ++i) {
+ QMetaProperty prop = mo->property(i);
+ QTest::newRow(prop.name()) << QByteArray(prop.name());
+ }
+}
+
+void tst_qmetaobject::indexOfProperty()
+{
+ QFETCH(QByteArray, name);
+ const char *p = name.constData();
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ QBENCHMARK {
+ (void)mo->indexOfProperty(p);
+ }
+}
+
+void tst_qmetaobject::indexOfMethod_data()
+{
+ QTest::addColumn<QByteArray>("method");
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ for (int i = 0; i < mo->methodCount(); ++i) {
+ QMetaMethod method = mo->method(i);
+ QByteArray sig = method.signature();
+ QTest::newRow(sig) << sig;
+ }
+}
+
+void tst_qmetaobject::indexOfMethod()
+{
+ QFETCH(QByteArray, method);
+ const char *p = method.constData();
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ QBENCHMARK {
+ (void)mo->indexOfMethod(p);
+ }
+}
+
+void tst_qmetaobject::indexOfSignal_data()
+{
+ QTest::addColumn<QByteArray>("signal");
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ for (int i = 0; i < mo->methodCount(); ++i) {
+ QMetaMethod method = mo->method(i);
+ if (method.methodType() != QMetaMethod::Signal)
+ continue;
+ QByteArray sig = method.signature();
+ QTest::newRow(sig) << sig;
+ }
+}
+
+void tst_qmetaobject::indexOfSignal()
+{
+ QFETCH(QByteArray, signal);
+ const char *p = signal.constData();
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ QBENCHMARK {
+ (void)mo->indexOfSignal(p);
+ }
+}
+
+void tst_qmetaobject::indexOfSlot_data()
+{
+ QTest::addColumn<QByteArray>("slot");
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ for (int i = 0; i < mo->methodCount(); ++i) {
+ QMetaMethod method = mo->method(i);
+ if (method.methodType() != QMetaMethod::Slot)
+ continue;
+ QByteArray sig = method.signature();
+ QTest::newRow(sig) << sig;
+ }
+}
+
+void tst_qmetaobject::indexOfSlot()
+{
+ QFETCH(QByteArray, slot);
+ const char *p = slot.constData();
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ QBENCHMARK {
+ (void)mo->indexOfSlot(p);
+ }
+}
+
+void tst_qmetaobject::unconnected_data()
+{
+ QTest::addColumn<int>("signal_index");
+ QTest::newRow("signal--9") << 9;
+ QTest::newRow("signal--32") << 32;
+ QTest::newRow("signal--33") << 33;
+ QTest::newRow("signal--64") << 64;
+ QTest::newRow("signal--65") << 65;
+ QTest::newRow("signal--70") << 70;
+}
+
+void tst_qmetaobject::unconnected()
+{
+ LotsOfSignals *obj = new LotsOfSignals;
+ QFETCH(int, signal_index);
+ QVERIFY(obj->metaObject()->methodCount() == 73);
+ void *v;
+ QBENCHMARK {
+ //+1 because QObject has one slot
+ QMetaObject::metacall(obj, QMetaObject::InvokeMetaMethod, signal_index+1, &v);
+ }
+ delete obj;
+}
+
+QTEST_MAIN(tst_qmetaobject)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro b/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro
new file mode 100644
index 0000000000..a02273f7d0
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qmetaobject
+
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro b/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro
new file mode 100644
index 0000000000..80f9a2a398
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro
@@ -0,0 +1,7 @@
+load(qttest_p4)
+QT = core
+TEMPLATE = app
+TARGET = tst_qmetatype
+
+SOURCES += tst_qmetatype.cpp
+
diff --git a/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp
new file mode 100644
index 0000000000..4ead826d25
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qmetatype/tst_qmetatype.cpp
@@ -0,0 +1,285 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QtCore/qmetatype.h>
+
+//TESTED_FILES=
+
+class tst_QMetaType : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QMetaType();
+ virtual ~tst_QMetaType();
+
+private slots:
+ void typeBuiltin_data();
+ void typeBuiltin();
+ void typeBuiltinNotNormalized_data();
+ void typeBuiltinNotNormalized();
+ void typeCustom();
+ void typeCustomNotNormalized();
+ void typeNotRegistered();
+ void typeNotRegisteredNotNormalized();
+
+ void typeNameBuiltin_data();
+ void typeNameBuiltin();
+ void typeNameCustom();
+ void typeNameNotRegistered();
+
+ void isRegisteredBuiltin_data();
+ void isRegisteredBuiltin();
+ void isRegisteredCustom();
+ void isRegisteredNotRegistered();
+
+ void constructCoreType_data();
+ void constructCoreType();
+ void constructCoreTypeCopy_data();
+ void constructCoreTypeCopy();
+};
+
+tst_QMetaType::tst_QMetaType()
+{
+}
+
+tst_QMetaType::~tst_QMetaType()
+{
+}
+
+void tst_QMetaType::typeBuiltin_data()
+{
+ QTest::addColumn<QByteArray>("typeName");
+ for (int i = 0; i < QMetaType::User; ++i) {
+ const char *name = QMetaType::typeName(i);
+ if (name)
+ QTest::newRow(name) << QByteArray(name);
+ }
+}
+
+void tst_QMetaType::typeBuiltin()
+{
+ QFETCH(QByteArray, typeName);
+ const char *nm = typeName.constData();
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i)
+ QMetaType::type(nm);
+ }
+}
+
+void tst_QMetaType::typeBuiltinNotNormalized_data()
+{
+ QTest::addColumn<QByteArray>("typeName");
+ for (int i = 0; i < QMetaType::User; ++i) {
+ const char *name = QMetaType::typeName(i);
+ if (name)
+ QTest::newRow(name) << QByteArray(name).append(" ");
+ }
+}
+
+void tst_QMetaType::typeBuiltinNotNormalized()
+{
+ QFETCH(QByteArray, typeName);
+ const char *nm = typeName.constData();
+ QBENCHMARK {
+ for (int i = 0; i < 10000; ++i)
+ QMetaType::type(nm);
+ }
+}
+
+struct Foo { int i; };
+
+void tst_QMetaType::typeCustom()
+{
+ qRegisterMetaType<Foo>("Foo");
+ QBENCHMARK {
+ for (int i = 0; i < 10000; ++i)
+ QMetaType::type("Foo");
+ }
+}
+
+void tst_QMetaType::typeCustomNotNormalized()
+{
+ qRegisterMetaType<Foo>("Foo");
+ QBENCHMARK {
+ for (int i = 0; i < 10000; ++i)
+ QMetaType::type("Foo ");
+ }
+}
+
+void tst_QMetaType::typeNotRegistered()
+{
+ Q_ASSERT(QMetaType::type("Bar") == 0);
+ QBENCHMARK {
+ for (int i = 0; i < 10000; ++i)
+ QMetaType::type("Bar");
+ }
+}
+
+void tst_QMetaType::typeNotRegisteredNotNormalized()
+{
+ Q_ASSERT(QMetaType::type("Bar") == 0);
+ QBENCHMARK {
+ for (int i = 0; i < 10000; ++i)
+ QMetaType::type("Bar ");
+ }
+}
+
+void tst_QMetaType::typeNameBuiltin_data()
+{
+ QTest::addColumn<int>("type");
+ for (int i = 0; i < QMetaType::User; ++i) {
+ const char *name = QMetaType::typeName(i);
+ if (name)
+ QTest::newRow(name) << i;
+ }
+}
+
+void tst_QMetaType::typeNameBuiltin()
+{
+ QFETCH(int, type);
+ QBENCHMARK {
+ for (int i = 0; i < 500000; ++i)
+ QMetaType::typeName(type);
+ }
+}
+
+void tst_QMetaType::typeNameCustom()
+{
+ int type = qRegisterMetaType<Foo>("Foo");
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i)
+ QMetaType::typeName(type);
+ }
+}
+
+void tst_QMetaType::typeNameNotRegistered()
+{
+ // We don't care much about this case, but test it anyway.
+ Q_ASSERT(QMetaType::typeName(-1) == 0);
+ QBENCHMARK {
+ for (int i = 0; i < 500000; ++i)
+ QMetaType::typeName(-1);
+ }
+}
+
+void tst_QMetaType::isRegisteredBuiltin_data()
+{
+ typeNameBuiltin_data();
+}
+
+void tst_QMetaType::isRegisteredBuiltin()
+{
+ QFETCH(int, type);
+ QBENCHMARK {
+ for (int i = 0; i < 500000; ++i)
+ QMetaType::isRegistered(type);
+ }
+}
+
+void tst_QMetaType::isRegisteredCustom()
+{
+ int type = qRegisterMetaType<Foo>("Foo");
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i)
+ QMetaType::isRegistered(type);
+ }
+}
+
+void tst_QMetaType::isRegisteredNotRegistered()
+{
+ Q_ASSERT(QMetaType::typeName(-1) == 0);
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i)
+ QMetaType::isRegistered(-1);
+ }
+}
+
+void tst_QMetaType::constructCoreType_data()
+{
+ QTest::addColumn<int>("typeId");
+ for (int i = 0; i <= QMetaType::LastCoreType; ++i)
+ QTest::newRow(QMetaType::typeName(i)) << i;
+ for (int i = QMetaType::FirstCoreExtType; i <= QMetaType::LastCoreExtType; ++i)
+ QTest::newRow(QMetaType::typeName(i)) << i;
+ // GUI types are tested in tst_QGuiMetaType.
+}
+
+// Tests how fast QMetaType can default-construct and destroy a Qt
+// core type. The purpose of this benchmark is to measure the overhead
+// of using type id-based creation compared to creating the type
+// directly (i.e. "T *t = new T(); delete t;").
+void tst_QMetaType::constructCoreType()
+{
+ QFETCH(int, typeId);
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i) {
+ void *data = QMetaType::construct(typeId, (void *)0);
+ QMetaType::destroy(typeId, data);
+ }
+ }
+}
+
+void tst_QMetaType::constructCoreTypeCopy_data()
+{
+ constructCoreType_data();
+}
+
+// Tests how fast QMetaType can copy-construct and destroy a Qt core
+// type. The purpose of this benchmark is to measure the overhead of
+// using type id-based creation compared to creating the type directly
+// (i.e. "T *t = new T(other); delete t;").
+void tst_QMetaType::constructCoreTypeCopy()
+{
+ QFETCH(int, typeId);
+ QVariant other(typeId, (void *)0);
+ const void *copy = other.constData();
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i) {
+ void *data = QMetaType::construct(typeId, copy);
+ QMetaType::destroy(typeId, data);
+ }
+ }
+}
+
+QTEST_MAIN(tst_QMetaType)
+#include "tst_qmetatype.moc"
diff --git a/tests/benchmarks/corelib/kernel/qobject/main.cpp b/tests/benchmarks/corelib/kernel/qobject/main.cpp
new file mode 100644
index 0000000000..801e368912
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qobject/main.cpp
@@ -0,0 +1,185 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtCore>
+#include <QtGui>
+#include <qtest.h>
+#include "object.h"
+#include <qcoreapplication.h>
+#include <qdatetime.h>
+
+enum {
+ CreationDeletionBenckmarkConstant = 34567,
+ SignalsAndSlotsBenchmarkConstant = 456789
+};
+
+class QObjectBenchmark : public QObject
+{
+Q_OBJECT
+private slots:
+ void signal_slot_benchmark();
+ void signal_slot_benchmark_data();
+ void qproperty_benchmark_data();
+ void qproperty_benchmark();
+ void dynamic_property_benchmark();
+ void connect_disconnect_benchmark_data();
+ void connect_disconnect_benchmark();
+};
+
+void QObjectBenchmark::signal_slot_benchmark_data()
+{
+ QTest::addColumn<int>("type");
+ QTest::newRow("simple function") << 0;
+ QTest::newRow("single signal/slot") << 1;
+ QTest::newRow("multi signal/slot") << 2;
+ QTest::newRow("unconnected signal") << 3;
+}
+
+void QObjectBenchmark::signal_slot_benchmark()
+{
+ QFETCH(int, type);
+
+ Object singleObject;
+ Object multiObject;
+ singleObject.setObjectName("single");
+ multiObject.setObjectName("multi");
+
+ singleObject.connect(&singleObject, SIGNAL(signal0()), SLOT(slot0()));
+
+ multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(slot0()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal1()));
+ multiObject.connect(&multiObject, SIGNAL(signal1()), SLOT(slot1()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal2()));
+ multiObject.connect(&multiObject, SIGNAL(signal2()), SLOT(slot2()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal3()));
+ multiObject.connect(&multiObject, SIGNAL(signal3()), SLOT(slot3()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal4()));
+ multiObject.connect(&multiObject, SIGNAL(signal4()), SLOT(slot4()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal5()));
+ multiObject.connect(&multiObject, SIGNAL(signal5()), SLOT(slot5()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal6()));
+ multiObject.connect(&multiObject, SIGNAL(signal6()), SLOT(slot6()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal7()));
+ multiObject.connect(&multiObject, SIGNAL(signal7()), SLOT(slot7()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal8()));
+ multiObject.connect(&multiObject, SIGNAL(signal8()), SLOT(slot8()));
+ // multiObject.connect(&multiObject, SIGNAL(signal0()), SLOT(signal9()));
+ multiObject.connect(&multiObject, SIGNAL(signal9()), SLOT(slot9()));
+
+ if (type == 0) {
+ QBENCHMARK {
+ singleObject.slot0();
+ }
+ } else if (type == 1) {
+ QBENCHMARK {
+ singleObject.emitSignal0();
+ }
+ } else if (type == 2) {
+ QBENCHMARK {
+ multiObject.emitSignal0();
+ }
+ } else if (type == 3) {
+ QBENCHMARK {
+ singleObject.emitSignal1();
+ }
+ }
+}
+
+void QObjectBenchmark::qproperty_benchmark_data()
+{
+ QTest::addColumn<QByteArray>("name");
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ for (int i = 0; i < mo->propertyCount(); ++i) {
+ QMetaProperty prop = mo->property(i);
+ QTest::newRow(prop.name()) << QByteArray(prop.name());
+ }
+}
+
+void QObjectBenchmark::qproperty_benchmark()
+{
+ QFETCH(QByteArray, name);
+ const char *p = name.constData();
+ QTreeView obj;
+ QVariant v = obj.property(p);
+ QBENCHMARK {
+ obj.setProperty(p, v);
+ (void)obj.property(p);
+ }
+}
+
+void QObjectBenchmark::dynamic_property_benchmark()
+{
+ QTreeView obj;
+ QBENCHMARK {
+ obj.setProperty("myProperty", 123);
+ (void)obj.property("myProperty");
+ obj.setProperty("myOtherProperty", 123);
+ (void)obj.property("myOtherProperty");
+ }
+}
+
+void QObjectBenchmark::connect_disconnect_benchmark_data()
+{
+ QTest::addColumn<QByteArray>("signal");
+ const QMetaObject *mo = &QTreeView::staticMetaObject;
+ for (int i = 0; i < mo->methodCount(); ++i) {
+ QMetaMethod method = mo->method(i);
+ if (method.methodType() != QMetaMethod::Signal)
+ continue;
+ QByteArray sig = method.signature();
+ QTest::newRow(sig) << sig;
+ }
+}
+
+void QObjectBenchmark::connect_disconnect_benchmark()
+{
+ QFETCH(QByteArray, signal);
+ signal.prepend('2');
+ const char *p = signal.constData();
+ QTreeView obj;
+ QBENCHMARK {
+ QObject::connect(&obj, p, &obj, p);
+ QObject::disconnect(&obj, p, &obj, p);
+ }
+}
+
+QTEST_MAIN(QObjectBenchmark)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/kernel/qobject/object.cpp b/tests/benchmarks/corelib/kernel/qobject/object.cpp
new file mode 100644
index 0000000000..67ed322217
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qobject/object.cpp
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include "object.h"
+
+void Object::emitSignal0()
+{ emit signal0(); }
+void Object::emitSignal1()
+{ emit signal1(); }
+
+
+void Object::slot0()
+{ }
+void Object::slot1()
+{ }
+void Object::slot2()
+{ }
+void Object::slot3()
+{ }
+void Object::slot4()
+{ }
+void Object::slot5()
+{ }
+void Object::slot6()
+{ }
+void Object::slot7()
+{ }
+void Object::slot8()
+{ }
+void Object::slot9()
+{ }
diff --git a/tests/benchmarks/corelib/kernel/qobject/object.h b/tests/benchmarks/corelib/kernel/qobject/object.h
new file mode 100644
index 0000000000..820e4b77d1
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qobject/object.h
@@ -0,0 +1,76 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef OBJECT_H
+#define OBJECT_H
+
+#include <qobject.h>
+
+class Object : public QObject
+{
+ Q_OBJECT
+public:
+ void emitSignal0();
+ void emitSignal1();
+signals:
+ void signal0();
+ void signal1();
+ void signal2();
+ void signal3();
+ void signal4();
+ void signal5();
+ void signal6();
+ void signal7();
+ void signal8();
+ void signal9();
+public slots:
+ void slot0();
+ void slot1();
+ void slot2();
+ void slot3();
+ void slot4();
+ void slot5();
+ void slot6();
+ void slot7();
+ void slot8();
+ void slot9();
+};
+
+#endif // OBJECT_H
diff --git a/tests/benchmarks/corelib/kernel/qobject/qobject.pro b/tests/benchmarks/corelib/kernel/qobject/qobject.pro
new file mode 100644
index 0000000000..1baaf58b7b
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qobject/qobject.pro
@@ -0,0 +1,9 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qobject
+DEPENDPATH += .
+INCLUDEPATH += .
+
+# Input
+HEADERS += object.h
+SOURCES += main.cpp object.cpp
diff --git a/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro
new file mode 100644
index 0000000000..5ecb94c0f6
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = qtimer_vs_qmetaobject
+DEPENDPATH += .
+INCLUDEPATH += .
+
+CONFIG += release
+#CONFIG += debug
+
+
+SOURCES += tst_qtimer_vs_qmetaobject.cpp
+QT -= gui
diff --git a/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp
new file mode 100644
index 0000000000..0f40dca3b1
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp
@@ -0,0 +1,96 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtCore>
+#include <QtTest/QtTest>
+
+#define INVOKE_COUNT 10000
+
+class qtimer_vs_qmetaobject : public QObject
+{
+ Q_OBJECT
+private slots:
+ void testZeroTimerSingleShot();
+ void testQueuedInvokeMethod();
+};
+
+class InvokeCounter : public QObject {
+ Q_OBJECT
+public:
+ InvokeCounter() : count(0) { };
+public slots:
+ void invokeSlot() {
+ count++;
+ if (count == INVOKE_COUNT)
+ QTestEventLoop::instance().exitLoop();
+ }
+protected:
+ int count;
+};
+
+void qtimer_vs_qmetaobject::testZeroTimerSingleShot()
+{
+ QBENCHMARK {
+ InvokeCounter invokeCounter;
+ for(int i = 0; i < INVOKE_COUNT; ++i) {
+ QTimer::singleShot(0, &invokeCounter, SLOT(invokeSlot()));
+ }
+ QTestEventLoop::instance().enterLoop(10);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ }
+}
+
+void qtimer_vs_qmetaobject::testQueuedInvokeMethod()
+{
+ QBENCHMARK {
+ InvokeCounter invokeCounter;
+ for(int i = 0; i < INVOKE_COUNT; ++i) {
+ QMetaObject::invokeMethod(&invokeCounter, "invokeSlot", Qt::QueuedConnection);
+ }
+ QTestEventLoop::instance().enterLoop(10);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ }
+}
+
+
+QTEST_MAIN(qtimer_vs_qmetaobject)
+
+#include "tst_qtimer_vs_qmetaobject.moc"
diff --git a/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro b/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro
new file mode 100644
index 0000000000..f3dd66af44
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro
@@ -0,0 +1,11 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qvariant
+DEPENDPATH += .
+INCLUDEPATH += .
+
+CONFIG += release
+#CONFIG += debug
+
+
+SOURCES += tst_qvariant.cpp
diff --git a/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp
new file mode 100644
index 0000000000..2e217e2a63
--- /dev/null
+++ b/tests/benchmarks/corelib/kernel/qvariant/tst_qvariant.cpp
@@ -0,0 +1,272 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtCore>
+#include <QtGui/QPixmap>
+#include <qtest.h>
+
+#define ITERATION_COUNT 1e5
+
+class tst_qvariant : public QObject
+{
+ Q_OBJECT
+private slots:
+ void testBound();
+
+ void doubleVariantCreation();
+ void floatVariantCreation();
+ void rectVariantCreation();
+ void stringVariantCreation();
+ void pixmapVariantCreation();
+
+ void doubleVariantSetValue();
+ void floatVariantSetValue();
+ void rectVariantSetValue();
+ void stringVariantSetValue();
+
+ void doubleVariantAssignment();
+ void floatVariantAssignment();
+ void rectVariantAssignment();
+ void stringVariantAssignment();
+
+ void doubleVariantValue();
+ void floatVariantValue();
+ void rectVariantValue();
+ void stringVariantValue();
+
+ void createCoreType_data();
+ void createCoreType();
+ void createCoreTypeCopy_data();
+ void createCoreTypeCopy();
+};
+
+void tst_qvariant::testBound()
+{
+ qreal d = qreal(.5);
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ d = qBound<qreal>(0, d, 1);
+ }
+ }
+}
+
+template <typename T>
+static void variantCreation(T val)
+{
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ QVariant v(val);
+ }
+ }
+}
+
+void tst_qvariant::doubleVariantCreation()
+{
+ variantCreation<double>(0.0);
+}
+
+void tst_qvariant::floatVariantCreation()
+{
+ variantCreation<float>(0.0f);
+}
+
+void tst_qvariant::rectVariantCreation()
+{
+ variantCreation<QRect>(QRect(1, 2, 3, 4));
+}
+
+void tst_qvariant::stringVariantCreation()
+{
+ variantCreation<QString>(QString());
+}
+
+void tst_qvariant::pixmapVariantCreation()
+{
+ variantCreation<QPixmap>(QPixmap());
+}
+
+template <typename T>
+static void variantSetValue(T d)
+{
+ QVariant v;
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ qVariantSetValue(v, d);
+ }
+ }
+}
+
+void tst_qvariant::doubleVariantSetValue()
+{
+ variantSetValue<double>(0.0);
+}
+
+void tst_qvariant::floatVariantSetValue()
+{
+ variantSetValue<float>(0.0f);
+}
+
+void tst_qvariant::rectVariantSetValue()
+{
+ variantSetValue<QRect>(QRect());
+}
+
+void tst_qvariant::stringVariantSetValue()
+{
+ variantSetValue<QString>(QString());
+}
+
+template <typename T>
+static void variantAssignment(T d)
+{
+ QVariant v;
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ v = d;
+ }
+ }
+}
+
+void tst_qvariant::doubleVariantAssignment()
+{
+ variantAssignment<double>(0.0);
+}
+
+void tst_qvariant::floatVariantAssignment()
+{
+ variantAssignment<float>(0.0f);
+}
+
+void tst_qvariant::rectVariantAssignment()
+{
+ variantAssignment<QRect>(QRect());
+}
+
+void tst_qvariant::stringVariantAssignment()
+{
+ variantAssignment<QString>(QString());
+}
+
+void tst_qvariant::doubleVariantValue()
+{
+ QVariant v(0.0);
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ v.toDouble();
+ }
+ }
+}
+
+void tst_qvariant::floatVariantValue()
+{
+ QVariant v(0.0f);
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ v.toFloat();
+ }
+ }
+}
+
+void tst_qvariant::rectVariantValue()
+{
+ QVariant v(QRect(1,2,3,4));
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ v.toRect();
+ }
+ }
+}
+
+void tst_qvariant::stringVariantValue()
+{
+ QVariant v = QString();
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ v.toString();
+ }
+ }
+}
+
+void tst_qvariant::createCoreType_data()
+{
+ QTest::addColumn<int>("typeId");
+ for (int i = 0; i <= QMetaType::LastCoreType; ++i)
+ QTest::newRow(QMetaType::typeName(i)) << i;
+ for (int i = QMetaType::FirstCoreExtType; i <= QMetaType::LastCoreExtType; ++i)
+ QTest::newRow(QMetaType::typeName(i)) << i;
+}
+
+// Tests how fast a Qt core type can be default-constructed by a
+// QVariant. The purpose of this benchmark is to measure the overhead
+// of creating (and destroying) a QVariant compared to creating the
+// type directly.
+void tst_qvariant::createCoreType()
+{
+ QFETCH(int, typeId);
+ QBENCHMARK {
+ for (int i = 0; i < ITERATION_COUNT; ++i)
+ QVariant(typeId, (void *)0);
+ }
+}
+
+void tst_qvariant::createCoreTypeCopy_data()
+{
+ createCoreType_data();
+}
+
+// Tests how fast a Qt core type can be copy-constructed by a
+// QVariant. The purpose of this benchmark is to measure the overhead
+// of creating (and destroying) a QVariant compared to creating the
+// type directly.
+void tst_qvariant::createCoreTypeCopy()
+{
+ QFETCH(int, typeId);
+ QVariant other(typeId, (void *)0);
+ const void *copy = other.constData();
+ QBENCHMARK {
+ for (int i = 0; i < ITERATION_COUNT; ++i)
+ QVariant(typeId, copy);
+ }
+}
+
+QTEST_MAIN(tst_qvariant)
+
+#include "tst_qvariant.moc"
diff --git a/tests/benchmarks/corelib/plugin/plugin.pro b/tests/benchmarks/corelib/plugin/plugin.pro
new file mode 100644
index 0000000000..2afd7f328b
--- /dev/null
+++ b/tests/benchmarks/corelib/plugin/plugin.pro
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = quuid
diff --git a/tests/benchmarks/corelib/plugin/quuid/quuid.pro b/tests/benchmarks/corelib/plugin/quuid/quuid.pro
new file mode 100644
index 0000000000..4e502fc5a4
--- /dev/null
+++ b/tests/benchmarks/corelib/plugin/quuid/quuid.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_quuid
+
+SOURCES += tst_quuid.cpp
+QT -= gui
diff --git a/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp b/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp
new file mode 100644
index 0000000000..9e885eec8b
--- /dev/null
+++ b/tests/benchmarks/corelib/plugin/quuid/tst_quuid.cpp
@@ -0,0 +1,66 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtCore/QCoreApplication>
+#include <QtCore/QUuid>
+#include <QtTest/QtTest>
+
+class tst_bench_QUuid : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_bench_QUuid()
+ { }
+
+private slots:
+ void createUuid();
+};
+
+void tst_bench_QUuid::createUuid()
+{
+ QBENCHMARK {
+ QUuid::createUuid();
+ }
+}
+
+QTEST_MAIN(tst_bench_QUuid);
+#include "tst_quuid.moc"
diff --git a/tests/benchmarks/corelib/thread/qmutex/qmutex.pro b/tests/benchmarks/corelib/thread/qmutex/qmutex.pro
new file mode 100644
index 0000000000..8fda5faaef
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/qmutex/qmutex.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qmutex
+QT -= gui
+SOURCES += tst_qmutex.cpp
+
diff --git a/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp b/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp
new file mode 100644
index 0000000000..8b38661d5e
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/qmutex/tst_qmutex.cpp
@@ -0,0 +1,452 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtCore/QtCore>
+#include <QtTest/QtTest>
+
+#include <math.h>
+
+#ifdef Q_OS_SYMBIAN
+# include <e32std.h>
+typedef RMutex NativeMutexType;
+void NativeMutexInitialize(NativeMutexType *mutex)
+{
+ mutex->CreateLocal();
+}
+void NativeMutexDestroy(NativeMutexType *mutex)
+{
+ mutex->Close();
+}
+void NativeMutexLock(NativeMutexType *mutex)
+{
+ mutex->Wait();
+}
+void NativeMutexUnlock(NativeMutexType *mutex)
+{
+ mutex->Signal();
+}
+#elif defined(Q_OS_UNIX)
+# include <pthread.h>
+# include <errno.h>
+typedef pthread_mutex_t NativeMutexType;
+void NativeMutexInitialize(NativeMutexType *mutex)
+{
+ pthread_mutex_init(mutex, NULL);
+}
+void NativeMutexDestroy(NativeMutexType *mutex)
+{
+ pthread_mutex_destroy(mutex);
+}
+void NativeMutexLock(NativeMutexType *mutex)
+{
+ pthread_mutex_lock(mutex);
+}
+void NativeMutexUnlock(NativeMutexType *mutex)
+{
+ pthread_mutex_unlock(mutex);
+}
+#elif defined(Q_OS_WIN)
+# define _WIN32_WINNT 0x0400
+# include <windows.h>
+typedef CRITICAL_SECTION NativeMutexType;
+void NativeMutexInitialize(NativeMutexType *mutex)
+{
+ InitializeCriticalSection(mutex);
+}
+void NativeMutexDestroy(NativeMutexType *mutex)
+{
+ DeleteCriticalSection(mutex);
+}
+void NativeMutexLock(NativeMutexType *mutex)
+{
+ EnterCriticalSection(mutex);
+}
+void NativeMutexUnlock(NativeMutexType *mutex)
+{
+ LeaveCriticalSection(mutex);
+}
+#endif
+
+//TESTED_FILES=
+
+class tst_QMutex : public QObject
+{
+ Q_OBJECT
+
+ int threadCount;
+
+public:
+ // barriers for the contended tests
+ static QSemaphore semaphore1, semaphore2, semaphore3, semaphore4;
+
+ tst_QMutex()
+ {
+ // at least 2 threads, even on single cpu/core machines
+ threadCount = qMax(2, QThread::idealThreadCount());
+ qDebug("thread count: %d", threadCount);
+ }
+
+private slots:
+ void noThread_data();
+ void noThread();
+
+ void uncontendedNative();
+ void uncontendedQMutex();
+ void uncontendedQMutexLocker();
+
+ void contendedNative_data();
+ void contendedQMutex_data() { contendedNative_data(); }
+ void contendedQMutexLocker_data() { contendedNative_data(); }
+
+ void contendedNative();
+ void contendedQMutex();
+ void contendedQMutexLocker();
+};
+
+QSemaphore tst_QMutex::semaphore1;
+QSemaphore tst_QMutex::semaphore2;
+QSemaphore tst_QMutex::semaphore3;
+QSemaphore tst_QMutex::semaphore4;
+
+void tst_QMutex::noThread_data()
+{
+ QTest::addColumn<int>("t");
+
+ QTest::newRow("noLock") << 1;
+ QTest::newRow("QMutexInline") << 2;
+ QTest::newRow("QMutex") << 3;
+ QTest::newRow("QMutexLocker") << 4;
+}
+
+void tst_QMutex::noThread()
+{
+ volatile int count = 0;
+ const int N = 5000000;
+ QMutex mtx;
+
+ QFETCH(int, t);
+ switch(t) {
+ case 1:
+ QBENCHMARK {
+ count = 0;
+ for (int i = 0; i < N; i++) {
+ count++;
+ }
+ }
+ break;
+ case 2:
+ QBENCHMARK {
+ count = 0;
+ for (int i = 0; i < N; i++) {
+ mtx.lockInline();
+ count++;
+ mtx.unlockInline();
+ }
+ }
+ break;
+ case 3:
+ QBENCHMARK {
+ count = 0;
+ for (int i = 0; i < N; i++) {
+ mtx.lock();
+ count++;
+ mtx.unlock();
+ }
+ }
+ break;
+ case 4:
+ QBENCHMARK {
+ count = 0;
+ for (int i = 0; i < N; i++) {
+ QMutexLocker locker(&mtx);
+ count++;
+ }
+ }
+ break;
+ }
+ QCOMPARE(int(count), N);
+}
+
+void tst_QMutex::uncontendedNative()
+{
+ NativeMutexType mutex;
+ NativeMutexInitialize(&mutex);
+ QBENCHMARK {
+ NativeMutexLock(&mutex);
+ NativeMutexUnlock(&mutex);
+ }
+ NativeMutexDestroy(&mutex);
+}
+
+void tst_QMutex::uncontendedQMutex()
+{
+ QMutex mutex;
+ QBENCHMARK {
+ mutex.lock();
+ mutex.unlock();
+ }
+}
+
+void tst_QMutex::uncontendedQMutexLocker()
+{
+ QMutex mutex;
+ QBENCHMARK {
+ QMutexLocker locker(&mutex);
+ }
+}
+
+void tst_QMutex::contendedNative_data()
+{
+ QTest::addColumn<int>("iterations");
+ QTest::addColumn<int>("msleepDuration");
+ QTest::addColumn<bool>("use2mutexes");
+
+ QTest::newRow("baseline") << 0 << -1 << false;
+
+ QTest::newRow("no msleep, 1 mutex") << 1000 << -1 << false;
+ QTest::newRow("no msleep, 2 mutexes") << 1000 << -1 << true;
+ QTest::newRow("msleep(0), 1 mutex") << 1000 << 0 << false;
+ QTest::newRow("msleep(0), 2 mutexes") << 1000 << 0 << true;
+ QTest::newRow("msleep(1), 1 mutex") << 10 << 1 << false;
+ QTest::newRow("msleep(1), 2 mutexes") << 10 << 1 << true;
+ QTest::newRow("msleep(2), 1 mutex") << 10 << 2 << false;
+ QTest::newRow("msleep(2), 2 mutexes") << 10 << 2 << true;
+ QTest::newRow("msleep(10), 1 mutex") << 10 << 10 << false;
+ QTest::newRow("msleep(10), 2 mutexes") << 10 << 10 << true;
+}
+
+class NativeMutexThread : public QThread
+{
+ NativeMutexType *mutex1, *mutex2;
+ int iterations, msleepDuration;
+ bool use2mutexes;
+public:
+ bool done;
+ NativeMutexThread(NativeMutexType *mutex1, NativeMutexType *mutex2, int iterations, int msleepDuration, bool use2mutexes)
+ : mutex1(mutex1), mutex2(mutex2), iterations(iterations), msleepDuration(msleepDuration), use2mutexes(use2mutexes), done(false)
+ { }
+ void run() {
+ forever {
+ tst_QMutex::semaphore1.release();
+ tst_QMutex::semaphore2.acquire();
+ if (done)
+ break;
+ for (int i = 0; i < iterations; ++i) {
+ NativeMutexLock(mutex1);
+ if (use2mutexes)
+ NativeMutexLock(mutex2);
+ if (msleepDuration >= 0)
+ msleep(msleepDuration);
+ if (use2mutexes)
+ NativeMutexUnlock(mutex2);
+ NativeMutexUnlock(mutex1);
+
+ QThread::yieldCurrentThread();
+ }
+ tst_QMutex::semaphore3.release();
+ tst_QMutex::semaphore4.acquire();
+ }
+ }
+};
+
+void tst_QMutex::contendedNative()
+{
+ QFETCH(int, iterations);
+ QFETCH(int, msleepDuration);
+ QFETCH(bool, use2mutexes);
+
+ NativeMutexType mutex1, mutex2;
+ NativeMutexInitialize(&mutex1);
+ NativeMutexInitialize(&mutex2);
+
+ QVector<NativeMutexThread *> threads(threadCount);
+ for (int i = 0; i < threads.count(); ++i) {
+ threads[i] = new NativeMutexThread(&mutex1, &mutex2, iterations, msleepDuration, use2mutexes);
+ threads[i]->start();
+ }
+
+ QBENCHMARK {
+ semaphore1.acquire(threadCount);
+ semaphore2.release(threadCount);
+ semaphore3.acquire(threadCount);
+ semaphore4.release(threadCount);
+ }
+
+ for (int i = 0; i < threads.count(); ++i)
+ threads[i]->done = true;
+ semaphore1.acquire(threadCount);
+ semaphore2.release(threadCount);
+ for (int i = 0; i < threads.count(); ++i)
+ threads[i]->wait();
+ qDeleteAll(threads);
+
+ NativeMutexDestroy(&mutex1);
+ NativeMutexDestroy(&mutex2);
+}
+
+class QMutexThread : public QThread
+{
+ QMutex *mutex1, *mutex2;
+ int iterations, msleepDuration;
+ bool use2mutexes;
+public:
+ bool done;
+ QMutexThread(QMutex *mutex1, QMutex *mutex2, int iterations, int msleepDuration, bool use2mutexes)
+ : mutex1(mutex1), mutex2(mutex2), iterations(iterations), msleepDuration(msleepDuration), use2mutexes(use2mutexes), done(false)
+ { }
+ void run() {
+ forever {
+ tst_QMutex::semaphore1.release();
+ tst_QMutex::semaphore2.acquire();
+ if (done)
+ break;
+ for (int i = 0; i < iterations; ++i) {
+ mutex1->lock();
+ if (use2mutexes)
+ mutex2->lock();
+ if (msleepDuration >= 0)
+ msleep(msleepDuration);
+ if (use2mutexes)
+ mutex2->unlock();
+ mutex1->unlock();
+
+ QThread::yieldCurrentThread();
+ }
+ tst_QMutex::semaphore3.release();
+ tst_QMutex::semaphore4.acquire();
+ }
+ }
+};
+
+void tst_QMutex::contendedQMutex()
+{
+ QFETCH(int, iterations);
+ QFETCH(int, msleepDuration);
+ QFETCH(bool, use2mutexes);
+
+ QMutex mutex1, mutex2;
+
+ QVector<QMutexThread *> threads(threadCount);
+ for (int i = 0; i < threads.count(); ++i) {
+ threads[i] = new QMutexThread(&mutex1, &mutex2, iterations, msleepDuration, use2mutexes);
+ threads[i]->start();
+ }
+
+ QBENCHMARK {
+ semaphore1.acquire(threadCount);
+ semaphore2.release(threadCount);
+ semaphore3.acquire(threadCount);
+ semaphore4.release(threadCount);
+ }
+
+ for (int i = 0; i < threads.count(); ++i)
+ threads[i]->done = true;
+ semaphore1.acquire(threadCount);
+ semaphore2.release(threadCount);
+ for (int i = 0; i < threads.count(); ++i)
+ threads[i]->wait();
+ qDeleteAll(threads);
+}
+
+class QMutexLockerThread : public QThread
+{
+ QMutex *mutex1, *mutex2;
+ int iterations, msleepDuration;
+ bool use2mutexes;
+public:
+ bool done;
+ QMutexLockerThread(QMutex *mutex1, QMutex *mutex2, int iterations, int msleepDuration, bool use2mutexes)
+ : mutex1(mutex1), mutex2(mutex2), iterations(iterations), msleepDuration(msleepDuration), use2mutexes(use2mutexes), done(false)
+ { }
+ void run() {
+ forever {
+ tst_QMutex::semaphore1.release();
+ tst_QMutex::semaphore2.acquire();
+ if (done)
+ break;
+ for (int i = 0; i < iterations; ++i) {
+ {
+ QMutexLocker locker1(mutex1);
+ QMutexLocker locker2(use2mutexes ? mutex2 : 0);
+ if (msleepDuration >= 0)
+ msleep(msleepDuration);
+ }
+
+ QThread::yieldCurrentThread();
+ }
+ tst_QMutex::semaphore3.release();
+ tst_QMutex::semaphore4.acquire();
+ }
+ }
+};
+
+void tst_QMutex::contendedQMutexLocker()
+{
+ QFETCH(int, iterations);
+ QFETCH(int, msleepDuration);
+ QFETCH(bool, use2mutexes);
+
+ QMutex mutex1, mutex2;
+
+ QVector<QMutexLockerThread *> threads(threadCount);
+ for (int i = 0; i < threads.count(); ++i) {
+ threads[i] = new QMutexLockerThread(&mutex1, &mutex2, iterations, msleepDuration, use2mutexes);
+ threads[i]->start();
+ }
+
+ QBENCHMARK {
+ semaphore1.acquire(threadCount);
+ semaphore2.release(threadCount);
+ semaphore3.acquire(threadCount);
+ semaphore4.release(threadCount);
+ }
+
+ for (int i = 0; i < threads.count(); ++i)
+ threads[i]->done = true;
+ semaphore1.acquire(threadCount);
+ semaphore2.release(threadCount);
+ for (int i = 0; i < threads.count(); ++i)
+ threads[i]->wait();
+ qDeleteAll(threads);
+}
+
+QTEST_MAIN(tst_QMutex)
+#include "tst_qmutex.moc"
diff --git a/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro b/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro
new file mode 100644
index 0000000000..e8014d6ccc
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qthreadstorage
+
+SOURCES += tst_qthreadstorage.cpp
+QT -= gui
diff --git a/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp b/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp
new file mode 100644
index 0000000000..1c946b8a39
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp
@@ -0,0 +1,124 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QtCore>
+
+//TESTED_FILES=
+
+QThreadStorage<int *> dummy[8];
+
+QThreadStorage<QString *> tls1;
+
+class tst_QThreadStorage : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QThreadStorage();
+ virtual ~tst_QThreadStorage();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void construct();
+ void get();
+ void set();
+};
+
+tst_QThreadStorage::tst_QThreadStorage()
+{
+}
+
+tst_QThreadStorage::~tst_QThreadStorage()
+{
+}
+
+void tst_QThreadStorage::init()
+{
+ dummy[1].setLocalData(new int(5));
+ dummy[2].setLocalData(new int(4));
+ dummy[3].setLocalData(new int(3));
+ tls1.setLocalData(new QString());
+}
+
+void tst_QThreadStorage::cleanup()
+{
+}
+
+void tst_QThreadStorage::construct()
+{
+ QBENCHMARK {
+ QThreadStorage<int *> ts;
+ }
+}
+
+
+void tst_QThreadStorage::get()
+{
+ QThreadStorage<int *> ts;
+ ts.setLocalData(new int(45));
+
+ int count = 0;
+ QBENCHMARK {
+ int *i = ts.localData();
+ count += *i;
+ }
+ ts.setLocalData(0);
+}
+
+void tst_QThreadStorage::set()
+{
+ QThreadStorage<int *> ts;
+
+ int count = 0;
+ QBENCHMARK {
+ ts.setLocalData(new int(count));
+ count++;
+ }
+ ts.setLocalData(0);
+}
+
+
+QTEST_MAIN(tst_QThreadStorage)
+#include "tst_qthreadstorage.moc"
diff --git a/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro b/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro
new file mode 100644
index 0000000000..bc7bd582f3
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qwaitcondition
+QT -= gui
+SOURCES += tst_qwaitcondition.cpp
diff --git a/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp b/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp
new file mode 100644
index 0000000000..1bfc637402
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/qwaitcondition/tst_qwaitcondition.cpp
@@ -0,0 +1,210 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtCore/QtCore>
+#include <QtTest/QtTest>
+
+#include <math.h>
+
+
+class tst_QWaitCondition : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QWaitCondition()
+ {
+ }
+
+private slots:
+ void oscillate_data();
+ void oscillate();
+
+ void thrash_data();
+ void thrash();
+
+public:
+ static QWaitCondition local, remote;
+ enum Turn {LocalTurn, RemoteTurn};
+ static Turn turn;
+};
+
+QWaitCondition tst_QWaitCondition::local;
+QWaitCondition tst_QWaitCondition::remote;
+tst_QWaitCondition::Turn tst_QWaitCondition::turn = tst_QWaitCondition::LocalTurn;
+
+class OscillateThread : public QThread
+{
+public:
+ bool m_done;
+ bool m_useMutex;
+ unsigned long m_timeout;
+ bool m_wakeOne;
+ int count;
+
+ OscillateThread(bool useMutex, unsigned long timeout, bool wakeOne)
+ : m_done(false), m_useMutex(useMutex), m_timeout(timeout), m_wakeOne(wakeOne)
+ {}
+ void run()
+ {
+ QMutex mtx;
+ QReadWriteLock rwl;
+ count = 0;
+
+ forever {
+ if (m_done)
+ break;
+ if (m_useMutex) {
+ mtx.lock();
+ while (tst_QWaitCondition::turn == tst_QWaitCondition::LocalTurn)
+ tst_QWaitCondition::remote.wait(&mtx, m_timeout);
+ mtx.unlock();
+ } else {
+ rwl.lockForWrite();
+ while (tst_QWaitCondition::turn == tst_QWaitCondition::LocalTurn)
+ tst_QWaitCondition::remote.wait(&rwl, m_timeout);
+ rwl.unlock();
+ }
+ tst_QWaitCondition::turn = tst_QWaitCondition::LocalTurn;
+ if (m_wakeOne)
+ tst_QWaitCondition::local.wakeOne();
+ else
+ tst_QWaitCondition::local.wakeAll();
+ count++;
+ }
+ }
+};
+
+void tst_QWaitCondition::oscillate_data()
+{
+ QTest::addColumn<bool>("useMutex");
+ QTest::addColumn<unsigned long>("timeout");
+ QTest::addColumn<bool>("wakeOne");
+
+ QTest::newRow("mutex, timeout, one") << true << 1000ul << true;
+ QTest::newRow("readWriteLock, timeout, one") << false << 1000ul << true;
+ QTest::newRow("mutex, timeout, all") << true << 1000ul << false;
+ QTest::newRow("readWriteLock, timeout, all") << false << 1000ul << false;
+ QTest::newRow("mutex, forever, one") << true << ULONG_MAX << true;
+ QTest::newRow("readWriteLock, forever, one") << false << ULONG_MAX << true;
+ QTest::newRow("mutex, forever, all") << true << ULONG_MAX << false;
+ QTest::newRow("readWriteLock, forever, all") << false << ULONG_MAX << false;
+}
+
+void tst_QWaitCondition::oscillate()
+{
+ QMutex mtx;
+ QReadWriteLock rwl;
+
+ QFETCH(bool, useMutex);
+ QFETCH(unsigned long, timeout);
+ QFETCH(bool, wakeOne);
+
+ turn = LocalTurn;
+ OscillateThread thrd(useMutex, timeout, wakeOne);
+ thrd.start();
+
+ QBENCHMARK {
+ if (useMutex)
+ mtx.lock();
+ else
+ rwl.lockForWrite();
+ turn = RemoteTurn;
+ if (wakeOne)
+ remote.wakeOne();
+ else
+ remote.wakeAll();
+ if (useMutex) {
+ while (turn == RemoteTurn)
+ local.wait(&mtx, timeout);
+ mtx.unlock();
+ } else {
+ while (turn == RemoteTurn)
+ local.wait(&rwl, timeout);
+ rwl.unlock();
+ }
+ }
+
+ thrd.m_done = true;
+ remote.wakeAll();
+ thrd.wait();
+
+ QCOMPARE(0, 0);
+}
+
+void tst_QWaitCondition::thrash_data()
+{
+ oscillate_data();
+}
+
+void tst_QWaitCondition::thrash()
+{
+ QMutex mtx;
+ mtx.lock();
+
+ QFETCH(bool, useMutex);
+ QFETCH(unsigned long, timeout);
+ QFETCH(bool, wakeOne);
+
+ turn = LocalTurn;
+ OscillateThread thrd(useMutex, timeout, wakeOne);
+ thrd.start();
+ local.wait(&mtx, 1000ul);
+ mtx.unlock();
+
+ QBENCHMARK {
+ turn = RemoteTurn;
+ if (wakeOne)
+ remote.wakeOne();
+ else
+ remote.wakeAll();
+ }
+
+ thrd.m_done = true;
+ turn = RemoteTurn;
+ remote.wakeAll();
+ thrd.wait();
+
+ QCOMPARE(0, 0);
+}
+
+QTEST_MAIN(tst_QWaitCondition)
+#include "tst_qwaitcondition.moc"
diff --git a/tests/benchmarks/corelib/thread/thread.pro b/tests/benchmarks/corelib/thread/thread.pro
new file mode 100644
index 0000000000..26570bacfe
--- /dev/null
+++ b/tests/benchmarks/corelib/thread/thread.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qthreadstorage
diff --git a/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro b/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro
new file mode 100644
index 0000000000..0dcee4f5dc
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro
@@ -0,0 +1,9 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_containers-associative
+DEPENDPATH += .
+INCLUDEPATH += .
+
+# Input
+SOURCES += main.cpp
+QT -= gui
diff --git a/tests/benchmarks/corelib/tools/containers-associative/main.cpp b/tests/benchmarks/corelib/tools/containers-associative/main.cpp
new file mode 100644
index 0000000000..b06bb99633
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/containers-associative/main.cpp
@@ -0,0 +1,142 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QString>
+
+#include <qtest.h>
+
+class tst_associative_containers : public QObject
+{
+ Q_OBJECT
+private slots:
+ void insert_data();
+ void insert();
+ void lookup_data();
+ void lookup();
+};
+
+template <typename T>
+void testInsert(int size)
+{
+ T container;
+
+ QBENCHMARK {
+ for (int i = 0; i < size; ++i)
+ container.insert(i, i);
+ }
+}
+
+void tst_associative_containers::insert_data()
+{
+ QTest::addColumn<bool>("useHash");
+ QTest::addColumn<int>("size");
+
+ for (int size = 10; size < 20000; size += 100) {
+
+ const QByteArray sizeString = QByteArray::number(size);
+
+ QTest::newRow(("hash--" + sizeString).constData()) << true << size;
+ QTest::newRow(("map--" + sizeString).constData()) << false << size;
+ }
+}
+
+void tst_associative_containers::insert()
+{
+ QFETCH(bool, useHash);
+ QFETCH(int, size);
+
+ QHash<int, int> testHash;
+ QMap<int, int> testMap;
+
+ if (useHash) {
+ testInsert<QHash<int, int> >(size);
+ } else {
+ testInsert<QMap<int, int> >(size);
+ }
+}
+
+void tst_associative_containers::lookup_data()
+{
+// setReportType(LineChartReport);
+// setChartTitle("Time to call value(), with an increasing number of items in the container");
+
+ QTest::addColumn<bool>("useHash");
+ QTest::addColumn<int>("size");
+
+ for (int size = 10; size < 20000; size += 100) {
+
+ const QByteArray sizeString = QByteArray::number(size);
+
+ QTest::newRow(("hash--" + sizeString).constData()) << true << size;
+ QTest::newRow(("map--" + sizeString).constData()) << false << size;
+ }
+}
+
+template <typename T>
+void testLookup(int size)
+{
+ T container;
+
+ for (int i = 0; i < size; ++i)
+ container.insert(i, i);
+
+ int val;
+
+ QBENCHMARK {
+ for (int i = 0; i < size; ++i)
+ val = container.value(i);
+
+ }
+}
+
+void tst_associative_containers::lookup()
+{
+ QFETCH(bool, useHash);
+ QFETCH(int, size);
+
+ if (useHash) {
+ testLookup<QHash<int, int> >(size);
+ } else {
+ testLookup<QMap<int, int> >(size);
+ }
+}
+
+QTEST_MAIN(tst_associative_containers)
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro b/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro
new file mode 100644
index 0000000000..656510e72d
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro
@@ -0,0 +1,9 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_containers-sequential
+DEPENDPATH += .
+INCLUDEPATH += .
+
+# Input
+SOURCES += main.cpp
+QT -= gui
diff --git a/tests/benchmarks/corelib/tools/containers-sequential/main.cpp b/tests/benchmarks/corelib/tools/containers-sequential/main.cpp
new file mode 100644
index 0000000000..ac183ce0cb
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/containers-sequential/main.cpp
@@ -0,0 +1,265 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+// This file contains benchmarks for comparing QVector against std::vector
+
+#include <QtCore>
+#include <QVector>
+#include <vector>
+
+#include <qtest.h>
+
+template <typename T> // T is the item type
+class UseCases {
+public:
+ virtual ~UseCases() {}
+
+ // Use case: Insert \a size items into the vector.
+ virtual void insert(int size) = 0;
+
+ // Use case: Lookup \a size items from the vector.
+ virtual void lookup(int size) = 0;
+};
+
+template <typename T>
+T * f(T *ts) // dummy function to prevent code from being optimized away by the compiler
+{
+ return ts;
+}
+
+// This subclass implements the use cases using QVector as efficiently as possible.
+template <typename T>
+class UseCases_QVector : public UseCases<T>
+{
+ void insert(int size)
+ {
+ QVector<T> v;
+ T t;
+ QBENCHMARK {
+ for (int i = 0; i < size; ++i)
+ v.append(t);
+ }
+ }
+
+ void lookup(int size)
+ {
+ QVector<T> v;
+
+ T t;
+ for (int i = 0; i < size; ++i)
+ v.append(t);
+
+ T *ts = new T[size];
+ QBENCHMARK {
+ for (int i = 0; i < size; ++i)
+ ts[i] = v.value(i);
+ }
+ f<T>(ts);
+ delete[] ts;
+ }
+};
+
+// This subclass implements the use cases using std::vector as efficiently as possible.
+template <typename T>
+class UseCases_stdvector : public UseCases<T>
+{
+ void insert(int size)
+ {
+ std::vector<T> v;
+ T t;
+ QBENCHMARK {
+ for (int i = 0; i < size; ++i)
+ v.push_back(t);
+ }
+ }
+
+ void lookup(int size)
+ {
+ std::vector<T> v;
+
+ T t;
+ for (int i = 0; i < size; ++i)
+ v.push_back(t);
+
+ T *ts = new T[size];
+ QBENCHMARK {
+ for (int i = 0; i < size; ++i)
+ ts[i] = v[i];
+ }
+ f<T>(ts);
+ delete[] ts;
+ }
+};
+
+struct Large { // A "large" item type
+ int x[1000];
+};
+
+// Symbian devices typically have limited memory
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_WINCE)
+# define LARGE_MAX_SIZE 2000
+#else
+# define LARGE_MAX_SIZE 20000
+#endif
+
+class tst_vector_vs_std : public QObject
+{
+ Q_OBJECT
+public:
+ tst_vector_vs_std()
+ {
+ useCases_QVector_int = new UseCases_QVector<int>;
+ useCases_stdvector_int = new UseCases_stdvector<int>;
+
+ useCases_QVector_Large = new UseCases_QVector<Large>;
+ useCases_stdvector_Large = new UseCases_stdvector<Large>;
+ }
+
+private:
+ UseCases<int> *useCases_QVector_int;
+ UseCases<int> *useCases_stdvector_int;
+ UseCases<Large> *useCases_QVector_Large;
+ UseCases<Large> *useCases_stdvector_Large;
+
+private slots:
+ void insert_int_data();
+ void insert_int();
+ void insert_Large_data();
+ void insert_Large();
+ void lookup_int_data();
+ void lookup_int();
+ void lookup_Large_data();
+ void lookup_Large();
+};
+
+void tst_vector_vs_std::insert_int_data()
+{
+ QTest::addColumn<bool>("useStd");
+ QTest::addColumn<int>("size");
+
+ for (int size = 10; size < 20000; size += 100) {
+ const QByteArray sizeString = QByteArray::number(size);
+ QTest::newRow(("std::vector-int--" + sizeString).constData()) << true << size;
+ QTest::newRow(("QVector-int--" + sizeString).constData()) << false << size;
+ }
+}
+
+void tst_vector_vs_std::insert_int()
+{
+ QFETCH(bool, useStd);
+ QFETCH(int, size);
+
+ if (useStd)
+ useCases_stdvector_int->insert(size);
+ else
+ useCases_QVector_int->insert(size);
+}
+
+void tst_vector_vs_std::insert_Large_data()
+{
+ QTest::addColumn<bool>("useStd");
+ QTest::addColumn<int>("size");
+
+ for (int size = 10; size < LARGE_MAX_SIZE; size += 100) {
+ const QByteArray sizeString = QByteArray::number(size);
+ QTest::newRow(("std::vector-Large--" + sizeString).constData()) << true << size;
+ QTest::newRow(("QVector-Large--" + sizeString).constData()) << false << size;
+ }
+}
+
+void tst_vector_vs_std::insert_Large()
+{
+ QFETCH(bool, useStd);
+ QFETCH(int, size);
+
+ if (useStd)
+ useCases_stdvector_Large->insert(size);
+ else
+ useCases_QVector_Large->insert(size);
+}
+
+void tst_vector_vs_std::lookup_int_data()
+{
+ QTest::addColumn<bool>("useStd");
+ QTest::addColumn<int>("size");
+
+ for (int size = 10; size < 20000; size += 100) {
+ const QByteArray sizeString = QByteArray::number(size);
+ QTest::newRow(("std::vector-int--" + sizeString).constData()) << true << size;
+ QTest::newRow(("QVector-int--" + sizeString).constData()) << false << size;
+ }
+}
+
+void tst_vector_vs_std::lookup_int()
+{
+ QFETCH(bool, useStd);
+ QFETCH(int, size);
+
+ if (useStd)
+ useCases_stdvector_int->lookup(size);
+ else
+ useCases_QVector_int->lookup(size);
+}
+
+void tst_vector_vs_std::lookup_Large_data()
+{
+ QTest::addColumn<bool>("useStd");
+ QTest::addColumn<int>("size");
+
+ for (int size = 10; size < LARGE_MAX_SIZE; size += 100) {
+ const QByteArray sizeString = QByteArray::number(size);
+ QTest::newRow(("std::vector-Large--" + sizeString).constData()) << true << size;
+ QTest::newRow(("QVector-Large--" + sizeString).constData()) << false << size;
+ }
+}
+
+void tst_vector_vs_std::lookup_Large()
+{
+ QFETCH(bool, useStd);
+ QFETCH(int, size);
+
+ if (useStd)
+ useCases_stdvector_Large->lookup(size);
+ else
+ useCases_QVector_Large->lookup(size);
+}
+
+QTEST_MAIN(tst_vector_vs_std)
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qbytearray/main.cpp b/tests/benchmarks/corelib/tools/qbytearray/main.cpp
new file mode 100644
index 0000000000..9c204a5605
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qbytearray/main.cpp
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <QIODevice>
+#include <QFile>
+#include <QString>
+
+#include <qtest.h>
+
+
+class tst_qbytearray : public QObject
+{
+ Q_OBJECT
+private slots:
+ void append();
+ void append_data();
+};
+
+
+void tst_qbytearray::append_data()
+{
+ QTest::addColumn<int>("size");
+ QTest::newRow("1") << int(1);
+ QTest::newRow("10") << int(10);
+ QTest::newRow("100") << int(100);
+ QTest::newRow("1000") << int(1000);
+ QTest::newRow("10000") << int(10000);
+ QTest::newRow("100000") << int(100000);
+ QTest::newRow("1000000") << int(1000000);
+ QTest::newRow("10000000") << int(10000000);
+ QTest::newRow("100000000") << int(100000000);
+}
+
+void tst_qbytearray::append()
+{
+ QFETCH(int, size);
+
+#ifdef Q_OS_SYMBIAN
+ if (size > 1000000)
+ QSKIP("Skipped due to limited memory in many Symbian devices.", SkipSingle);
+#endif
+
+ QByteArray ba;
+ QBENCHMARK {
+ QByteArray ba2(size, 'x');
+ ba.append(ba2);
+ ba.clear();
+ }
+}
+
+
+QTEST_MAIN(tst_qbytearray)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qbytearray/qbytearray.pro b/tests/benchmarks/corelib/tools/qbytearray/qbytearray.pro
new file mode 100755
index 0000000000..3474dd061a
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qbytearray/qbytearray.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qbytearray
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qhash/data.txt b/tests/benchmarks/corelib/tools/qhash/data.txt
new file mode 100644
index 0000000000..d5acd28820
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qhash/data.txt
@@ -0,0 +1,195 @@
+.
+./corelib.pro
+./kernel
+./kernel/kernel.pro
+./kernel/qobject
+./kernel/qobject/main.cpp
+./kernel/qobject/object.cpp
+./kernel/qobject/object.h
+./kernel/qobject/Makefile
+./kernel/qobject/qobject.pro
+./kernel/qvariant
+./kernel/qvariant/tst_qvariant.cpp
+./kernel/qvariant/Makefile
+./kernel/qvariant/qvariant.pro
+./kernel/qtimer_vs_qmetaobject
+./kernel/qtimer_vs_qmetaobject/tst_qtimer_vs_qmetaobject.cpp
+./kernel/qtimer_vs_qmetaobject/Makefile
+./kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro
+./kernel/.pch
+./kernel/.pch/debug-shared
+./kernel/qmetaobject
+./kernel/qmetaobject/main.cpp
+./kernel/qmetaobject/qmetaobject.pro
+./kernel/qmetaobject/Makefile
+./kernel/Makefile
+./kernel/.obj
+./kernel/.obj/debug-shared
+./kernel/events
+./kernel/events/events.pro
+./kernel/events/main.cpp
+./kernel/events/Makefile
+./kernel/qmetatype
+./kernel/qmetatype/qmetatype.pro
+./kernel/qmetatype/Makefile
+./kernel/qmetatype/tst_qmetatype.cpp
+./codecs
+./codecs/qtextcodec
+./codecs/qtextcodec/qtextcodec.pro
+./codecs/qtextcodec/main.cpp
+./codecs/qtextcodec/Makefile
+./codecs/qtextcodec/utf-8.txt
+./codecs/codecs.pro
+./codecs/.pch
+./codecs/.pch/debug-shared
+./codecs/Makefile
+./codecs/.obj
+./codecs/.obj/debug-shared
+./.pch
+./.pch/debug-shared
+./tools
+./tools/tools.pro
+./tools/qregexp
+./tools/qregexp/qregexp.qrc
+./tools/qregexp/main.cpp
+./tools/qregexp/Makefile
+./tools/qregexp/qregexp.pro
+./tools/qvector
+./tools/qvector/tst_vector
+./tools/qvector/.pch
+./tools/qvector/.pch/debug-shared
+./tools/qvector/qrawvector.h
+./tools/qvector/main.cpp
+./tools/qvector/Makefile
+./tools/qvector/.moc
+./tools/qvector/.moc/release-shared
+./tools/qvector/.moc/release-shared/main.moc
+./tools/qvector/.obj
+./tools/qvector/.obj/release-shared
+./tools/qvector/.obj/release-shared/outofline.o
+./tools/qvector/.obj/release-shared/main.o
+./tools/qvector/outofline.cpp
+./tools/qvector/qvector.pro
+./tools/.pch
+./tools/.pch/debug-shared
+./tools/qstringbuilder
+./tools/qstringbuilder/main.cpp
+./tools/qstringbuilder/Makefile
+./tools/qstringbuilder/qstringbuilder.pro
+./tools/containers-sequential
+./tools/containers-sequential/containers-sequential.pro
+./tools/containers-sequential/main.cpp
+./tools/containers-sequential/Makefile
+./tools/qstring
+./tools/qstring/generatelist.pl
+./tools/qstring/data.h
+./tools/qstring/qstring.pro
+./tools/qstring/main.cpp
+./tools/qstring/data.cpp
+./tools/qstring/Makefile
+./tools/qstring/utf-8.txt
+./tools/qstringlist
+./tools/qstringlist/qstringlist.pro
+./tools/qstringlist/main.cpp
+./tools/qstringlist/.gitignore
+./tools/qstringlist/Makefile
+./tools/qbytearray
+./tools/qbytearray/qbytearray.pro
+./tools/qbytearray/main.cpp
+./tools/qbytearray/Makefile
+./tools/containers-associative
+./tools/containers-associative/containers-associative.pro
+./tools/containers-associative/main.cpp
+./tools/containers-associative/Makefile
+./tools/qrect
+./tools/qrect/main.cpp
+./tools/qrect/Makefile
+./tools/qrect/qrect.pro
+./tools/Makefile
+./tools/qhash
+./tools/qhash/data.txt
+./tools/qhash/qhash_string.cpp
+./tools/qhash/.qhash_string.cpp.swp
+./tools/qhash/qhash.pro
+./tools/qhash/outofline.cpp
+./tools/.obj
+./tools/.obj/debug-shared
+./Makefile
+./.obj
+./.obj/debug-shared
+./plugin
+./plugin/plugin.pro
+./plugin/.pch
+./plugin/.pch/debug-shared
+./plugin/Makefile
+./plugin/.obj
+./plugin/.obj/debug-shared
+./plugin/quuid
+./plugin/quuid/tst_quuid.cpp
+./plugin/quuid/quuid.pro
+./plugin/quuid/Makefile
+./io
+./io/qtemporaryfile
+./io/qtemporaryfile/qtemporaryfile.pro
+./io/qtemporaryfile/main.cpp
+./io/qtemporaryfile/Makefile
+./io/qiodevice
+./io/qiodevice/qiodevice.pro
+./io/qiodevice/main.cpp
+./io/qiodevice/Makefile
+./io/qurl
+./io/qurl/main.cpp
+./io/qurl/Makefile
+./io/qurl/qurl.pro
+./io/qdir
+./io/qdir/.pch
+./io/qdir/.pch/debug-shared
+./io/qdir/qdir.pro
+./io/qdir/tree
+./io/qdir/tree/bench_qdir_tree.qrc
+./io/qdir/tree/tree.pro
+./io/qdir/tree/4.6.0-list.txt
+./io/qdir/tree/Makefile
+./io/qdir/tree/bench_qdir_tree.cpp
+./io/qdir/Makefile
+./io/qdir/.obj
+./io/qdir/.obj/debug-shared
+./io/qdir/10000
+./io/qdir/10000/10000.pro
+./io/qdir/10000/bench_qdir_10000.cpp
+./io/qdir/10000/Makefile
+./io/.pch
+./io/.pch/debug-shared
+./io/qfile
+./io/qfile/qfile.pro
+./io/qfile/main.cpp
+./io/qfile/Makefile
+./io/io.pro
+./io/qfileinfo
+./io/qfileinfo/qfileinfo.pro
+./io/qfileinfo/main.cpp
+./io/qfileinfo/Makefile
+./io/qdiriterator
+./io/qdiriterator/qfilesystemiterator.h
+./io/qdiriterator/main.cpp
+./io/qdiriterator/Makefile
+./io/qdiriterator/qfilesystemiterator.cpp
+./io/qdiriterator/qdiriterator.pro
+./io/Makefile
+./io/.obj
+./io/.obj/debug-shared
+./thread
+./thread/qmutex
+./thread/qmutex/tst_qmutex.cpp
+./thread/qmutex/Makefile
+./thread/qmutex/qmutex.pro
+./thread/qthreadstorage
+./thread/qthreadstorage/qthreadstorage.pro
+./thread/qthreadstorage/Makefile
+./thread/qthreadstorage/tst_qthreadstorage.cpp
+./thread/.pch
+./thread/.pch/debug-shared
+./thread/Makefile
+./thread/.obj
+./thread/.obj/debug-shared
+./thread/thread.pro
diff --git a/tests/benchmarks/corelib/tools/qhash/outofline.cpp b/tests/benchmarks/corelib/tools/qhash/outofline.cpp
new file mode 100644
index 0000000000..0a60da29a3
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qhash/outofline.cpp
@@ -0,0 +1,90 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtTest module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "qhash_string.h"
+
+static void doHash(const unsigned short *p, uint &h)
+{
+#if 1
+ // Copied from static uint hash(const QChar *p, int n).
+ // Possibly not the cheapest way.
+ h = (h << 4) + (*p++);
+ h ^= (h & 0xf0000000) >> 23;
+ h &= 0x0fffffff;
+
+ h = (h << 4) + (*p++);
+ h ^= (h & 0xf0000000) >> 23;
+ h &= 0x0fffffff;
+
+ h = (h << 4) + (*p++);
+ h ^= (h & 0xf0000000) >> 23;
+ h &= 0x0fffffff;
+
+ h = (h << 4) + (*p++);
+ h ^= (h & 0xf0000000) >> 23;
+ h &= 0x0fffffff;
+#else
+ // Faster, but probably less spread.
+ h ^= *(unsigned int *)p;
+#endif
+}
+
+QT_BEGIN_NAMESPACE
+
+uint qHash(const String &str)
+{
+ const unsigned short *p = (unsigned short *)str.constData();
+ const int s = str.size();
+ switch (s) {
+ case 0: return 0;
+ case 1: return *p;
+ case 2: return *(unsigned int *)p;
+ case 3: return (*(unsigned int *)p) ^ *(p + 2);
+ //case 3: return (*p << 11) + (*(p + 1) << 22) + *(p + 2);
+ }
+ uint h = 0;
+ doHash(p, h);
+ doHash(p + s / 2 - 2, h);
+ doHash(p + s - 4, h);
+ return h;
+}
+
+QT_END_NAMESPACE
diff --git a/tests/benchmarks/corelib/tools/qhash/qhash.pro b/tests/benchmarks/corelib/tools/qhash/qhash.pro
new file mode 100644
index 0000000000..dff152cda7
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qhash/qhash.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TARGET = tst_hash
+QT = core
+INCLUDEPATH += .
+SOURCES += qhash_string.cpp outofline.cpp
+CONFIG += release
diff --git a/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp b/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp
new file mode 100644
index 0000000000..d9e62cca00
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qhash/qhash_string.cpp
@@ -0,0 +1,131 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*
+
+////////////////////////////////////////////////////////////////////
+
+This benchmark serves as reality check on the idea that hashing the complete
+string is a good idea.
+
+ Executive summary: It is not a good idea.
+
+////////////////////////////////////////////////////////////////////
+
+********* Start testing of tst_QHash *********
+Config: Using QTest library 4.8.0, Qt 4.8.0
+PASS : tst_QHash::initTestCase()
+RESULT : tst_QHash::qhash_qt4():
+ 0.041 msecs per iteration (total: 85, iterations: 2048)
+PASS : tst_QHash::qhash_qt4()
+RESULT : tst_QHash::qhash_faster():
+ 0.0122 msecs per iteration (total: 100, iterations: 8192)
+PASS : tst_QHash::qhash_faster()
+PASS : tst_QHash::cleanupTestCase()
+Totals: 4 passed, 0 failed, 0 skipped
+
+////////////////////////////////////////////////////////////////////
+
+*/
+
+#include "qhash_string.h"
+
+#include <QFile>
+#include <QHash>
+#include <QString>
+#include <QStringList>
+
+#include <QTest>
+
+
+class tst_QHash : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void qhash_qt4();
+ void qhash_faster();
+
+private:
+ QString data();
+};
+
+const int N = 1000000;
+extern double s;
+
+///////////////////// QHash /////////////////////
+
+QString tst_QHash::data()
+{
+ QFile file("data.txt");
+ file.open(QIODevice::ReadOnly);
+ return QString::fromLatin1(file.readAll());
+}
+
+void tst_QHash::qhash_qt4()
+{
+ QStringList items = data().split(QLatin1Char('\n'));
+ QHash<QString, int> hash;
+
+ QBENCHMARK {
+ for (int i = 0, n = items.size(); i != n; ++i) {
+ hash[items.at(i)] = i;
+ }
+ }
+}
+
+void tst_QHash::qhash_faster()
+{
+ QList<String> items;
+ foreach (const QString &s, data().split(QLatin1Char('\n')))
+ items.append(s);
+ QHash<String, int> hash;
+
+ QBENCHMARK {
+ for (int i = 0, n = items.size(); i != n; ++i) {
+ hash[items.at(i)] = i;
+ }
+ }
+}
+
+QTEST_MAIN(tst_QHash)
+
+#include "qhash_string.moc"
diff --git a/tests/benchmarks/corelib/tools/qhash/qhash_string.h b/tests/benchmarks/corelib/tools/qhash/qhash_string.h
new file mode 100644
index 0000000000..78a3a42c1b
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qhash/qhash_string.h
@@ -0,0 +1,52 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtTest module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QString>
+
+struct String : QString
+{
+ String() {}
+ String(const QString &s) : QString(s) {}
+};
+
+QT_BEGIN_NAMESPACE
+uint qHash(const String &);
+QT_END_NAMESPACE
diff --git a/tests/benchmarks/corelib/tools/qrect/main.cpp b/tests/benchmarks/corelib/tools/qrect/main.cpp
new file mode 100644
index 0000000000..3dd4722fd0
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qrect/main.cpp
@@ -0,0 +1,329 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+// This file contains benchmarks for QRect/QRectF functions.
+
+#include <QDebug>
+#include <qtest.h>
+
+class tst_qrect : public QObject
+{
+ Q_OBJECT
+private slots:
+ // QRect functions:
+ void contains_point_data();
+ void contains_point();
+ void contains_rect_data();
+ void contains_rect();
+ void intersects_data();
+ void intersects();
+ void intersected_data();
+ void intersected();
+ void united_data();
+ void united();
+
+ // QRectF functions:
+ void contains_point_f_data();
+ void contains_point_f();
+ void contains_rect_f_data();
+ void contains_rect_f();
+ void intersects_f_data();
+ void intersects_f();
+ void intersected_f_data();
+ void intersected_f();
+ void united_f_data();
+ void united_f();
+};
+
+struct RectRectCombination
+{
+ QString tag;
+ qreal x1, y1, w1, h1, x2, y2, w2, h2;
+ RectRectCombination(
+ const QString &tag,
+ const qreal x1, const qreal y1, const qreal w1, const qreal h1,
+ const qreal x2, const qreal y2, const qreal w2, const qreal h2)
+ : tag(tag), x1(x1), y1(y1), w1(w1), h1(h1), x2(x2), y2(y2), w2(w2), h2(h2) {}
+};
+
+static QList<RectRectCombination> createRectRectCombinations()
+{
+ QList<RectRectCombination> result;
+ result << RectRectCombination("null", 0, 0, 0, 0, 0, 0, 0, 0);
+ result << RectRectCombination("null1", 0, 0, 0, 0, 0, 0, 10, 10);
+ result << RectRectCombination("null2", 0, 0, 10, 10, 0, 0, 0, 0);
+
+ result << RectRectCombination("miss", 0, 0, 10, 10, 11, 11, 10, 10);
+ result << RectRectCombination("intersect", 0, 0, 10, 10, 5, 5, 10, 10);
+ result << RectRectCombination("contain1", 0, 0, 10, 10, 1, 1, 8, 8);
+ result << RectRectCombination("contain2", 1, 1, 8, 8, 0, 0, 10, 10);
+
+ result << RectRectCombination("miss_flip1", 9, 9, -10, -10, 11, 11, 10, 10);
+ result << RectRectCombination("intersect_flip1", 9, 9, -10, -10, 5, 5, 10, 10);
+ result << RectRectCombination("contain1_flip1", 9, 9, -10, -10, 1, 1, 8, 8);
+ result << RectRectCombination("contain2_flip1", 8, 8, -8, -8, 0, 0, 10, 10);
+
+ result << RectRectCombination("miss_flip2", 0, 0, 10, 10, 20, 20, -10, -10);
+ result << RectRectCombination("intersect_flip2", 0, 0, 10, 10, 14, 14, -10, -10);
+ result << RectRectCombination("contain1_flip2", 0, 0, 10, 10, 8, 8, -8, -8);
+ result << RectRectCombination("contain2_flip2", 1, 1, 8, 8, 9, 9, -10, -10);
+
+ return result;
+}
+
+static void addRectRectData(bool includeProperArg = false)
+{
+ QTest::addColumn<QRectF>("rf1");
+ QTest::addColumn<QRectF>("rf2");
+ if (includeProperArg)
+ QTest::addColumn<bool>("proper");
+ for (int i = 0; i < (includeProperArg ? 2 : 1); ++i) {
+ QList<RectRectCombination> combinations = createRectRectCombinations();
+ foreach (RectRectCombination c, combinations) {
+ QTestData &testData = QTest::newRow(c.tag.toLatin1().data());
+ QRectF r1(c.x1, c.y1, c.w1, c.h1);
+ QRectF r2(c.x2, c.y2, c.w2, c.h2);
+ testData << r1 << r2;
+ if (includeProperArg)
+ testData << (i == 0);
+ }
+ }
+}
+
+struct RectPointCombination
+{
+ QString tag;
+ qreal x, y, w, h, px, py;
+ RectPointCombination(
+ const QString &tag,
+ const qreal x, const qreal y, const qreal w, const qreal h, const qreal px, const qreal py)
+ : tag(tag), x(x), y(y), w(w), h(h), px(px), py(py) {}
+};
+
+static QList<RectPointCombination> createRectPointCombinations()
+{
+ QList<RectPointCombination> result;
+ result << RectPointCombination("null", 0, 0, 0, 0, 0, 0);
+
+ result << RectPointCombination("miss", 0, 0, 10, 10, -1, -1);
+ result << RectPointCombination("contain", 0, 0, 10, 10, 0, 0);
+ result << RectPointCombination("contain_proper", 0, 0, 10, 10, 1, 1);
+
+ result << RectPointCombination("miss_flip", 9, 9, -10, -10, -1, -1);
+ result << RectPointCombination("contain_flip", 9, 9, -10, -10, 0, 0);
+ result << RectPointCombination("contain_flip_proper", 9, 9, -10, -10, 1, 1);
+
+ return result;
+}
+
+static void addRectPointData(bool includeProperArg = false)
+{
+ QTest::addColumn<QRectF>("rf");
+ QTest::addColumn<QPointF>("pf");
+ if (includeProperArg)
+ QTest::addColumn<bool>("proper");
+ for (int i = 0; i < (includeProperArg ? 2 : 1); ++i) {
+ QList<RectPointCombination> combinations = createRectPointCombinations();
+ foreach (RectPointCombination c, combinations) {
+ QTestData &testData = QTest::newRow(c.tag.toLatin1().data());
+ QRectF r(c.x, c.y, c.w, c.h);
+ QPointF p(c.px, c.py);
+ testData << r << p;
+ if (includeProperArg)
+ testData << (i == 0);
+ }
+ }
+}
+
+void tst_qrect::contains_point_data()
+{
+ addRectPointData(true);
+}
+
+void tst_qrect::contains_point()
+{
+ QFETCH(QRectF, rf);
+ QFETCH(QPointF, pf);
+ QFETCH(bool, proper);
+ QRect r(rf.toRect());
+ QPoint p(pf.toPoint());
+ QBENCHMARK {
+ r.contains(p, proper);
+ }
+}
+
+void tst_qrect::contains_rect_data()
+{
+ addRectRectData(true);
+}
+
+void tst_qrect::contains_rect()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QFETCH(bool, proper);
+ QRect r1(rf1.toRect());
+ QRect r2(rf2.toRect());
+ QBENCHMARK {
+ r1.contains(r2, proper);
+ }
+}
+
+void tst_qrect::intersects_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::intersects()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QRect r1(rf1.toRect());
+ QRect r2(rf2.toRect());
+ QBENCHMARK {
+ r1.intersects(r2);
+ }
+}
+
+void tst_qrect::intersected_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::intersected()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QRect r1(rf1.toRect());
+ QRect r2(rf2.toRect());
+ QBENCHMARK {
+ r1.intersected(r2);
+ }
+}
+
+void tst_qrect::united_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::united()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QRect r1(rf1.toRect());
+ QRect r2(rf2.toRect());
+ QBENCHMARK {
+ r1.united(r2);
+ }
+}
+
+void tst_qrect::contains_point_f_data()
+{
+ addRectPointData();
+}
+
+void tst_qrect::contains_point_f()
+{
+ QFETCH(QRectF, rf);
+ QFETCH(QPointF, pf);
+ QBENCHMARK {
+ rf.contains(pf);
+ }
+}
+
+void tst_qrect::contains_rect_f_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::contains_rect_f()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QBENCHMARK {
+ rf1.contains(rf2);
+ }
+}
+
+void tst_qrect::intersects_f_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::intersects_f()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QBENCHMARK {
+ rf1.intersects(rf2);
+ }
+}
+
+void tst_qrect::intersected_f_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::intersected_f()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QBENCHMARK {
+ rf1.intersected(rf2);
+ }
+}
+
+void tst_qrect::united_f_data()
+{
+ addRectRectData();
+}
+
+void tst_qrect::united_f()
+{
+ QFETCH(QRectF, rf1);
+ QFETCH(QRectF, rf2);
+ QBENCHMARK {
+ rf1.united(rf2);
+ }
+}
+
+QTEST_MAIN(tst_qrect)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qrect/qrect.pro b/tests/benchmarks/corelib/tools/qrect/qrect.pro
new file mode 100644
index 0000000000..4bd05aa0ad
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qrect/qrect.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qrect
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qregexp/main.cpp b/tests/benchmarks/corelib/tools/qregexp/main.cpp
new file mode 100644
index 0000000000..98d539f21a
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qregexp/main.cpp
@@ -0,0 +1,594 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QRegExp>
+#include <QString>
+#include <QFile>
+
+#include <qtest.h>
+#ifdef HAVE_BOOST
+#include <boost/regex.hpp>
+#endif
+
+#include <QtScript>
+#include "pcre/pcre.h"
+
+#define ZLIB_VERSION "1.2.3.4"
+
+class tst_qregexp : public QObject
+{
+ Q_OBJECT
+public:
+ tst_qregexp();
+private slots:
+ void escape_old();
+ void escape_old_data() { escape_data(); }
+ void escape_new1();
+ void escape_new1_data() { escape_data(); }
+ void escape_new2();
+ void escape_new2_data() { escape_data(); }
+ void escape_new3();
+ void escape_new3_data() { escape_data(); }
+ void escape_new4();
+ void escape_new4_data() { escape_data(); }
+/*
+ JSC outperforms everything.
+ Boost is less impressive then expected.
+ */
+ void simpleFind1();
+ void rangeReplace1();
+ void matchReplace1();
+
+ void simpleFind2();
+ void rangeReplace2();
+ void matchReplace2();
+
+ void simpleFindJSC();
+ void rangeReplaceJSC();
+ void matchReplaceJSC();
+
+#ifdef HAVE_BOOST
+ void simpleFindBoost();
+ void rangeReplaceBoost();
+ void matchReplaceBoost();
+#endif
+
+/* those apply an (incorrect) regexp on entire source
+ (this main.cpp). JSC appears to handle this
+ (ab)use case best. QRegExp performs extremly bad.
+ */
+ void horribleWrongReplace1();
+ void horribleReplace1();
+ void horribleReplace2();
+ void horribleWrongReplace2();
+ void horribleWrongReplaceJSC();
+ void horribleReplaceJSC();
+#ifdef HAVE_BOOST
+ void horribleWrongReplaceBoost();
+ void horribleReplaceBoost();
+#endif
+private:
+ QString str1;
+ QString str2;
+ void escape_data();
+};
+
+tst_qregexp::tst_qregexp()
+ :QObject()
+ ,str1("We are all happy monkeys")
+{
+ QFile f(":/main.cpp");
+ f.open(QFile::ReadOnly);
+ str2=f.readAll();
+}
+
+static void verify(const QString &quoted, const QString &expected)
+{
+ if (quoted != expected)
+ qDebug() << "ERROR:" << quoted << expected;
+}
+
+void tst_qregexp::escape_data()
+{
+ QTest::addColumn<QString>("pattern");
+ QTest::addColumn<QString>("expected");
+
+ QTest::newRow("escape 0") << "Hello world" << "Hello world";
+ QTest::newRow("escape 1") << "(Hello world)" << "\\(Hello world\\)";
+ {
+ QString s;
+ for (int i = 0; i < 10; ++i)
+ s += "(escape)";
+ QTest::newRow("escape 10") << s << QRegExp::escape(s);
+ }
+ {
+ QString s;
+ for (int i = 0; i < 100; ++i)
+ s += "(escape)";
+ QTest::newRow("escape 100") << s << QRegExp::escape(s);
+ }
+}
+
+void tst_qregexp::escape_old()
+{
+ QFETCH(QString, pattern);
+ QFETCH(QString, expected);
+
+ QBENCHMARK {
+ static const char meta[] = "$()*+.?[\\]^{|}";
+ QString quoted = pattern;
+ int i = 0;
+
+ while (i < quoted.length()) {
+ if (strchr(meta, quoted.at(i).toLatin1()) != 0)
+ quoted.insert(i++, QLatin1Char('\\'));
+ ++i;
+ }
+
+ verify(quoted, expected);
+ }
+}
+
+void tst_qregexp::escape_new1()
+{
+ QFETCH(QString, pattern);
+ QFETCH(QString, expected);
+
+ QBENCHMARK {
+ QString quoted;
+ const int count = pattern.count();
+ quoted.reserve(count * 2);
+ const QLatin1Char backslash('\\');
+ for (int i = 0; i < count; i++) {
+ switch (pattern.at(i).toLatin1()) {
+ case '$':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case '.':
+ case '?':
+ case '[':
+ case '\\':
+ case ']':
+ case '^':
+ case '{':
+ case '|':
+ case '}':
+ quoted.append(backslash);
+ }
+ quoted.append(pattern.at(i));
+ }
+ verify(quoted, expected);
+ }
+}
+
+void tst_qregexp::escape_new2()
+{
+ QFETCH(QString, pattern);
+ QFETCH(QString, expected);
+
+ QBENCHMARK {
+ int count = pattern.count();
+ const QLatin1Char backslash('\\');
+ QString quoted(count * 2, backslash);
+ const QChar *patternData = pattern.data();
+ QChar *quotedData = quoted.data();
+ int escaped = 0;
+ for ( ; --count >= 0; ++patternData) {
+ const QChar c = *patternData;
+ switch (c.unicode()) {
+ case '$':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case '.':
+ case '?':
+ case '[':
+ case '\\':
+ case ']':
+ case '^':
+ case '{':
+ case '|':
+ case '}':
+ ++escaped;
+ ++quotedData;
+ }
+ *quotedData = c;
+ ++quotedData;
+ }
+ quoted.resize(pattern.size() + escaped);
+
+ verify(quoted, expected);
+ }
+}
+
+void tst_qregexp::escape_new3()
+{
+ QFETCH(QString, pattern);
+ QFETCH(QString, expected);
+
+ QBENCHMARK {
+ QString quoted;
+ const int count = pattern.count();
+ quoted.reserve(count * 2);
+ const QLatin1Char backslash('\\');
+ for (int i = 0; i < count; i++) {
+ switch (pattern.at(i).toLatin1()) {
+ case '$':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case '.':
+ case '?':
+ case '[':
+ case '\\':
+ case ']':
+ case '^':
+ case '{':
+ case '|':
+ case '}':
+ quoted += backslash;
+ }
+ quoted += pattern.at(i);
+ }
+
+ verify(quoted, expected);
+ }
+}
+
+
+static inline bool needsEscaping(int c)
+{
+ switch (c) {
+ case '$':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case '.':
+ case '?':
+ case '[':
+ case '\\':
+ case ']':
+ case '^':
+ case '{':
+ case '|':
+ case '}':
+ return true;
+ }
+ return false;
+}
+
+void tst_qregexp::escape_new4()
+{
+ QFETCH(QString, pattern);
+ QFETCH(QString, expected);
+
+ QBENCHMARK {
+ const int n = pattern.size();
+ const QChar *patternData = pattern.data();
+ // try to prevent copy if no escape is needed
+ int i = 0;
+ for (int i = 0; i != n; ++i) {
+ const QChar c = patternData[i];
+ if (needsEscaping(c.unicode()))
+ break;
+ }
+ if (i == n) {
+ verify(pattern, expected);
+ // no escaping needed, "return pattern" should be done here.
+ return;
+ }
+ const QLatin1Char backslash('\\');
+ QString quoted(n * 2, backslash);
+ QChar *quotedData = quoted.data();
+ for (int j = 0; j != i; ++j)
+ *quotedData++ = *patternData++;
+ int escaped = 0;
+ for (; i != n; ++i) {
+ const QChar c = *patternData;
+ if (needsEscaping(c.unicode())) {
+ ++escaped;
+ ++quotedData;
+ }
+ *quotedData = c;
+ ++quotedData;
+ ++patternData;
+ }
+ quoted.resize(n + escaped);
+ verify(quoted, expected);
+ // "return quoted"
+ }
+}
+
+
+void tst_qregexp::simpleFind1()
+{
+ int roff;
+ QRegExp rx("happy");
+ rx.setPatternSyntax(QRegExp::RegExp);
+ QBENCHMARK{
+ roff = rx.indexIn(str1);
+ }
+ QCOMPARE(roff, 11);
+}
+
+void tst_qregexp::rangeReplace1()
+{
+ QString r;
+ QRegExp rx("[a-f]");
+ rx.setPatternSyntax(QRegExp::RegExp);
+ QBENCHMARK{
+ r = QString(str1).replace(rx, "-");
+ }
+ QCOMPARE(r, QString("W- -r- -ll h-ppy monk-ys"));
+}
+
+void tst_qregexp::matchReplace1()
+{
+ QString r;
+ QRegExp rx("[^a-f]*([a-f]+)[^a-f]*");
+ rx.setPatternSyntax(QRegExp::RegExp);
+ QBENCHMARK{
+ r = QString(str1).replace(rx, "\\1");
+ }
+ QCOMPARE(r, QString("eaeaae"));
+}
+
+void tst_qregexp::horribleWrongReplace1()
+{
+ QString r;
+ QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*");
+ rx.setPatternSyntax(QRegExp::RegExp);
+ QBENCHMARK{
+ r = QString(str2).replace(rx, "\\1.\\2.\\3");
+ }
+ QCOMPARE(r, str2);
+}
+
+void tst_qregexp::horribleReplace1()
+{
+ QString r;
+ QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*");
+ rx.setPatternSyntax(QRegExp::RegExp);
+ QBENCHMARK{
+ r = QString(str2).replace(rx, "\\1.\\2.\\3");
+ }
+ QCOMPARE(r, QString("1.2.3"));
+}
+
+
+void tst_qregexp::simpleFind2()
+{
+ int roff;
+ QRegExp rx("happy");
+ rx.setPatternSyntax(QRegExp::RegExp2);
+ QBENCHMARK{
+ roff = rx.indexIn(str1);
+ }
+ QCOMPARE(roff, 11);
+}
+
+void tst_qregexp::rangeReplace2()
+{
+ QString r;
+ QRegExp rx("[a-f]");
+ rx.setPatternSyntax(QRegExp::RegExp2);
+ QBENCHMARK{
+ r = QString(str1).replace(rx, "-");
+ }
+ QCOMPARE(r, QString("W- -r- -ll h-ppy monk-ys"));
+}
+
+void tst_qregexp::matchReplace2()
+{
+ QString r;
+ QRegExp rx("[^a-f]*([a-f]+)[^a-f]*");
+ rx.setPatternSyntax(QRegExp::RegExp2);
+ QBENCHMARK{
+ r = QString(str1).replace(rx, "\\1");
+ }
+ QCOMPARE(r, QString("eaeaae"));
+}
+
+void tst_qregexp::horribleWrongReplace2()
+{
+ QString r;
+ QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*");
+ rx.setPatternSyntax(QRegExp::RegExp2);
+ QBENCHMARK{
+ r = QString(str2).replace(rx, "\\1.\\2.\\3");
+ }
+ QCOMPARE(r, str2);
+}
+
+void tst_qregexp::horribleReplace2()
+{
+ QString r;
+ QRegExp rx(".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*");
+ rx.setPatternSyntax(QRegExp::RegExp2);
+ QBENCHMARK{
+ r = QString(str2).replace(rx, "\\1.\\2.\\3");
+ }
+ QCOMPARE(r, QString("1.2.3"));
+}
+
+
+void tst_qregexp::simpleFindJSC()
+{
+ int numr;
+ const char * errmsg=" ";
+ QString rxs("happy");
+ JSRegExp *rx = jsRegExpCompile(rxs.utf16(), rxs.length(), JSRegExpDoNotIgnoreCase, JSRegExpSingleLine, 0, &errmsg);
+ QVERIFY(rx != 0);
+ QString s(str1);
+ int offsetVector[3];
+ QBENCHMARK{
+ numr = jsRegExpExecute(rx, s.utf16(), s.length(), 0, offsetVector, 3);
+ }
+ jsRegExpFree(rx);
+ QCOMPARE(numr, 1);
+ QCOMPARE(offsetVector[0], 11);
+}
+
+void tst_qregexp::rangeReplaceJSC()
+{
+ QScriptValue r;
+ QScriptEngine engine;
+ engine.globalObject().setProperty("s", str1);
+ QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/[a-f]/g, '-') } )");
+ QVERIFY(replaceFunc.isFunction());
+ QBENCHMARK{
+ r = replaceFunc.call(QScriptValue());
+ }
+ QCOMPARE(r.toString(), QString("W- -r- -ll h-ppy monk-ys"));
+}
+
+void tst_qregexp::matchReplaceJSC()
+{
+ QScriptValue r;
+ QScriptEngine engine;
+ engine.globalObject().setProperty("s", str1);
+ QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/[^a-f]*([a-f]+)[^a-f]*/g, '$1') } )");
+ QVERIFY(replaceFunc.isFunction());
+ QBENCHMARK{
+ r = replaceFunc.call(QScriptValue());
+ }
+ QCOMPARE(r.toString(), QString("eaeaae"));
+}
+
+void tst_qregexp::horribleWrongReplaceJSC()
+{
+ QScriptValue r;
+ QScriptEngine engine;
+ engine.globalObject().setProperty("s", str2);
+ QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/.*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*/gm, '$1.$2.$3') } )");
+ QVERIFY(replaceFunc.isFunction());
+ QBENCHMARK{
+ r = replaceFunc.call(QScriptValue());
+ }
+ QCOMPARE(r.toString(), str2);
+}
+
+void tst_qregexp::horribleReplaceJSC()
+{
+ QScriptValue r;
+ QScriptEngine engine;
+ // the m flag doesnt actually work here; dunno
+ engine.globalObject().setProperty("s", str2.replace('\n', ' '));
+ QScriptValue replaceFunc = engine.evaluate("(function() { return s.replace(/.*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*/gm, '$1.$2.$3') } )");
+ QVERIFY(replaceFunc.isFunction());
+ QBENCHMARK{
+ r = replaceFunc.call(QScriptValue());
+ }
+ QCOMPARE(r.toString(), QString("1.2.3"));
+}
+
+
+#ifdef HAVE_BOOST
+void tst_qregexp::simpleFindBoost(){
+ int roff;
+ boost::regex rx ("happy", boost::regex_constants::perl);
+ std::string s = str1.toStdString();
+ std::string::const_iterator start, end;
+ start = s.begin();
+ end = s.end();
+ boost::match_flag_type flags = boost::match_default;
+ QBENCHMARK{
+ boost::match_results<std::string::const_iterator> what;
+ regex_search(start, end, what, rx, flags);
+ roff = (what[0].first)-start;
+ }
+ QCOMPARE(roff, 11);
+}
+
+void tst_qregexp::rangeReplaceBoost()
+{
+ boost::regex pattern ("[a-f]", boost::regex_constants::perl);
+ std::string s = str1.toStdString();
+ std::string r;
+ QBENCHMARK{
+ r = boost::regex_replace (s, pattern, "-");
+ }
+ QCOMPARE(r, std::string("W- -r- -ll h-ppy monk-ys"));
+}
+
+void tst_qregexp::matchReplaceBoost()
+{
+ boost::regex pattern ("[^a-f]*([a-f]+)[^a-f]*",boost::regex_constants::perl);
+ std::string s = str1.toStdString();
+ std::string r;
+ QBENCHMARK{
+ r = boost::regex_replace (s, pattern, "$1");
+ }
+ QCOMPARE(r, std::string("eaeaae"));
+}
+
+void tst_qregexp::horribleWrongReplaceBoost()
+{
+ boost::regex pattern (".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+)\".*", boost::regex_constants::perl);
+ std::string s = str2.toStdString();
+ std::string r;
+ QBENCHMARK{
+ r = boost::regex_replace (s, pattern, "$1.$2.$3");
+ }
+ QCOMPARE(r, s);
+}
+
+void tst_qregexp::horribleReplaceBoost()
+{
+ boost::regex pattern (".*#""define ZLIB_VERSION \"([0-9]+)\\.([0-9]+)\\.([0-9]+).*", boost::regex_constants::perl);
+ std::string s = str2.toStdString();
+ std::string r;
+ QBENCHMARK{
+ r = boost::regex_replace (s, pattern, "$1.$2.$3");
+ }
+ QCOMPARE(r, std::string("1.2.3"));
+}
+#endif //HAVE_BOOST
+
+QTEST_MAIN(tst_qregexp)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qregexp/qregexp.pro b/tests/benchmarks/corelib/tools/qregexp/qregexp.pro
new file mode 100644
index 0000000000..ffdad12cef
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qregexp/qregexp.pro
@@ -0,0 +1,21 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qregexp
+DEPENDPATH += .
+INCLUDEPATH += .
+RESOURCES+=qregexp.qrc
+QT -= gui
+QT += script
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
+
+include( $${QT_SOURCE_TREE}/src/3rdparty/webkit/JavaScriptCore/JavaScriptCore.pri )
+
+exists( /usr/include/boost/regex.hpp ){
+DEFINES+=HAVE_BOOST
+LIBS+=-lboost_regex
+}
+
diff --git a/tests/benchmarks/corelib/tools/qregexp/qregexp.qrc b/tests/benchmarks/corelib/tools/qregexp/qregexp.qrc
new file mode 100644
index 0000000000..a7fe13c035
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qregexp/qregexp.qrc
@@ -0,0 +1,6 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+ <file>main.cpp</file>
+</qresource>
+</RCC>
+
diff --git a/tests/benchmarks/corelib/tools/qstring/data.cpp b/tests/benchmarks/corelib/tools/qstring/data.cpp
new file mode 100644
index 0000000000..d44a796e52
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/data.cpp
@@ -0,0 +1,1281 @@
+// This is a generated file - DO NOT EDIT
+
+#include "data.h"
+
+const ushort stringCollectionData[] __attribute__((aligned(16))) = {
+ // #0
+ 65535,
+ 99, 111, 109, 112, 105, 108, 101, 114, 32, 118, 101, 114, 115, 105, 111, 110, 115, 47,
+ 65535,65534,65533,65532,65531, // 24
+ 65535,65534,65533,65532,65531,
+ 99, 111, 109, 112, 105, 108, 101, 114, 32, 118, 101, 114, 115, 105, 111, 110, 115, 47,
+ 65535, // 48
+
+ // #1
+ 65535,65534,65533,65532,65531,
+ 99, 111, 109, 112, 105, 108, 101, 114, 32, 118, 101, 114, 115, 105, 111, 110, 115, 47,
+ 65535, // 72
+ 65535,65534,65533,65532,65531,
+ 67, 111, 109, 112, 105, 108, 101, 114, 32, 86, 101, 114, 115, 105, 111, 110, 115, 47,
+ 65535, // 96
+
+ // #2
+ 65535,
+ 99, 111, 109, 112, 105, 108, 101, 114, 32, 116, 105, 109, 101, 115, 116, 97, 109, 112, 115, 47,
+ 65535,65534,65533, // 120
+ 65535,65534,65533,65532,65531,
+ 99, 111, 109, 112, 105, 108, 101, 114, 32, 116, 105, 109, 101, 115, 116, 97, 109, 112, 115, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 152
+
+ // #3
+ 65535,65534,65533,65532,65531,
+ 99, 111, 109, 112, 105, 108, 101, 114, 32, 116, 105, 109, 101, 115, 116, 97, 109, 112, 115, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 184
+ 65535,
+ 67, 111, 109, 112, 105, 108, 101, 114, 32, 84, 105, 109, 101, 115, 116, 97, 109, 112, 115, 47,
+ 65535,65534,65533, // 208
+
+ // #4
+ 65535,65534,65533,65532,65531,65530,65529,65528,65527,65526,65525,65524,65523,65522,65521,65520,65519,
+ 47, 118, 97, 114, 47, 116, 109, 112, 47, 116, 101, 97, 109, 98, 117, 105, 108, 100, 101, 114, 45, 116, 109, 97, 99, 105, 101, 105, 114, 47, 99, 108, 105, 101, 110, 116, 47, 99, 111, 109, 112, 105, 108, 101, 114, 115, 46, 99, 111, 110, 102,
+ 65535,65534,65533,65532, // 280+
+
+
+ // #5
+ 65535,65534,65533,65532,65531,65530,65529,65528,65527,65526,65525,65524,65523,
+ 47, 118, 97, 114, 47, 116, 109, 112, 47, 116, 101, 97, 109, 98, 117, 105, 108, 100, 101, 114, 45, 116, 109, 97, 99, 105, 101, 105, 114, 47, 99, 108, 105, 101, 110, 116, 47, 99, 111, 109, 112, 105, 108, 101, 114, 115, 46, 99, 111, 110, 102,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 352+
+ 65535,
+ 47, 118, 97, 114, 47, 116, 109, 112, 47, 116, 101, 97, 109, 98, 117, 105, 108, 100, 101, 114, 45, 116, 109, 97, 99, 105, 101, 105, 114, 47, 99, 108, 105, 101, 110, 116, 47, 99, 111, 109, 112, 105, 108, 101, 114, 115, 46, 99, 111, 110, 102,
+ 65535,65534,65533,65532, // 408+
+
+ // #6
+ 65535,65534,65533,65532,65531,65530,65529,65528,65527,
+ 47, 118, 97, 114, 47, 116, 109, 112, 47, 116, 101, 97, 109, 98, 117, 105, 108, 100, 101, 114, 45, 116, 109, 97, 99, 105, 101, 105, 114, 47, 99, 108, 105, 101, 110, 116, 47, 99, 111, 109, 112, 105, 108, 101, 114, 115, 46, 99, 111, 110, 102,
+ 65535,65534,65533,65532, // 472+
+
+
+ // #7
+ 65535,
+ 97, 114, 99, 104, 105, 118, 101, 100, 32, 99, 111, 109, 112, 105, 108, 101, 114, 115, 47,
+ 65535,65534,65533,65532, // 496
+ 65535,65534,65533,65532,65531,
+ 97, 114, 99, 104, 105, 118, 101, 100, 32, 99, 111, 109, 112, 105, 108, 101, 114, 115, 47,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 528
+
+ // #8
+ 65535,65534,65533,65532,65531,
+ 97, 114, 99, 104, 105, 118, 101, 100, 32, 99, 111, 109, 112, 105, 108, 101, 114, 115, 47,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 560
+ 65535,65534,65533,65532,65531,
+ 65, 114, 99, 104, 105, 118, 101, 100, 32, 67, 111, 109, 112, 105, 108, 101, 114, 115, 47,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 592
+
+ // #9
+ 65535,65534,65533,65532,65531,65530,65529,65528,65527,65526,65525,65524,65523,65522,65521,65520,65519,
+ 47, 118, 97, 114, 47, 116, 109, 112, 47, 116, 101, 97, 109, 98, 117, 105, 108, 100, 101, 114, 45, 116, 109, 97, 99, 105, 101, 105, 114, 47, 99, 108, 105, 101, 110, 116, 47, 99, 111, 109, 112, 105, 108, 101, 114, 115, 46, 99, 111, 110, 102,
+ 65535,65534,65533,65532, // 664+
+ 65535,65534,65533,65532,65531,65530,65529,65528,65527,65526,65525,65524,65523,
+ 47, 118, 97, 114, 47, 116, 109, 112, 47, 116, 101, 97, 109, 98, 117, 105, 108, 100, 101, 114, 45, 116, 109, 97, 99, 105, 101, 105, 114, 47, 99, 108, 105, 101, 110, 116, 47, 99, 111, 109, 112, 105, 108, 101, 114, 115, 46, 99, 111, 110, 102,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 736+
+
+ // #10
+ 65535,65534,65533,65532,65531,
+ 76, 105, 110, 117, 120,
+ 65535,65534,65533,65532,65531,65530, // 752
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 760
+
+ // #11
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 776
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 792
+
+ // #12
+ 65535,
+ 105, 99, 99,
+ 65535,65534,65533,65532, // 800
+ 65535,65534,65533,65532,65531,
+ 103, 43, 43,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 816
+
+ // #13
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 824
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 832
+
+ // #14
+ 65535,
+ 105, 51, 56, 54,
+ 65535,65534,65533, // 840
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 856
+
+ // #15
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 864
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 872
+
+ // #16
+ 65535,
+ 105, 51, 56, 54,
+ 65535,65534,65533, // 880
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 896
+
+ // #17
+ 65535,
+ 103, 99, 99,
+ 65535,65534,65533,65532, // 904
+ 65535,65534,65533,65532,65531,
+ 103, 43, 43,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 920
+
+ // #18
+ 65535,65534,65533,65532,65531,
+ 76, 105, 110, 117, 120,
+ 65535,65534,65533,65532,65531,65530, // 936
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 944
+
+ // #19
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 960
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 976
+
+ // #20
+ 65535,
+ 103, 43, 43,
+ 65535,65534,65533,65532, // 984
+ 65535,65534,65533,65532,65531,
+ 103, 43, 43,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 1000
+
+ // #21
+ 65535,65534,65533,65532,65531,
+ 52, 46, 52, 46, 51,
+ 65535,65534,65533,65532,65531,65530, // 1016
+ 65535,65534,65533,65532,65531,
+ 52, 46, 52, 46, 51,
+ 65535,65534,65533,65532,65531,65530, // 1032
+
+ // #22
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1040
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1048
+
+ // #23
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1064
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1080
+
+ // #24
+ 65535,
+ 47, 117, 115, 114, 47, 98, 105, 110, 47, 103, 43, 43,
+ 65535,65534,65533, // 1096
+ 65535,
+ 47, 117, 115, 114, 47, 98, 105, 110, 47, 103, 43, 43,
+ 65535,65534,65533, // 1112
+
+ // #25
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1120
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1128
+
+ // #26
+ 65535,
+ 105, 51, 56, 54,
+ 65535,65534,65533, // 1136
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1152
+
+ // #27
+ 65535,
+ 105, 99, 99,
+ 65535,65534,65533,65532, // 1160
+ 65535,65534,65533,65532,65531,
+ 103, 43, 43,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 1176
+
+ // #28
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1184
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1192
+
+ // #29
+ 65535,
+ 105, 51, 56, 54,
+ 65535,65534,65533, // 1200
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1216
+
+ // #30
+ 65535,65534,65533,65532,65531,
+ 76, 105, 110, 117, 120,
+ 65535,65534,65533,65532,65531,65530, // 1232
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1240
+
+ // #31
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1256
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1272
+
+ // #32
+ 65535,65534,65533,65532,65531,
+ 76, 105, 110, 117, 120,
+ 65535,65534,65533,65532,65531,65530, // 1288
+ 65535,
+ 76, 105, 110, 117, 120,
+ 65535,65534, // 1296
+
+ // #33
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1312
+ 65535,65534,65533,65532,65531,
+ 105, 51, 56, 54,
+ 65535,65534,65533,65532,65531,65530,65529, // 1328
+
+ // #34
+ 65535,
+ 45, 109, 97, 114, 99, 104, 61, 99, 111, 114, 101, 50,
+ 65535,65534,65533, // 1344
+ 65535,
+ 116, 98, 51, 54, 57, 54, 56, 95, 50, 46, 105, 105,
+ 65535,65534,65533, // 1360
+
+ // #35
+ 65535,65534,65533,65532,65531,
+ 45, 102, 108, 111, 111, 112, 45, 98, 108, 111, 99, 107,
+ 65535,65534,65533,65532,65531,65530,65529, // 1384
+ 65535,
+ 116, 98, 51, 54, 57, 54, 56, 95, 50, 46, 105, 105,
+ 65535,65534,65533, // 1400
+
+ // #36
+ 65535,65534,65533,65532,65531,
+ 116, 98, 51, 54, 57, 54, 56, 95, 50, 46, 105, 105,
+ 65535,65534,65533,65532,65531,65530,65529, // 1424
+ 65535,
+ 116, 98, 51, 54, 57, 54, 56, 95, 50, 46, 105, 105,
+ 65535,65534,65533, // 1440
+
+ // #37
+ 65535,65534,65533,65532,65531,
+ 45, 109, 115, 115, 101, 52,
+ 65535,65534,65533,65532,65531, // 1456
+ 65535,65534,65533,65532,65531,
+ 108, 101, 110, 103, 116, 104,
+ 65535,65534,65533,65532,65531, // 1472
+
+ // #38
+ 65535,65534,65533,65532,65531,
+ 116, 98, 51, 54, 57, 54, 56, 95, 49, 46, 111,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 1496
+ 65535,65534,65533,65532,65531,
+ 116, 98, 51, 54, 57, 54, 56, 95, 49, 46, 111,
+ 65535,65534,65533,65532,65531,65530,65529,65528, // 1520
+
+ // #39
+ 65535,65534,65533,65532,65531,
+ 68, 69, 83, 75, 84, 79, 80, 95, 83, 69, 83, 83,
+ 65535,65534,65533,65532,65531,65530,65529, // 1544
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1560
+
+ // #40
+ 65535,65534,65533,65532,65531,
+ 76, 67, 95, 83, 79, 85, 82, 67, 69, 68, 61, 49,
+ 65535,65534,65533,65532,65531,65530,65529, // 1584
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1600
+
+ // #41
+ 65535,65534,65533,65532,65531,
+ 81, 84, 68, 73, 82, 61, 47, 104, 111, 109, 101, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 1624
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1640
+
+ // #42
+ 65535,
+ 76, 67, 95, 67, 84, 89, 80, 69, 61, 112, 116, 95,
+ 65535,65534,65533, // 1656
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1672
+
+ // #43
+ 65535,
+ 71, 84, 75, 95, 82, 67, 95, 70, 73, 76, 69, 83,
+ 65535,65534,65533, // 1688
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1704
+
+ // #44
+ 65535,
+ 88, 77, 79, 68, 73, 70, 73, 69, 82, 83, 61, 64,
+ 65535,65534,65533, // 1720
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1736
+
+ // #45
+ 65535,
+ 83, 72, 69, 76, 76, 61, 47, 98, 105, 110, 47, 122,
+ 65535,65534,65533, // 1752
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1768
+
+ // #46
+ 65535,65534,65533,65532,65531,
+ 85, 61, 64, 123, 117, 112, 115, 116, 114, 101, 97, 109,
+ 65535,65534,65533,65532,65531,65530,65529, // 1792
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1808
+
+ // #47
+ 65535,
+ 95, 61, 47, 117, 115, 114, 47, 98, 105, 110, 47, 105,
+ 65535,65534,65533, // 1824
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1840
+
+ // #48
+ 65535,
+ 88, 68, 71, 95, 67, 79, 78, 70, 73, 71, 95, 68,
+ 65535,65534,65533, // 1856
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1872
+
+ // #49
+ 65535,65534,65533,65532,65531,
+ 83, 65, 86, 69, 72, 73, 83, 84, 61, 49, 48, 48,
+ 65535,65534,65533,65532,65531,65530,65529, // 1896
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1912
+
+ // #50
+ 65535,
+ 75, 68, 69, 95, 77, 85, 76, 84, 73, 72, 69, 65,
+ 65535,65534,65533, // 1928
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1944
+
+ // #51
+ 65535,65534,65533,65532,65531,
+ 77, 65, 76, 76, 79, 67, 95, 67, 72, 69, 67, 75,
+ 65535,65534,65533,65532,65531,65530,65529, // 1968
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 1984
+
+ // #52
+ 65535,65534,65533,65532,65531,
+ 72, 73, 83, 84, 67, 79, 78, 84, 82, 79, 76, 61,
+ 65535,65534,65533,65532,65531,65530,65529, // 2008
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2024
+
+ // #53
+ 65535,65534,65533,65532,65531,
+ 88, 68, 71, 95, 68, 65, 84, 65, 95, 68, 73, 82,
+ 65535,65534,65533,65532,65531,65530,65529, // 2048
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2064
+
+ // #54
+ 65535,65534,65533,65532,65531,
+ 88, 68, 77, 95, 77, 65, 78, 65, 71, 69, 68, 61,
+ 65535,65534,65533,65532,65531,65530,65529, // 2088
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2104
+
+ // #55
+ 65535,
+ 76, 67, 95, 67, 79, 76, 76, 65, 84, 69, 61, 112,
+ 65535,65534,65533, // 2120
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2136
+
+ // #56
+ 65535,
+ 81, 84, 95, 80, 76, 85, 71, 73, 78, 95, 80, 65,
+ 65535,65534,65533, // 2152
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2168
+
+ // #57
+ 65535,
+ 83, 67, 82, 69, 69, 78, 68, 73, 82, 61, 47, 104,
+ 65535,65534,65533, // 2184
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2200
+
+ // #58
+ 65535,65534,65533,65532,65531,
+ 76, 69, 83, 83, 79, 80, 69, 78, 61, 124, 47, 117,
+ 65535,65534,65533,65532,65531,65530,65529, // 2224
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2240
+
+ // #59
+ 65535,
+ 76, 67, 95, 78, 65, 77, 69, 61, 110, 98, 95, 78,
+ 65535,65534,65533, // 2256
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2272
+
+ // #60
+ 65535,65534,65533,65532,65531,
+ 80, 52, 67, 76, 73, 69, 78, 84, 61, 116, 109, 97,
+ 65535,65534,65533,65532,65531,65530,65529, // 2296
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2312
+
+ // #61
+ 65535,
+ 80, 65, 84, 72, 61, 47, 104, 111, 109, 101, 47, 116,
+ 65535,65534,65533, // 2328
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2344
+
+ // #62
+ 65535,65534,65533,65532,65531,
+ 71, 80, 71, 95, 65, 71, 69, 78, 84, 95, 73, 78,
+ 65535,65534,65533,65532,65531,65530,65529, // 2368
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2384
+
+ // #63
+ 65535,65534,65533,65532,65531,
+ 88, 67, 85, 82, 83, 79, 82, 95, 84, 72, 69, 77,
+ 65535,65534,65533,65532,65531,65530,65529, // 2408
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2424
+
+ // #64
+ 65535,65534,65533,65532,65531,
+ 83, 69, 83, 83, 73, 79, 78, 95, 77, 65, 78, 65,
+ 65535,65534,65533,65532,65531,65530,65529, // 2448
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2464
+
+ // #65
+ 65535,
+ 81, 84, 83, 82, 67, 68, 73, 82, 61, 47, 104, 111,
+ 65535,65534,65533, // 2480
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2496
+
+ // #66
+ 65535,65534,65533,65532,65531,
+ 87, 73, 78, 68, 79, 87, 73, 68, 61, 52, 54, 49,
+ 65535,65534,65533,65532,65531,65530,65529, // 2520
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2536
+
+ // #67
+ 65535,65534,65533,65532,65531,
+ 76, 67, 95, 77, 69, 83, 83, 65, 71, 69, 83, 61,
+ 65535,65534,65533,65532,65531,65530,65529, // 2560
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2576
+
+ // #68
+ 65535,
+ 76, 67, 95, 78, 85, 77, 69, 82, 73, 67, 61, 110,
+ 65535,65534,65533, // 2592
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2608
+
+ // #69
+ 65535,
+ 71, 84, 75, 50, 95, 82, 67, 95, 70, 73, 76, 69,
+ 65535,65534,65533, // 2624
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2640
+
+ // #70
+ 65535,
+ 80, 82, 79, 70, 73, 76, 69, 72, 79, 77, 69, 61,
+ 65535,65534,65533, // 2656
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2672
+
+ // #71
+ 65535,65534,65533,65532,65531,
+ 68, 77, 95, 67, 79, 78, 84, 82, 79, 76, 61, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 2696
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2712
+
+ // #72
+ 65535,
+ 76, 83, 95, 67, 79, 76, 79, 82, 83, 61, 114, 115,
+ 65535,65534,65533, // 2728
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2744
+
+ // #73
+ 65535,65534,65533,65532,65531,
+ 83, 83, 72, 95, 65, 85, 84, 72, 95, 83, 79, 67,
+ 65535,65534,65533,65532,65531,65530,65529, // 2768
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2784
+
+ // #74
+ 65535,65534,65533,65532,65531,
+ 75, 68, 69, 68, 73, 82, 83, 61, 47, 104, 111, 109,
+ 65535,65534,65533,65532,65531,65530,65529, // 2808
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2824
+
+ // #75
+ 65535,65534,65533,65532,65531,
+ 76, 68, 95, 80, 82, 69, 76, 79, 65, 68, 61, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 2848
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2864
+
+ // #76
+ 65535,65534,65533,65532,65531,
+ 88, 67, 85, 82, 83, 79, 82, 95, 80, 65, 84, 72,
+ 65535,65534,65533,65532,65531,65530,65529, // 2888
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2904
+
+ // #77
+ 65535,
+ 115, 114, 99, 100, 105, 114, 61, 47, 104, 111, 109, 101,
+ 65535,65534,65533, // 2920
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2936
+
+ // #78
+ 65535,65534,65533,65532,65531,
+ 72, 79, 77, 69, 61, 47, 104, 111, 109, 101, 47, 116,
+ 65535,65534,65533,65532,65531,65530,65529, // 2960
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 2976
+
+ // #79
+ 65535,
+ 81, 84, 52, 68, 79, 67, 68, 73, 82, 61, 47, 117,
+ 65535,65534,65533, // 2992
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3008
+
+ // #80
+ 65535,65534,65533,65532,65531,
+ 80, 87, 68, 61, 47, 104, 111, 109, 101, 47, 116, 109,
+ 65535,65534,65533,65532,65531,65530,65529, // 3032
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3048
+
+ // #81
+ 65535,65534,65533,65532,65531,
+ 75, 68, 69, 95, 83, 69, 83, 83, 73, 79, 78, 95,
+ 65535,65534,65533,65532,65531,65530,65529, // 3072
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3088
+
+ // #82
+ 65535,
+ 73, 78, 83, 73, 68, 69, 95, 83, 80, 69, 67, 73,
+ 65535,65534,65533, // 3104
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3120
+
+ // #83
+ 65535,
+ 83, 83, 72, 95, 65, 71, 69, 78, 84, 95, 80, 73,
+ 65535,65534,65533, // 3136
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3152
+
+ // #84
+ 65535,
+ 80, 75, 71, 95, 67, 79, 78, 70, 73, 71, 95, 80,
+ 65535,65534,65533, // 3168
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3184
+
+ // #85
+ 65535,65534,65533,65532,65531,
+ 68, 66, 85, 83, 95, 83, 69, 83, 83, 73, 79, 78,
+ 65535,65534,65533,65532,65531,65530,65529, // 3208
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3224
+
+ // #86
+ 65535,
+ 76, 68, 95, 76, 73, 66, 82, 65, 82, 89, 95, 80,
+ 65535,65534,65533, // 3240
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3256
+
+ // #87
+ 65535,65534,65533,65532,65531,
+ 80, 52, 85, 83, 69, 82, 61, 116, 106, 109, 97, 99,
+ 65535,65534,65533,65532,65531,65530,65529, // 3280
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3296
+
+ // #88
+ 65535,65534,65533,65532,65531,
+ 81, 84, 69, 83, 84, 95, 67, 79, 76, 79, 82, 69,
+ 65535,65534,65533,65532,65531,65530,65529, // 3320
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3336
+
+ // #89
+ 65535,65534,65533,65532,65531,
+ 88, 68, 71, 95, 83, 69, 83, 83, 73, 79, 78, 95,
+ 65535,65534,65533,65532,65531,65530,65529, // 3360
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3376
+
+ // #90
+ 65535,65534,65533,65532,65531,
+ 76, 69, 83, 83, 75, 69, 89, 61, 47, 101, 116, 99,
+ 65535,65534,65533,65532,65531,65530,65529, // 3400
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3416
+
+ // #91
+ 65535,
+ 76, 79, 71, 78, 65, 77, 69, 61, 116, 109, 97, 99,
+ 65535,65534,65533, // 3432
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3448
+
+ // #92
+ 65535,
+ 71, 95, 70, 73, 76, 69, 78, 65, 77, 69, 95, 69,
+ 65535,65534,65533, // 3464
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3480
+
+ // #93
+ 65535,
+ 75, 68, 69, 95, 70, 85, 76, 76, 95, 83, 69, 83,
+ 65535,65534,65533, // 3496
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3512
+
+ // #94
+ 65535,65534,65533,65532,65531,
+ 72, 79, 83, 84, 78, 65, 77, 69, 61, 108, 111, 116,
+ 65535,65534,65533,65532,65531,65530,65529, // 3536
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3552
+
+ // #95
+ 65535,65534,65533,65532,65531,
+ 76, 67, 95, 84, 73, 77, 69, 61, 112, 116, 95, 66,
+ 65535,65534,65533,65532,65531,65530,65529, // 3576
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3592
+
+ // #96
+ 65535,
+ 83, 83, 72, 95, 65, 83, 75, 80, 65, 83, 83, 61,
+ 65535,65534,65533, // 3608
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3624
+
+ // #97
+ 65535,65534,65533,65532,65531,
+ 72, 73, 83, 84, 70, 73, 76, 69, 61, 47, 104, 111,
+ 65535,65534,65533,65532,65531,65530,65529, // 3648
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3664
+
+ // #98
+ 65535,
+ 75, 79, 78, 83, 79, 76, 69, 95, 68, 66, 85, 83,
+ 65535,65534,65533, // 3680
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3696
+
+ // #99
+ 65535,
+ 77, 65, 75, 69, 61, 47, 117, 115, 114, 47, 98, 105,
+ 65535,65534,65533, // 3712
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3728
+
+ // #100
+ 65535,
+ 67, 65, 78, 66, 69, 82, 82, 65, 95, 68, 82, 73,
+ 65535,65534,65533, // 3744
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3760
+
+ // #101
+ 65535,
+ 71, 67, 79, 78, 70, 95, 84, 77, 80, 68, 73, 82,
+ 65535,65534,65533, // 3776
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3792
+
+ // #102
+ 65535,65534,65533,65532,65531,
+ 85, 83, 69, 82, 61, 116, 109, 97, 99, 105, 101, 105,
+ 65535,65534,65533,65532,65531,65530,65529, // 3816
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3832
+
+ // #103
+ 65535,
+ 111, 98, 106, 100, 105, 114, 61, 47, 104, 111, 109, 101,
+ 65535,65534,65533, // 3848
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3864
+
+ // #104
+ 65535,65534,65533,65532,65531,
+ 76, 67, 95, 77, 79, 78, 69, 84, 65, 82, 89, 61,
+ 65535,65534,65533,65532,65531,65530,65529, // 3888
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3904
+
+ // #105
+ 65535,65534,65533,65532,65531,
+ 81, 84, 76, 73, 66, 61, 47, 117, 115, 114, 47, 108,
+ 65535,65534,65533,65532,65531,65530,65529, // 3928
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3944
+
+ // #106
+ 65535,65534,65533,65532,65531,
+ 76, 67, 95, 84, 69, 76, 69, 80, 72, 79, 78, 69,
+ 65535,65534,65533,65532,65531,65530,65529, // 3968
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 3984
+
+ // #107
+ 65535,
+ 80, 89, 84, 72, 79, 78, 68, 79, 78, 84, 87, 82,
+ 65535,65534,65533, // 4000
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4016
+
+ // #108
+ 65535,65534,65533,65532,65531,
+ 84, 77, 80, 68, 73, 82, 61, 47, 116, 109, 112, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 4040
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4056
+
+ // #109
+ 65535,65534,65533,65532,65531,
+ 65, 82, 77, 76, 77, 68, 95, 76, 73, 67, 69, 78,
+ 65535,65534,65533,65532,65531,65530,65529, // 4080
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4096
+
+ // #110
+ 65535,
+ 80, 89, 84, 72, 79, 78, 80, 65, 84, 72, 61, 47,
+ 65535,65534,65533, // 4112
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4128
+
+ // #111
+ 65535,65534,65533,65532,65531,
+ 77, 65, 75, 69, 70, 76, 65, 71, 83, 61, 119, 32,
+ 65535,65534,65533,65532,65531,65530,65529, // 4152
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4168
+
+ // #112
+ 65535,
+ 77, 70, 76, 65, 71, 83, 61, 45, 119, 32, 45, 45,
+ 65535,65534,65533, // 4184
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4200
+
+ // #113
+ 65535,
+ 77, 65, 73, 76, 61, 47, 118, 97, 114, 47, 115, 112,
+ 65535,65534,65533, // 4216
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4232
+
+ // #114
+ 65535,65534,65533,65532,65531,
+ 83, 72, 69, 76, 76, 95, 83, 69, 83, 83, 73, 79,
+ 65535,65534,65533,65532,65531,65530,65529, // 4256
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4272
+
+ // #115
+ 65535,
+ 75, 68, 69, 68, 73, 82, 61, 47, 104, 111, 109, 101,
+ 65535,65534,65533, // 4288
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4304
+
+ // #116
+ 65535,65534,65533,65532,65531,
+ 76, 69, 83, 83, 67, 72, 65, 82, 83, 69, 84, 61,
+ 65535,65534,65533,65532,65531,65530,65529, // 4328
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4344
+
+ // #117
+ 65535,65534,65533,65532,65531,
+ 76, 67, 95, 80, 65, 80, 69, 82, 61, 110, 98, 95,
+ 65535,65534,65533,65532,65531,65530,65529, // 4368
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4384
+
+ // #118
+ 65535,
+ 66, 82, 79, 87, 83, 69, 82, 61, 47, 117, 115, 114,
+ 65535,65534,65533, // 4400
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4416
+
+ // #119
+ 65535,
+ 77, 69, 84, 65, 95, 67, 76, 65, 83, 83, 61, 100,
+ 65535,65534,65533, // 4432
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4448
+
+ // #120
+ 65535,65534,65533,65532,65531,
+ 77, 68, 86, 95, 77, 69, 78, 85, 95, 83, 84, 89,
+ 65535,65534,65533,65532,65531,65530,65529, // 4472
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4488
+
+ // #121
+ 65535,65534,65533,65532,65531,
+ 67, 79, 76, 79, 82, 70, 71, 66, 71, 61, 49, 53,
+ 65535,65534,65533,65532,65531,65530,65529, // 4512
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4528
+
+ // #122
+ 65535,65534,65533,65532,65531,
+ 80, 89, 84, 72, 79, 78, 83, 84, 65, 82, 84, 85,
+ 65535,65534,65533,65532,65531,65530,65529, // 4552
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4568
+
+ // #123
+ 65535,
+ 76, 67, 95, 77, 69, 65, 83, 85, 82, 69, 77, 69,
+ 65535,65534,65533, // 4584
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4600
+
+ // #124
+ 65535,65534,65533,65532,65531,
+ 69, 68, 73, 84, 79, 82, 61, 47, 117, 115, 114, 47,
+ 65535,65534,65533,65532,65531,65530,65529, // 4624
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4640
+
+ // #125
+ 65535,65534,65533,65532,65531,
+ 69, 78, 95, 84, 66, 61, 109, 111, 99, 58, 117, 105,
+ 65535,65534,65533,65532,65531,65530,65529, // 4664
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4680
+
+ // #126
+ 65535,
+ 72, 73, 83, 84, 83, 73, 90, 69, 61, 49, 48, 48,
+ 65535,65534,65533, // 4696
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4712
+
+ // #127
+ 65535,65534,65533,65532,65531,
+ 71, 83, 95, 76, 73, 66, 61, 47, 104, 111, 109, 101,
+ 65535,65534,65533,65532,65531,65530,65529, // 4736
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4752
+
+ // #128
+ 65535,65534,65533,65532,65531,
+ 78, 76, 83, 80, 65, 84, 72, 61, 47, 117, 115, 114,
+ 65535,65534,65533,65532,65531,65530,65529, // 4776
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4792
+
+ // #129
+ 65535,65534,65533,65532,65531,
+ 87, 73, 78, 68, 79, 87, 80, 65, 84, 72, 61, 55,
+ 65535,65534,65533,65532,65531,65530,65529, // 4816
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4832
+
+ // #130
+ 65535,65534,65533,65532,65531,
+ 75, 79, 78, 83, 79, 76, 69, 95, 68, 66, 85, 83,
+ 65535,65534,65533,65532,65531,65530,65529, // 4856
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4872
+
+ // #131
+ 65535,
+ 76, 67, 95, 73, 68, 69, 78, 84, 73, 70, 73, 67,
+ 65535,65534,65533, // 4888
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4904
+
+ // #132
+ 65535,
+ 73, 78, 80, 85, 84, 82, 67, 61, 47, 101, 116, 99,
+ 65535,65534,65533, // 4920
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4936
+
+ // #133
+ 65535,65534,65533,65532,65531,
+ 81, 84, 73, 78, 67, 61, 47, 117, 115, 114, 47, 108,
+ 65535,65534,65533,65532,65531,65530,65529, // 4960
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 4976
+
+ // #134
+ 65535,
+ 76, 67, 95, 65, 68, 68, 82, 69, 83, 83, 61, 110,
+ 65535,65534,65533, // 4992
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5008
+
+ // #135
+ 65535,65534,65533,65532,65531,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 95,
+ 65535,65534,65533,65532,65531,65530,65529, // 5032
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5048
+
+ // #136
+ 65535,
+ 76, 65, 78, 71, 61, 112, 116, 95, 66, 82, 46, 85,
+ 65535,65534,65533, // 5064
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5080
+
+ // #137
+ 65535,
+ 80, 52, 80, 79, 82, 84, 61, 112, 52, 46, 116, 114,
+ 65535,65534,65533, // 5096
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5112
+
+ // #138
+ 65535,65534,65533,65532,65531,
+ 80, 73, 76, 79, 84, 80, 79, 82, 84, 61, 117, 115,
+ 65535,65534,65533,65532,65531,65530,65529, // 5136
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5152
+
+ // #139
+ 65535,
+ 75, 68, 69, 95, 83, 69, 83, 83, 73, 79, 78, 95,
+ 65535,65534,65533, // 5168
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5184
+
+ // #140
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5200
+ 65535,
+ 84, 69, 65, 77, 66, 85, 73, 76, 68, 69, 82, 61,
+ 65535,65534,65533, // 5216
+};
+
+const struct StringCollection stringCollection[] = {
+ {18, 1, 29, 3666, 106}, // #0
+ {18, 53, 77, 106, 1978}, // #1
+ {20, 97, 125, 2850, 3210}, // #2
+ {20, 157, 185, 3210, 3138}, // #3
+ {51, 225, 225, 3362, 3362}, // #4
+ {51, 293, 353, 1434, 3362}, // #5
+ {51, 417, 417, 3362, 3362}, // #6
+ {19, 473, 501, 2850, 10}, // #7
+ {19, 533, 565, 10, 442}, // #8
+ {51, 609, 677, 3362, 1434}, // #9
+ {5, 741, 753, 2666, 2066}, // #10
+ {4, 765, 781, 2362, 3930}, // #11
+ {3, 793, 805, 3330, 2138}, // #12
+ {5, 817, 825, 738, 2066}, // #13
+ {4, 833, 845, 434, 3930}, // #14
+ {5, 857, 865, 3842, 2066}, // #15
+ {4, 873, 885, 3538, 3930}, // #16
+ {3, 897, 909, 3330, 2138}, // #17
+ {5, 925, 937, 1898, 2066}, // #18
+ {4, 949, 965, 1594, 3930}, // #19
+ {3, 977, 989, 3330, 2138}, // #20
+ {5, 1005, 1021, 2218, 762}, // #21
+ {5, 1033, 1041, 3346, 2066}, // #22
+ {4, 1053, 1069, 3082, 3930}, // #23
+ {12, 1081, 1097, 2082, 962}, // #24
+ {5, 1113, 1121, 3362, 2066}, // #25
+ {4, 1129, 1141, 322, 3930}, // #26
+ {3, 1153, 1165, 2050, 2138}, // #27
+ {5, 1177, 1185, 1538, 2066}, // #28
+ {4, 1193, 1205, 1234, 3930}, // #29
+ {5, 1221, 1233, 554, 2066}, // #30
+ {4, 1245, 1261, 250, 3930}, // #31
+ {5, 1277, 1289, 2858, 2066}, // #32
+ {4, 1301, 1317, 2554, 3930}, // #33
+ {12, 1329, 1345, 2194, 1762}, // #34
+ {12, 1365, 1385, 2170, 1762}, // #35
+ {12, 1405, 1425, 2314, 1762}, // #36
+ {6, 1445, 1461, 3626, 666}, // #37
+ {11, 1477, 1501, 3882, 842}, // #38
+ {12, 1525, 1545, 1722, 2930}, // #39
+ {12, 1565, 1585, 1914, 2930}, // #40
+ {12, 1605, 1625, 442, 2930}, // #41
+ {12, 1641, 1657, 626, 2930}, // #42
+ {12, 1673, 1689, 946, 2930}, // #43
+ {12, 1705, 1721, 738, 2930}, // #44
+ {12, 1737, 1753, 2066, 2930}, // #45
+ {12, 1773, 1793, 1210, 2930}, // #46
+ {12, 1809, 1825, 1426, 2930}, // #47
+ {12, 1841, 1857, 1650, 2930}, // #48
+ {12, 1877, 1897, 1530, 2930}, // #49
+ {12, 1913, 1929, 1858, 2930}, // #50
+ {12, 1949, 1969, 2106, 2930}, // #51
+ {12, 1989, 2009, 2202, 2930}, // #52
+ {12, 2029, 2049, 2490, 2930}, // #53
+ {12, 2069, 2089, 2794, 2930}, // #54
+ {12, 2105, 2121, 2322, 2930}, // #55
+ {12, 2137, 2153, 2834, 2930}, // #56
+ {12, 2169, 2185, 1266, 2930}, // #57
+ {12, 2205, 2225, 2538, 2930}, // #58
+ {12, 2241, 2257, 2706, 2930}, // #59
+ {12, 2277, 2297, 3402, 2930}, // #60
+ {12, 2313, 2329, 146, 2930}, // #61
+ {12, 2349, 2369, 3690, 2930}, // #62
+ {12, 2389, 2409, 810, 2930}, // #63
+ {12, 2429, 2449, 1178, 2930}, // #64
+ {12, 2465, 2481, 1442, 2930}, // #65
+ {12, 2501, 2521, 3546, 2930}, // #66
+ {12, 2541, 2561, 1930, 2930}, // #67
+ {12, 2577, 2593, 1634, 2930}, // #68
+ {12, 2609, 2625, 1986, 2930}, // #69
+ {12, 2641, 2657, 1970, 2930}, // #70
+ {12, 2677, 2697, 1834, 2930}, // #71
+ {12, 2713, 2729, 1474, 2930}, // #72
+ {12, 2749, 2769, 2250, 2930}, // #73
+ {12, 2789, 2809, 2458, 2930}, // #74
+ {12, 2829, 2849, 2618, 2930}, // #75
+ {12, 2869, 2889, 3066, 2930}, // #76
+ {12, 2905, 2921, 3330, 2930}, // #77
+ {12, 2941, 2961, 1706, 2930}, // #78
+ {12, 2977, 2993, 2802, 2930}, // #79
+ {12, 3013, 3033, 3770, 2930}, // #80
+ {12, 3053, 3073, 3594, 2930}, // #81
+ {12, 3089, 3105, 2, 2930}, // #82
+ {12, 3121, 3137, 2962, 2930}, // #83
+ {12, 3153, 3169, 290, 2930}, // #84
+ {12, 3189, 3209, 794, 2930}, // #85
+ {12, 3225, 3241, 1058, 2930}, // #86
+ {12, 3261, 3281, 2394, 2930}, // #87
+ {12, 3301, 3321, 138, 2930}, // #88
+ {12, 3341, 3361, 1482, 2930}, // #89
+ {12, 3381, 3401, 570, 2930}, // #90
+ {12, 3417, 3433, 674, 2930}, // #91
+ {12, 3449, 3465, 1282, 2930}, // #92
+ {12, 3481, 3497, 1746, 2930}, // #93
+ {12, 3517, 3537, 1866, 2930}, // #94
+ {12, 3557, 3577, 1978, 2930}, // #95
+ {12, 3593, 3609, 3954, 2930}, // #96
+ {12, 3629, 3649, 2570, 2930}, // #97
+ {12, 3665, 3681, 2754, 2930}, // #98
+ {12, 3697, 3713, 3666, 2930}, // #99
+ {12, 3729, 3745, 34, 2930}, // #100
+ {12, 3761, 3777, 2914, 2930}, // #101
+ {12, 3797, 3817, 1194, 2930}, // #102
+ {12, 3833, 3849, 3202, 2930}, // #103
+ {12, 3869, 3889, 3018, 2930}, // #104
+ {12, 3909, 3929, 202, 2930}, // #105
+ {12, 3949, 3969, 3546, 2930}, // #106
+ {12, 3985, 4001, 3682, 2930}, // #107
+ {12, 4021, 4041, 3466, 2930}, // #108
+ {12, 4061, 4081, 4074, 2930}, // #109
+ {12, 4097, 4113, 306, 2930}, // #110
+ {12, 4133, 4153, 634, 2930}, // #111
+ {12, 4169, 4185, 802, 2930}, // #112
+ {12, 4201, 4217, 962, 2930}, // #113
+ {12, 4237, 4257, 1114, 2930}, // #114
+ {12, 4273, 4289, 1250, 2930}, // #115
+ {12, 4309, 4329, 3898, 2930}, // #116
+ {12, 4349, 4369, 1386, 2930}, // #117
+ {12, 4385, 4401, 1586, 2930}, // #118
+ {12, 4417, 4433, 1730, 2930}, // #119
+ {12, 4453, 4473, 1914, 2930}, // #120
+ {12, 4493, 4513, 1498, 2930}, // #121
+ {12, 4533, 4553, 2138, 2930}, // #122
+ {12, 4569, 4585, 2290, 2930}, // #123
+ {12, 4605, 4625, 2426, 2930}, // #124
+ {12, 4645, 4665, 2666, 2930}, // #125
+ {12, 4681, 4697, 2050, 2930}, // #126
+ {12, 4717, 4737, 2874, 2930}, // #127
+ {12, 4757, 4777, 3018, 2930}, // #128
+ {12, 4797, 4817, 1834, 2930}, // #129
+ {12, 4837, 4857, 3178, 2930}, // #130
+ {12, 4873, 4889, 3314, 2930}, // #131
+ {12, 4905, 4921, 2546, 2930}, // #132
+ {12, 4941, 4961, 3546, 2930}, // #133
+ {12, 4977, 4993, 3682, 2930}, // #134
+ {12, 5013, 5033, 3802, 2930}, // #135
+ {12, 5049, 5065, 3922, 2930}, // #136
+ {12, 5081, 5097, 4018, 2930}, // #137
+ {12, 5117, 5137, 42, 2930}, // #138
+ {12, 5153, 5169, 130, 2930}, // #139
+ {12, 5185, 5201, 242, 2930}, // #140
+};
+const int stringCollectionCount = 141;
+const int stringCollectionMaxLen = 51;
+// average comparison length: 12.0922
+// cache-line crosses: 6 (2.1%)
+// alignment histogram:
+// 0xXXX2 = 188 (66.7%) strings, 57 (30.3%) of which same-aligned
+// 0xXXXa = 94 (33.3%) strings, 10 (10.6%) of which same-aligned
+// total = 282 (100%) strings, 67 (23.8%) of which same-aligned
diff --git a/tests/benchmarks/corelib/tools/qstring/data.h b/tests/benchmarks/corelib/tools/qstring/data.h
new file mode 100644
index 0000000000..bd4ff55bd1
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/data.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef DATA_H
+#define DATA_H
+
+#include <qglobal.h>
+
+struct StringCollection
+{
+ int len;
+ int offset1, offset2;
+ ushort align1, align2;
+};
+
+extern const ushort stringCollectionData[];
+extern const StringCollection stringCollection[];
+extern const int stringCollectionCount;
+
+struct StringData
+{
+ const int *entries;
+ union {
+ const char *charData;
+ const ushort *ushortData;
+ };
+
+ int entryCount;
+ int maxLength;
+};
+
+#endif // DATA_H
diff --git a/tests/benchmarks/corelib/tools/qstring/fromlatin1.cpp b/tests/benchmarks/corelib/tools/qstring/fromlatin1.cpp
new file mode 100644
index 0000000000..9a44b26505
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/fromlatin1.cpp
@@ -0,0 +1,43065 @@
+// This is a generated file - DO NOT EDIT
+
+#include "data.h"
+
+static const char charData[] __attribute__((aligned(64))) = {
+ // #0
+ "\377\376\375\374\373\372\371\370\367\366"
+ "org.kde.StatusNotifierWatcher"
+ "\377\376\375\374\373\372\371\370\367" // 48+
+
+ // #1
+ "\377"
+ "|/|"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 64
+
+ // #2
+ "\377\376\375\374\373"
+ "$["
+ "\377\376\375\374\373\372\371\370\367" // 80
+
+ // #3
+ "\377\376\375\374\373"
+ "]"
+ "\377\376\375\374\373\372\371\370\367\366" // 96
+
+ // #4
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "LC_SCRIPTS"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 160+
+
+ // #5
+ "\377\376\375\374"
+ "en_US"
+ "\377\376\375\374\373\372\371" // 176
+
+ // #6
+ "\377\376"
+ "http://"
+ "\377\376\375\374\373\372\371" // 192
+
+ // #7
+ "\377\376"
+ "kde.org"
+ "\377\376\375\374\373\372\371" // 208
+
+ // #8
+ "\377\376\375\374\373\372\371\370"
+ "tools-report-bug"
+ "\377\376\375\374\373\372\371\370" // 240
+
+ // #9
+ "\377"
+ "/.krcdirs"
+ "\377\376\375\374\373\372" // 256
+
+ // #10
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ".kde"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 288
+
+ // #11
+ "\377"
+ "/.config/"
+ "\377\376\375\374\373\372" // 304
+
+ // #12
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 336
+
+ // #13
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 368
+
+ // #14
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 400
+
+ // #15
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 432
+
+ // #16
+ "\377\376\375\374\373"
+ "/.local/share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 464
+
+ // #17
+ "\377\376"
+ "lib/"
+ "\377\376\375\374\373\372\371\370\367\366" // 480
+
+ // #18
+ "\377\376\375\374\373"
+ "share/apps"
+ "\377" // 496
+
+ // #19
+ "\377\376\375\374\373"
+ "share/doc/HTML"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 528
+
+ // #20
+ "\377\376\375\374\373\372\371\370\367"
+ "share/icons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 560
+
+ // #21
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ "share/config"
+ "\377\376\375\374\373\372\371\370" // 608+
+
+ // #22
+ "share/pixmaps"
+ "\377\376\375" // 624
+
+ // #23
+ "\377\376\375"
+ "share/applnk"
+ "\377" // 640
+
+ // #24
+ "\377\376\375\374\373\372"
+ "share/sounds"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 672+
+
+ // #25
+ "\377\376\375\374\373\372\371\370\367\366"
+ "share/locale"
+ "\377\376\375\374\373\372\371\370\367\366" // 704
+
+ // #26
+ "share/kde4/services"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 736
+
+ // #27
+ "\377"
+ "share/kde4/servicetypes"
+ "\377\376\375\374\373\372\371\370" // 768
+
+ // #28
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "share/mimelnk"
+ "\377\376\375\374\373" // 800
+
+ // #29
+ "cgi-bin"
+ "\377\376\375\374\373\372\371\370\367" // 816
+
+ // #30
+ "\377\376"
+ "share/wallpapers"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 848
+
+ // #31
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/templates"
+ "\377\376\375\374" // 880
+
+ // #32
+ "\377"
+ "bin"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 896
+
+ // #33
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "%lib/kde4"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 928+
+
+ // #34
+ "%lib/kde4/plugins"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 960
+
+ // #35
+ "\377\376\375\374\373\372\371"
+ "share/config.kcfg"
+ "\377\376\375\374\373\372\371\370" // 992
+
+ // #36
+ "\377\376\375"
+ "share/emoticons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 1024
+
+ // #37
+ "applications"
+ "\377\376\375\374" // 1040
+
+ // #38
+ "\377\376\375\374\373\372\371\370\367\366"
+ "icons"
+ "\377" // 1056
+
+ // #39
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "pixmaps"
+ "\377\376\375\374\373\372\371\370\367\366" // 1088
+
+ // #40
+ "\377\376\375\374"
+ "desktop-directories"
+ "\377\376\375\374\373\372\371\370\367" // 1120
+
+ // #41
+ "\377\376\375\374\373\372\371\370\367"
+ "mime"
+ "\377\376\375" // 1136
+
+ // #42
+ "\377\376"
+ "menus"
+ "\377\376\375\374\373\372\371\370\367" // 1152
+
+ // #43
+ "\377\376\375\374\373\372\371\370\367\366"
+ "autostart"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 1184
+
+ // #44
+ "\377\376\375\374"
+ "kde4/libexec"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 1216
+
+ // #45
+ "\377\376\375\374\373\372\371\370"
+ "lib"
+ "\377\376\375\374\373" // 1232
+
+ // #46
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 1248
+
+ // #47
+ "\377\376\375\374\373\372"
+ "xdgconf-autostart"
+ "\377\376\375\374\373\372\371\370\367" // 1280
+
+ // #48
+ "\377\376\375\374\373\372\371\370"
+ "share/autostart"
+ "\377\376\375\374\373\372\371\370\367" // 1312
+
+ // #49
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "data"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 1344
+
+ // #50
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 1360
+
+ // #51
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 1376
+
+ // #52
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1392
+
+ // #53
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 1408
+
+ // #54
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1424
+
+ // #55
+ "\377"
+ ":/qt/etc/qt.conf"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 1456
+
+ // #56
+ "\377\376\375\374\373\372\371\370"
+ "nb_NO.UTF-8"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 1488
+
+ // #57
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1504
+
+ // #58
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "/usr/lib/qt4/plugins:/home/tmacieir/.kde/lib/kde4/plugins/:/home/tmacieir/KDE4/lib/kde4/plugins/:/usr/lib/kde4/plugins/"
+ "\377\376\375\374\373\372\371\370\367" // 1664+
+
+ // #59
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1680
+
+ // #60
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1696
+
+ // #61
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1712
+
+ // #62
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1728
+
+ // #63
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1744
+
+ // #64
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1760
+
+ // #65
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1776
+
+ // #66
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 1792
+
+ // #67
+ "\377\376\375\374"
+ "rc"
+ "\377\376\375\374\373\372\371\370\367\366" // 1808
+
+ // #68
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 1824
+
+ // #69
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 1840
+
+ // #70
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 1856
+
+ // #71
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 1872
+
+ // #72
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 1904
+
+ // #73
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 1920
+
+ // #74
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 1936
+
+ // #75
+ "\377\376\375\374\373\372\371\370"
+ "Directories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 1968
+
+ // #76
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "default"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2016+
+
+ // #77
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335"
+ "Directories-%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2080+
+
+ // #78
+ "\377\376\375\374\373\372\371\370"
+ "/etc/xdg"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 2112
+
+ // #79
+ "\377\376\375\374\373\372\371"
+ "/share"
+ "\377\376\375" // 2128
+
+ // #80
+ "\377\376\375\374\373\372\371\370"
+ "/etc/xdg"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 2160
+
+ // #81
+ "\377\376\375\374\373\372\371"
+ "/share"
+ "\377\376\375" // 2176
+
+ // #82
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 2192
+
+ // #83
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 2208
+
+ // #84
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 2224
+
+ // #85
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 2256
+
+ // #86
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 2272
+
+ // #87
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 2288
+
+ // #88
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 2304
+
+ // #89
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 2320
+
+ // #90
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "/proc/%1/exe"
+ "\377\376\375\374\373\372\371\370" // 2352
+
+ // #91
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 2368
+
+ // #92
+ "imsw-multi"
+ "\377\376\375\374\373\372" // 2384
+
+ // #93
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/proc/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2416
+
+ // #94
+ "\377\376\375"
+ "/cmdline"
+ "\377\376\375\374\373" // 2432
+
+ // #95
+ "\377\376\375\374\373\372\371\370"
+ ":0"
+ "\377\376\375\374\373\372" // 2448
+
+ // #96
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Xrandr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2480
+
+ // #97
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 2496
+
+ // #98
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 2512
+
+ // #99
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXfixes"
+ "\377\376\375\374\373\372\371\370" // 2544
+
+ // #100
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 2560
+
+ // #101
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 2576
+
+ // #102
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315"
+ "Cannot load library %1: %2"
+ "\377\376\375" // 2656+
+
+ // #103
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXfixes"
+ "\377\376\375\374\373\372\371\370" // 2688
+
+ // #104
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 2704
+
+ // #105
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".so"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 2736
+
+ // #106
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXfixes"
+ "\377\376\375\374\373\372\371\370" // 2768
+
+ // #107
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXfixes"
+ "\377\376\375\374\373\372\371\370" // 2800
+
+ // #108
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXfixes"
+ "\377\376\375\374\373\372\371\370" // 2832
+
+ // #109
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Xcursor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 2864
+
+ // #110
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 2880
+
+ // #111
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 2896
+
+ // #112
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Xinerama"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 2928
+
+ // #113
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 2944
+
+ // #114
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 2960
+
+ // #115
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 2992
+
+ // #116
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 3008
+
+ // #117
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 3024
+
+ // #118
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315"
+ "Cannot load library %1: %2"
+ "\377\376\375" // 3104+
+
+ // #119
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 3136
+
+ // #120
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 3152
+
+ // #121
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".so"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 3184
+
+ // #122
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 3216
+
+ // #123
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 3248
+
+ // #124
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 3280
+
+ // #125
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "libXi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 3312
+
+ // #126
+ "\377\376"
+ "Trolltech"
+ "\377\376\375\374\373" // 3328
+
+ // #127
+ "\377\376\375\374\373\372\371\370\367"
+ ".conf"
+ "\377\376" // 3344
+
+ // #128
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311"
+ "No such file or directory"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 3440+
+
+ // #129
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Qt"
+ "\377\376" // 3456
+
+ // #130
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Palette/active"
+ "\377\376\375" // 3488
+
+ // #131
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Palette/inactive"
+ "\377\376" // 3520
+
+ // #132
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Palette/disabled"
+ "\377" // 3552
+
+ // #133
+ "\377\376\375\374\373\372\371"
+ "Helvetica"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 3584
+
+ // #134
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 3600
+
+ // #135
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "/.kde"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 3680+
+
+ // #136
+ "\377\376\375"
+ ".kde4"
+ "\377\376\375\374\373\372\371\370" // 3696
+
+ // #137
+ "\377\376\375\374\373\372\371\370\367"
+ "/.kde4"
+ "\377" // 3712
+
+ // #138
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".ini"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 3744
+
+ // #139
+ "\377\376\375"
+ "font"
+ "\377\376\375\374\373\372\371\370\367" // 3760
+
+ // #140
+ "\377\376\375\374\373\372\371\370"
+ ","
+ "\377\376\375\374\373\372\371" // 3776
+
+ // #141
+ "\377\376\375"
+ "font"
+ "\377\376\375\374\373\372\371\370\367" // 3792
+
+ // #142
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1.%2/libraryPath"
+ "\377\376\375\374\373" // 3824
+
+ // #143
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ "style"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3872+
+
+ // #144
+ "\377\376"
+ "doubleClickInterval"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 3904
+
+ // #145
+ "\377\376\375\374\373\372"
+ "cursorFlashTime"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 3936
+
+ // #146
+ "\377\376\375\374\373\372"
+ "wheelScrollLines"
+ "\377\376\375\374\373\372\371\370\367\366" // 3968
+
+ // #147
+ "\377\376\375\374\373\372\371"
+ "default"
+ "\377\376" // 3984
+
+ // #148
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "colorSpec"
+ "\377\376\375\374\373\372\371\370" // 4064+
+
+ // #149
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "none"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 4096
+
+ // #150
+ "\377"
+ "defaultCodec"
+ "\377\376\375" // 4112
+
+ // #151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "globalStrut/width"
+ "\377" // 4144
+
+ // #152
+ "globalStrut/height"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 4176
+
+ // #153
+ "\377\376\375"
+ "GUIEffects"
+ "\377\376\375" // 4192
+
+ // #154
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "general"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 4224
+
+ // #155
+ "\377\376\375\374\373\372"
+ "animatemenu"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4256
+
+ // #156
+ "\377\376"
+ "fademenu"
+ "\377\376\375\374\373\372" // 4272
+
+ // #157
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "animatecombo"
+ "\377\376\375\374\373\372\371\370\367" // 4320+
+
+ // #158
+ "\377\376\375\374\373\372\371\370"
+ "animatetooltip"
+ "\377\376\375\374\373\372\371\370\367\366" // 4352
+
+ // #159
+ "\377\376\375\374\373\372\371"
+ "fadetooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 4384
+
+ // #160
+ "\377\376\375"
+ "animatetoolbox"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4416
+
+ // #161
+ "\377\376\375\374\373"
+ "useRtlExtensions"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 4448
+
+ // #162
+ "\377\376\375\374\373\372"
+ "on the spot"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4480
+
+ // #163
+ "\377\376"
+ "XIMInputStyle"
+ "\377" // 4496
+
+ // #164
+ "\377"
+ "xim"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 4512
+
+ // #165
+ "\377\376\375"
+ "/inputmethods"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 4544
+
+ // #166
+ "Trolltech"
+ "\377\376\375\374\373\372\371" // 4560
+
+ // #167
+ "\377\376\375\374\373\372\371\370\367"
+ ".conf"
+ "\377\376" // 4576
+
+ // #168
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 4592
+
+ // #169
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 4608
+
+ // #170
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 4624
+
+ // #171
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 4640
+
+ // #172
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 4656
+
+ // #173
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 4672
+
+ // #174
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 4704
+
+ // #175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "com.trolltech.Qt.QInputContextFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366" // 4800+
+
+ // #176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 4848
+
+ // #177
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4896
+
+ // #178
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 4912
+
+ // #179
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 4928
+
+ // #180
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 4944
+
+ // #181
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 4960
+
+ // #182
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 4976
+
+ // #183
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 4992
+
+ // #184
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 5024
+
+ // #185
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "com.trolltech.Qt.QInputContextFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366" // 5120+
+
+ // #186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 5168
+
+ // #187
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 5184
+
+ // #188
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5200
+
+ // #189
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 5216
+
+ // #190
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5232
+
+ // #191
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 5248
+
+ // #192
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5264
+
+ // #193
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "xim"
+ "\377\376" // 5280
+
+ // #194
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DefaultInputMethod"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5328
+
+ // #195
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "*Emacs*font:\11""-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1\12"""
+ "\377\376\375\374\373\372\371\370\367\366\365" // 5472+
+
+ // #196
+ "\377\376\375\374"
+ "/styles"
+ "\377\376\375\374\373" // 5488
+
+ // #197
+ "Trolltech"
+ "\377\376\375\374\373\372\371" // 5504
+
+ // #198
+ "\377\376\375\374\373\372\371\370\367"
+ ".conf"
+ "\377\376" // 5520
+
+ // #199
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311"
+ "No such file or directory"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 5616+
+
+ // #200
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 5632
+
+ // #201
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5648
+
+ // #202
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 5664
+
+ // #203
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5680
+
+ // #204
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5696
+
+ // #205
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 5712
+
+ // #206
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 5728
+
+ // #207
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 5744
+
+ // #208
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 5776
+
+ // #209
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "com.trolltech.Qt.QStyleFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367" // 5872+
+
+ // #210
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 5920
+
+ // #211
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 5936
+
+ // #212
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5952
+
+ // #213
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 5968
+
+ // #214
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 5984
+
+ // #215
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 6000
+
+ // #216
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 6016
+
+ // #217
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 6048
+
+ // #218
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QStyleFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367" // 6128+
+
+ // #219
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 6176
+
+ // #220
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 6192
+
+ // #221
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 6208
+
+ // #222
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 6240
+
+ // #223
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QStyleFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367" // 6320+
+
+ // #224
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 6368
+
+ // #225
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 6384
+
+ // #226
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 6400
+
+ // #227
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 6416
+
+ // #228
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 6432
+
+ // #229
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 6448
+
+ // #230
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 6464
+
+ // #231
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 6496
+
+ // #232
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QStyleFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367" // 6576+
+
+ // #233
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 6624
+
+ // #234
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 6640
+
+ // #235
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 6656
+
+ // #236
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 6688
+
+ // #237
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QStyleFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367" // 6768+
+
+ // #238
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 6816
+
+ // #239
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 6832
+
+ // #240
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 6848
+
+ // #241
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6880
+
+ // #242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336"
+ "HorizontalOffset"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 6944+
+
+ // #243
+ "\377\376\375"
+ "VerticalOffset"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6976
+
+ // #244
+ "\377\376"
+ "InnerColor"
+ "\377\376\375\374" // 6992
+
+ // #245
+ "OuterColor"
+ "\377\376\375\374\373\372" // 7008
+
+ // #246
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "UseOuterColor"
+ "\377\376\375\374\373\372" // 7040
+
+ // #247
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "AnimationsDuration"
+ "\377\376\375" // 7072
+
+ // #248
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "ShadowCacheMode"
+ "\377\376\375" // 7136+
+
+ // #249
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ShadowMode"
+ "\377\376\375\374\373\372\371\370" // 7168
+
+ // #250
+ "\377\376\375\374\373\372\371\370\367"
+ "UseDropShadows"
+ "\377\376\375\374\373\372\371\370\367" // 7200
+
+ // #251
+ "\377\376\375\374\373\372\371\370"
+ "UseOxygenShadows"
+ "\377\376\375\374\373\372\371\370" // 7232
+
+ // #252
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7264
+
+ // #253
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336"
+ "HorizontalOffset"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 7328+
+
+ // #254
+ "\377\376\375"
+ "VerticalOffset"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7360
+
+ // #255
+ "\377\376"
+ "InnerColor"
+ "\377\376\375\374" // 7376
+
+ // #256
+ "OuterColor"
+ "\377\376\375\374\373\372" // 7392
+
+ // #257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "UseOuterColor"
+ "\377\376\375\374\373\372" // 7424
+
+ // #258
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "AnimationsDuration"
+ "\377\376\375" // 7456
+
+ // #259
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "ShadowCacheMode"
+ "\377\376\375" // 7520+
+
+ // #260
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ShadowMode"
+ "\377\376\375\374\373\372\371\370" // 7552
+
+ // #261
+ "\377\376\375\374\373\372\371\370\367"
+ "UseDropShadows"
+ "\377\376\375\374\373\372\371\370\367" // 7584
+
+ // #262
+ "\377\376\375\374\373\372\371\370"
+ "UseOxygenShadows"
+ "\377\376\375\374\373\372\371\370" // 7616
+
+ // #263
+ "\377\376"
+ "http://"
+ "\377\376\375\374\373\372\371" // 7632
+
+ // #264
+ "\377\376"
+ "kde.org"
+ "\377\376\375\374\373\372\371" // 7648
+
+ // #265
+ "\377"
+ "/.krcdirs"
+ "\377\376\375\374\373\372" // 7664
+
+ // #266
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ".kde"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7696
+
+ // #267
+ "\377"
+ "/.config/"
+ "\377\376\375\374\373\372" // 7712
+
+ // #268
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 7744
+
+ // #269
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 7776
+
+ // #270
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 7808
+
+ // #271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 7840
+
+ // #272
+ "\377\376\375\374\373"
+ "/.local/share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 7872
+
+ // #273
+ "\377\376"
+ "lib/"
+ "\377\376\375\374\373\372\371\370\367\366" // 7888
+
+ // #274
+ "\377\376\375\374\373"
+ "share/apps"
+ "\377" // 7904
+
+ // #275
+ "\377\376\375\374\373"
+ "share/doc/HTML"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 7936
+
+ // #276
+ "\377\376\375\374\373\372\371\370\367"
+ "share/icons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 7968
+
+ // #277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324"
+ "share/config"
+ "\377\376\375\374\373\372\371\370" // 8032+
+
+ // #278
+ "share/pixmaps"
+ "\377\376\375" // 8048
+
+ // #279
+ "\377\376\375"
+ "share/applnk"
+ "\377" // 8064
+
+ // #280
+ "\377\376\375\374\373\372"
+ "share/sounds"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 8096+
+
+ // #281
+ "\377\376\375\374\373\372\371\370\367\366"
+ "share/locale"
+ "\377\376\375\374\373\372\371\370\367\366" // 8128
+
+ // #282
+ "share/kde4/services"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 8160
+
+ // #283
+ "\377"
+ "share/kde4/servicetypes"
+ "\377\376\375\374\373\372\371\370" // 8192
+
+ // #284
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "share/mimelnk"
+ "\377\376\375\374\373" // 8224
+
+ // #285
+ "cgi-bin"
+ "\377\376\375\374\373\372\371\370\367" // 8240
+
+ // #286
+ "\377\376"
+ "share/wallpapers"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 8272
+
+ // #287
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/templates"
+ "\377\376\375\374" // 8304
+
+ // #288
+ "\377"
+ "bin"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 8320
+
+ // #289
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "%lib/kde4"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 8352+
+
+ // #290
+ "%lib/kde4/plugins"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8384
+
+ // #291
+ "\377\376\375\374\373\372\371"
+ "share/config.kcfg"
+ "\377\376\375\374\373\372\371\370" // 8416
+
+ // #292
+ "\377\376\375"
+ "share/emoticons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 8448
+
+ // #293
+ "applications"
+ "\377\376\375\374" // 8464
+
+ // #294
+ "\377\376\375\374\373\372\371\370\367\366"
+ "icons"
+ "\377" // 8480
+
+ // #295
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "pixmaps"
+ "\377\376\375\374\373\372\371\370\367\366" // 8512
+
+ // #296
+ "\377\376\375\374"
+ "desktop-directories"
+ "\377\376\375\374\373\372\371\370\367" // 8544
+
+ // #297
+ "\377\376\375\374\373\372\371\370\367"
+ "mime"
+ "\377\376\375" // 8560
+
+ // #298
+ "\377\376"
+ "menus"
+ "\377\376\375\374\373\372\371\370\367" // 8576
+
+ // #299
+ "\377\376\375\374\373\372\371\370\367\366"
+ "autostart"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 8608
+
+ // #300
+ "\377\376\375\374"
+ "kde4/libexec"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 8640
+
+ // #301
+ "\377\376\375\374\373\372\371\370"
+ "lib"
+ "\377\376\375\374\373" // 8656
+
+ // #302
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 8672
+
+ // #303
+ "\377\376\375\374\373\372"
+ "xdgconf-autostart"
+ "\377\376\375\374\373\372\371\370\367" // 8704
+
+ // #304
+ "\377\376\375\374\373\372\371\370"
+ "share/autostart"
+ "\377\376\375\374\373\372\371\370\367" // 8736
+
+ // #305
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "data"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 8768
+
+ // #306
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 8784
+
+ // #307
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 8800
+
+ // #308
+ "\377\376\375\374"
+ "rc"
+ "\377\376\375\374\373\372\371\370\367\366" // 8816
+
+ // #309
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 8832
+
+ // #310
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 8848
+
+ // #311
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 8864
+
+ // #312
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 8880
+
+ // #313
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 8912
+
+ // #314
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 8928
+
+ // #315
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 8944
+
+ // #316
+ "\377\376\375\374\373\372\371\370"
+ "Directories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 8976
+
+ // #317
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306"
+ "default"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9056+
+
+ // #318
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335"
+ "Directories-%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9120+
+
+ // #319
+ "\377\376\375\374\373\372\371\370"
+ "/etc/xdg"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 9152
+
+ // #320
+ "\377\376\375\374\373\372\371"
+ "/share"
+ "\377\376\375" // 9168
+
+ // #321
+ "\377\376\375\374\373\372\371\370"
+ "/etc/xdg"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 9200
+
+ // #322
+ "\377\376\375\374\373\372\371"
+ "/share"
+ "\377\376\375" // 9216
+
+ // #323
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 9232
+
+ // #324
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 9248
+
+ // #325
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 9264
+
+ // #326
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 9296
+
+ // #327
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9312
+
+ // #328
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9328
+
+ // #329
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9344
+
+ // #330
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9360
+
+ // #331
+ "\377\376\375\374\373\372\371\370"
+ "7"
+ "\377\376\375\374\373\372\371" // 9376
+
+ // #332
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9408
+
+ // #333
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 9424
+
+ // #334
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 9520+
+
+ // #335
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 9600+
+
+ // #336
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "kdebugrc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 9632
+
+ // #337
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 9648
+
+ // #338
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 9664
+
+ // #339
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9680
+
+ // #340
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9696
+
+ // #341
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9712
+
+ // #342
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 9728
+
+ // #343
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 9744
+
+ // #344
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 9760
+
+ // #345
+ "\377\376\375\374\373"
+ "DisableAll"
+ "\377" // 9776
+
+ // #346
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 9840+
+
+ // #347
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 9920+
+
+ // #348
+ "InfoOutput"
+ "\377\376\375\374\373\372" // 9936
+
+ // #349
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "Enter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 10016+
+
+ // #350
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Leave"
+ "\377" // 10032
+
+ // #351
+ "HoverMove"
+ "\377\376\375\374\373\372\371" // 10048
+
+ // #352
+ "\377\376\375\374\373\372\371\370\367\366"
+ "HoverEnter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 10080+
+
+ // #353
+ "\377\376\375\374\373"
+ "HoverLeave"
+ "\377" // 10096
+
+ // #354
+ "\377\376\375\374"
+ "MouseMove"
+ "\377\376\375" // 10112
+
+ // #355
+ "MouseButtonPress"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 10144
+
+ // #356
+ "\377"
+ "MouseButtonRelease"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 10176
+
+ // #357
+ "FocusIn"
+ "\377\376\375\374\373\372\371\370\367" // 10192
+
+ // #358
+ "\377\376\375\374\373\372\371\370"
+ "FocusOut"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 10224
+
+ // #359
+ "\377\376\375"
+ "CE_CapacityBar"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 10256
+
+ // #360
+ "\377\376"
+ "CE_"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 10272
+
+ // #361
+ "\377\376\375\374\373\372\371\370"
+ "qt_default_session_bus"
+ "\377\376" // 10304
+
+ // #362
+ "\377\376\375\374"
+ "dbus-1"
+ "\377\376\375\374\373\372" // 10320
+
+ // #363
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 10336
+
+ // #364
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 10352
+
+ // #365
+ "\377\376\375\374\373\372\371\370\367"
+ "org.freedesktop.DBus"
+ "\377\376\375" // 10384
+
+ // #366
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304"
+ "NameAcquired:org.freedesktop.DBus"
+ "\377\376\375" // 10480+
+
+ // #367
+ "\377"
+ "NameLost:org.freedesktop.DBus"
+ "\377\376" // 10512
+
+ // #368
+ "\377\376\375\374\373\372\371\370\367"
+ "/org/freedesktop/DBus"
+ "\377\376" // 10544
+
+ // #369
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "org.freedesktop.DBus"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 10608+
+
+ // #370
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "org.freedesktop.DBus"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 10672+
+
+ // #371
+ "\377\376"
+ "NameOwnerChanged"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 10704
+
+ // #372
+ "\377\376\375"
+ "org.freedesktop.DBus"
+ "\377\376\375\374\373\372\371\370\367" // 10736
+
+ // #373
+ "\377\376\375"
+ "org.freedesktop.DBus"
+ "\377\376\375\374\373\372\371\370\367" // 10768
+
+ // #374
+ "\377"
+ "type='signal',"
+ "\377" // 10784
+
+ // #375
+ "%1='%2',"
+ "\377\376\375\374\373\372\371\370" // 10800
+
+ // #376
+ "\377\376\375\374\373\372\371\370\367"
+ "sender"
+ "\377" // 10816
+
+ // #377
+ "\377\376\375\374\373"
+ "interface"
+ "\377\376" // 10832
+
+ // #378
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "member"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 10864
+
+ // #379
+ "\377\376\375\374\373\372"
+ "arg%1='%2',"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 10896
+
+ // #380
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312"
+ "reparseConfiguration"
+ "\377\376\375\374\373\372" // 10976+
+
+ // #381
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "org.kde.Oxygen.Style"
+ "\377" // 11008
+
+ // #382
+ "/OxygenStyle"
+ "\377\376\375\374" // 11024
+
+ // #383
+ "\377"
+ "type='signal',"
+ "\377" // 11040
+
+ // #384
+ "%1='%2',"
+ "\377\376\375\374\373\372\371\370" // 11056
+
+ // #385
+ "path"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 11072
+
+ // #386
+ "\377\376\375\374\373"
+ "interface"
+ "\377\376" // 11088
+
+ // #387
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "member"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 11120
+
+ // #388
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "notifyChange"
+ "\377\376\375\374\373\372\371" // 11152
+
+ // #389
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306"
+ "org.kde.KGlobalSettings"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11248+
+
+ // #390
+ "\377\376"
+ "/KGlobalSettings"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 11280
+
+ // #391
+ "\377"
+ "type='signal',"
+ "\377" // 11296
+
+ // #392
+ "%1='%2',"
+ "\377\376\375\374\373\372\371\370" // 11312
+
+ // #393
+ "path"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 11328
+
+ // #394
+ "\377\376\375\374\373"
+ "interface"
+ "\377\376" // 11344
+
+ // #395
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "member"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 11376
+
+ // #396
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 11392
+
+ // #397
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 11424
+
+ // #398
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 11440
+
+ // #399
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 11456
+
+ // #400
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 11472
+
+ // #401
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 11488
+
+ // #402
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11504
+
+ // #403
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11536
+
+ // #404
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 11552
+
+ // #405
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 11632+
+
+ // #406
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 11712+
+
+ // #407
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11728
+
+ // #408
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11760
+
+ // #409
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 11776
+
+ // #410
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 11824+
+
+ // #411
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 11904+
+
+ // #412
+ "255,255,255"
+ "\377\376\375\374\373" // 11920
+
+ // #413
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 11936
+
+ // #414
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 12000+
+
+ // #415
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 12080+
+
+ // #416
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 12160+
+
+ // #417
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 12192+
+
+ // #418
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 12208
+
+ // #419
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 12240
+
+ // #420
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 12336+
+
+ // #421
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 12416+
+
+ // #422
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 12432
+
+ // #423
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 12448
+
+ // #424
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12480
+
+ // #425
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 12528+
+
+ // #426
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 12608+
+
+ // #427
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 12640
+
+ // #428
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 12656
+
+ // #429
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 12688
+
+ // #430
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 12784+
+
+ // #431
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 12864+
+
+ // #432
+ "255,128,224"
+ "\377\376\375\374\373" // 12880
+
+ // #433
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 12896
+
+ // #434
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 12960+
+
+ // #435
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 13040+
+
+ // #436
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 13120+
+
+ // #437
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 13152
+
+ // #438
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 13168
+
+ // #439
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 13200
+
+ // #440
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 13296+
+
+ // #441
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 13376+
+
+ // #442
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13408+
+
+ // #443
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 13424
+
+ // #444
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 13456
+
+ // #445
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 13552+
+
+ // #446
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 13632+
+
+ // #447
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 13648
+
+ // #448
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 13664
+
+ // #449
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 13696
+
+ // #450
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 13744+
+
+ // #451
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 13824+
+
+ // #452
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13856+
+
+ // #453
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 13872
+
+ // #454
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 13920+
+
+ // #455
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 14000+
+
+ // #456
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 14080+
+
+ // #457
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 14112
+
+ // #458
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 14128
+
+ // #459
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 14160
+
+ // #460
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 14256+
+
+ // #461
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 14336+
+
+ // #462
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 14368
+
+ // #463
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 14384
+
+ // #464
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 14416
+
+ // #465
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 14512+
+
+ // #466
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 14592+
+
+ // #467
+ "43,116,199"
+ "\377\376\375\374\373\372" // 14608
+
+ // #468
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 14624
+
+ // #469
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 14656
+
+ // #470
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 14704+
+
+ // #471
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 14784+
+
+ // #472
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14800
+
+ // #473
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14832
+
+ // #474
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 14848
+
+ // #475
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 14896+
+
+ // #476
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 14976+
+
+ // #477
+ "255,255,255"
+ "\377\376\375\374\373" // 14992
+
+ // #478
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 15008
+
+ // #479
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 15072+
+
+ // #480
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 15152+
+
+ // #481
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 15232+
+
+ // #482
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 15264+
+
+ // #483
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 15280
+
+ // #484
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 15312
+
+ // #485
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 15408+
+
+ // #486
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 15488+
+
+ // #487
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 15504
+
+ // #488
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 15520
+
+ // #489
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15552
+
+ // #490
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 15600+
+
+ // #491
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 15680+
+
+ // #492
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 15712
+
+ // #493
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 15728
+
+ // #494
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 15760
+
+ // #495
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 15856+
+
+ // #496
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 15936+
+
+ // #497
+ "255,128,224"
+ "\377\376\375\374\373" // 15952
+
+ // #498
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 15968
+
+ // #499
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 16032+
+
+ // #500
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 16112+
+
+ // #501
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 16192+
+
+ // #502
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 16224
+
+ // #503
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 16240
+
+ // #504
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 16272
+
+ // #505
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 16368+
+
+ // #506
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 16448+
+
+ // #507
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16480+
+
+ // #508
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 16496
+
+ // #509
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 16528
+
+ // #510
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 16624+
+
+ // #511
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 16704+
+
+ // #512
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 16720
+
+ // #513
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 16736
+
+ // #514
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 16768
+
+ // #515
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 16816+
+
+ // #516
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 16896+
+
+ // #517
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16928+
+
+ // #518
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 16944
+
+ // #519
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 16992+
+
+ // #520
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 17072+
+
+ // #521
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 17152+
+
+ // #522
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 17184
+
+ // #523
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 17200
+
+ // #524
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 17232
+
+ // #525
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 17328+
+
+ // #526
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 17408+
+
+ // #527
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 17440
+
+ // #528
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 17456
+
+ // #529
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 17488
+
+ // #530
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 17584+
+
+ // #531
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 17664+
+
+ // #532
+ "43,116,199"
+ "\377\376\375\374\373\372" // 17680
+
+ // #533
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 17696
+
+ // #534
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 17728
+
+ // #535
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 17776+
+
+ // #536
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 17856+
+
+ // #537
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 17888
+
+ // #538
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17904
+
+ // #539
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17936
+
+ // #540
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 18016+
+
+ // #541
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 18096+
+
+ // #542
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 18176+
+
+ // #543
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 18192
+
+ // #544
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 18224
+
+ // #545
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 18256
+
+ // #546
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 18352+
+
+ // #547
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 18432+
+
+ // #548
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 18448
+
+ // #549
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 18480
+
+ // #550
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 18512
+
+ // #551
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 18608+
+
+ // #552
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 18688+
+
+ // #553
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 18704
+
+ // #554
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 18736
+
+ // #555
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 18768
+
+ // #556
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 18864+
+
+ // #557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 18944+
+
+ // #558
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 18960
+
+ // #559
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 18992
+
+ // #560
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 19040+
+
+ // #561
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 19120+
+
+ // #562
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 19200+
+
+ // #563
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 19216
+
+ // #564
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 19248
+
+ // #565
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 19280
+
+ // #566
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 19376+
+
+ // #567
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 19456+
+
+ // #568
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 19472
+
+ // #569
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 19504
+
+ // #570
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 19520
+
+ // #571
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 19568+
+
+ // #572
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 19648+
+
+ // #573
+ "255,255,255"
+ "\377\376\375\374\373" // 19664
+
+ // #574
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 19680
+
+ // #575
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 19744+
+
+ // #576
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 19824+
+
+ // #577
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 19904+
+
+ // #578
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 19936+
+
+ // #579
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 19952
+
+ // #580
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 19984
+
+ // #581
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 20080+
+
+ // #582
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 20160+
+
+ // #583
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 20176
+
+ // #584
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 20192
+
+ // #585
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 20224
+
+ // #586
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 20272+
+
+ // #587
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 20352+
+
+ // #588
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 20384
+
+ // #589
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 20400
+
+ // #590
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 20432
+
+ // #591
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 20528+
+
+ // #592
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 20608+
+
+ // #593
+ "255,128,224"
+ "\377\376\375\374\373" // 20624
+
+ // #594
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 20640
+
+ // #595
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 20704+
+
+ // #596
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 20784+
+
+ // #597
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 20864+
+
+ // #598
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 20896
+
+ // #599
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 20912
+
+ // #600
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 20944
+
+ // #601
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 21040+
+
+ // #602
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 21120+
+
+ // #603
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21152+
+
+ // #604
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 21168
+
+ // #605
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 21200
+
+ // #606
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 21296+
+
+ // #607
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 21376+
+
+ // #608
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 21392
+
+ // #609
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 21408
+
+ // #610
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 21440
+
+ // #611
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 21488+
+
+ // #612
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 21568+
+
+ // #613
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21600+
+
+ // #614
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 21616
+
+ // #615
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 21664+
+
+ // #616
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 21744+
+
+ // #617
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 21824+
+
+ // #618
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 21856
+
+ // #619
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 21872
+
+ // #620
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 21904
+
+ // #621
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 22000+
+
+ // #622
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 22080+
+
+ // #623
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 22112
+
+ // #624
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 22128
+
+ // #625
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 22160
+
+ // #626
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 22256+
+
+ // #627
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 22336+
+
+ // #628
+ "43,116,199"
+ "\377\376\375\374\373\372" // 22352
+
+ // #629
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 22368
+
+ // #630
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 22400
+
+ // #631
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 22448+
+
+ // #632
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 22528+
+
+ // #633
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 22576
+
+ // #634
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 22592
+
+ // #635
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 22608
+
+ // #636
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 22624
+
+ // #637
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 22704+
+
+ // #638
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 22784+
+
+ // #639
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 22800
+
+ // #640
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22832
+
+ // #641
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 22880+
+
+ // #642
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 22960+
+
+ // #643
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 23040+
+
+ // #644
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23056
+
+ // #645
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23088
+
+ // #646
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 23120
+
+ // #647
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 23216+
+
+ // #648
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 23296+
+
+ // #649
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23312
+
+ // #650
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23344
+
+ // #651
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 23376
+
+ // #652
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 23472+
+
+ // #653
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 23552+
+
+ // #654
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23568
+
+ // #655
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 23600
+
+ // #656
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 23632
+
+ // #657
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 23728+
+
+ // #658
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 23808+
+
+ // #659
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 23824
+
+ // #660
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 23856
+
+ // #661
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23904+
+
+ // #662
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 23984+
+
+ // #663
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 24064+
+
+ // #664
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 24080
+
+ // #665
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 24112
+
+ // #666
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 24144
+
+ // #667
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 24240+
+
+ // #668
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 24320+
+
+ // #669
+ "\377\376\375\374\373\372\371\370"
+ "112,111,110"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 24352
+
+ // #670
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 24368
+
+ // #671
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 24400
+
+ // #672
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 24496+
+
+ // #673
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 24576+
+
+ // #674
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 24592
+
+ // #675
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 24624
+
+ // #676
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 24640
+
+ // #677
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 24688+
+
+ // #678
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 24768+
+
+ // #679
+ "255,255,255"
+ "\377\376\375\374\373" // 24784
+
+ // #680
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 24800
+
+ // #681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 24864+
+
+ // #682
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 24944+
+
+ // #683
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 25024+
+
+ // #684
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 25056+
+
+ // #685
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 25072
+
+ // #686
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 25104
+
+ // #687
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 25200+
+
+ // #688
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 25280+
+
+ // #689
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 25296
+
+ // #690
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 25312
+
+ // #691
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 25344
+
+ // #692
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 25392+
+
+ // #693
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 25472+
+
+ // #694
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 25504
+
+ // #695
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 25520
+
+ // #696
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 25552
+
+ // #697
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 25648+
+
+ // #698
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 25728+
+
+ // #699
+ "255,128,224"
+ "\377\376\375\374\373" // 25744
+
+ // #700
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 25760
+
+ // #701
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25824+
+
+ // #702
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 25904+
+
+ // #703
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 25984+
+
+ // #704
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 26016
+
+ // #705
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 26032
+
+ // #706
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 26064
+
+ // #707
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 26160+
+
+ // #708
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 26240+
+
+ // #709
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 26272+
+
+ // #710
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 26288
+
+ // #711
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 26320
+
+ // #712
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 26416+
+
+ // #713
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 26496+
+
+ // #714
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 26512
+
+ // #715
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 26528
+
+ // #716
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 26560
+
+ // #717
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 26608+
+
+ // #718
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 26688+
+
+ // #719
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 26720+
+
+ // #720
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 26736
+
+ // #721
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 26784+
+
+ // #722
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 26864+
+
+ // #723
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 26944+
+
+ // #724
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 26976
+
+ // #725
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 26992
+
+ // #726
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 27024
+
+ // #727
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 27120+
+
+ // #728
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 27200+
+
+ // #729
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 27232
+
+ // #730
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 27248
+
+ // #731
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 27280
+
+ // #732
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 27376+
+
+ // #733
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 27456+
+
+ // #734
+ "43,116,199"
+ "\377\376\375\374\373\372" // 27472
+
+ // #735
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 27488
+
+ // #736
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 27520
+
+ // #737
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 27568+
+
+ // #738
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 27648+
+
+ // #739
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 27664
+
+ // #740
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 27696
+
+ // #741
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 27712
+
+ // #742
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 27760+
+
+ // #743
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 27840+
+
+ // #744
+ "255,255,255"
+ "\377\376\375\374\373" // 27856
+
+ // #745
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 27872
+
+ // #746
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 27936+
+
+ // #747
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 28016+
+
+ // #748
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 28096+
+
+ // #749
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 28128+
+
+ // #750
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 28144
+
+ // #751
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 28176
+
+ // #752
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 28272+
+
+ // #753
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 28352+
+
+ // #754
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 28368
+
+ // #755
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 28384
+
+ // #756
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 28416
+
+ // #757
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 28464+
+
+ // #758
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 28544+
+
+ // #759
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 28576
+
+ // #760
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 28592
+
+ // #761
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 28624
+
+ // #762
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 28720+
+
+ // #763
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 28800+
+
+ // #764
+ "255,128,224"
+ "\377\376\375\374\373" // 28816
+
+ // #765
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 28832
+
+ // #766
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 28896+
+
+ // #767
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 28976+
+
+ // #768
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 29056+
+
+ // #769
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 29088
+
+ // #770
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 29104
+
+ // #771
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 29136
+
+ // #772
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 29232+
+
+ // #773
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 29312+
+
+ // #774
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 29344+
+
+ // #775
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 29360
+
+ // #776
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 29392
+
+ // #777
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 29488+
+
+ // #778
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 29568+
+
+ // #779
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 29584
+
+ // #780
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 29600
+
+ // #781
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 29632
+
+ // #782
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 29680+
+
+ // #783
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 29760+
+
+ // #784
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 29792+
+
+ // #785
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 29808
+
+ // #786
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 29856+
+
+ // #787
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 29936+
+
+ // #788
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 30016+
+
+ // #789
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 30048
+
+ // #790
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 30064
+
+ // #791
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 30096
+
+ // #792
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 30192+
+
+ // #793
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 30272+
+
+ // #794
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30304
+
+ // #795
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 30320
+
+ // #796
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 30352
+
+ // #797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 30448+
+
+ // #798
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 30528+
+
+ // #799
+ "43,116,199"
+ "\377\376\375\374\373\372" // 30544
+
+ // #800
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 30560
+
+ // #801
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 30592
+
+ // #802
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 30640+
+
+ // #803
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 30720+
+
+ // #804
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 30752
+
+ // #805
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 30768
+
+ // #806
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 30800
+
+ // #807
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 30880+
+
+ // #808
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 30960+
+
+ // #809
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 31040+
+
+ // #810
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 31056
+
+ // #811
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 31088
+
+ // #812
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 31120
+
+ // #813
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 31216+
+
+ // #814
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 31296+
+
+ // #815
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 31312
+
+ // #816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 31344
+
+ // #817
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 31376
+
+ // #818
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 31472+
+
+ // #819
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 31552+
+
+ // #820
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 31568
+
+ // #821
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 31600
+
+ // #822
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 31632
+
+ // #823
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 31728+
+
+ // #824
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 31808+
+
+ // #825
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 31824
+
+ // #826
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 31856
+
+ // #827
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 31904+
+
+ // #828
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 31984+
+
+ // #829
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 32064+
+
+ // #830
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 32080
+
+ // #831
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 32112
+
+ // #832
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 32144
+
+ // #833
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 32240+
+
+ // #834
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 32320+
+
+ // #835
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 32336
+
+ // #836
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 32368
+
+ // #837
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 32384
+
+ // #838
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 32432+
+
+ // #839
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 32512+
+
+ // #840
+ "255,255,255"
+ "\377\376\375\374\373" // 32528
+
+ // #841
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 32544
+
+ // #842
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 32608+
+
+ // #843
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 32688+
+
+ // #844
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 32768+
+
+ // #845
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 32800+
+
+ // #846
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 32816
+
+ // #847
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 32848
+
+ // #848
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 32944+
+
+ // #849
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 33024+
+
+ // #850
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 33040
+
+ // #851
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 33056
+
+ // #852
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 33088
+
+ // #853
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 33136+
+
+ // #854
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 33216+
+
+ // #855
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 33248
+
+ // #856
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 33264
+
+ // #857
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 33296
+
+ // #858
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 33392+
+
+ // #859
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 33472+
+
+ // #860
+ "255,128,224"
+ "\377\376\375\374\373" // 33488
+
+ // #861
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 33504
+
+ // #862
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33568+
+
+ // #863
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 33648+
+
+ // #864
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 33728+
+
+ // #865
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 33760
+
+ // #866
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 33776
+
+ // #867
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 33808
+
+ // #868
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 33904+
+
+ // #869
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 33984+
+
+ // #870
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 34016+
+
+ // #871
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 34032
+
+ // #872
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 34064
+
+ // #873
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 34160+
+
+ // #874
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 34240+
+
+ // #875
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 34256
+
+ // #876
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 34272
+
+ // #877
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 34304
+
+ // #878
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 34352+
+
+ // #879
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 34432+
+
+ // #880
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 34464+
+
+ // #881
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 34480
+
+ // #882
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 34528+
+
+ // #883
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 34608+
+
+ // #884
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 34688+
+
+ // #885
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 34720
+
+ // #886
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 34736
+
+ // #887
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 34768
+
+ // #888
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 34864+
+
+ // #889
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 34944+
+
+ // #890
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 34976
+
+ // #891
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 34992
+
+ // #892
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 35024
+
+ // #893
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 35120+
+
+ // #894
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 35200+
+
+ // #895
+ "43,116,199"
+ "\377\376\375\374\373\372" // 35216
+
+ // #896
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 35232
+
+ // #897
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 35264
+
+ // #898
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 35312+
+
+ // #899
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 35392+
+
+ // #900
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 35440
+
+ // #901
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 35456
+
+ // #902
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 35472
+
+ // #903
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 35488
+
+ // #904
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 35568+
+
+ // #905
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 35648+
+
+ // #906
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 35664
+
+ // #907
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 35696
+
+ // #908
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 35744+
+
+ // #909
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 35824+
+
+ // #910
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 35904+
+
+ // #911
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 35920
+
+ // #912
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 35952
+
+ // #913
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 35984
+
+ // #914
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 36080+
+
+ // #915
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 36160+
+
+ // #916
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 36176
+
+ // #917
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 36208
+
+ // #918
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36240
+
+ // #919
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 36336+
+
+ // #920
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 36416+
+
+ // #921
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 36432
+
+ // #922
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 36464
+
+ // #923
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36496
+
+ // #924
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 36592+
+
+ // #925
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 36672+
+
+ // #926
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 36688
+
+ // #927
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 36720
+
+ // #928
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 36768+
+
+ // #929
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 36848+
+
+ // #930
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 36928+
+
+ // #931
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 36944
+
+ // #932
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 36976
+
+ // #933
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 37008
+
+ // #934
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 37104+
+
+ // #935
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 37184+
+
+ // #936
+ "\377\376\375\374\373\372\371\370"
+ "112,111,110"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37216
+
+ // #937
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 37232
+
+ // #938
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 37264
+
+ // #939
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 37360+
+
+ // #940
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 37440+
+
+ // #941
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 37456
+
+ // #942
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 37488
+
+ // #943
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 37504
+
+ // #944
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 37552+
+
+ // #945
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 37632+
+
+ // #946
+ "255,255,255"
+ "\377\376\375\374\373" // 37648
+
+ // #947
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 37664
+
+ // #948
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 37728+
+
+ // #949
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 37808+
+
+ // #950
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 37888+
+
+ // #951
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37920+
+
+ // #952
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 37936
+
+ // #953
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37968
+
+ // #954
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 38064+
+
+ // #955
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 38144+
+
+ // #956
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 38160
+
+ // #957
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 38176
+
+ // #958
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 38208
+
+ // #959
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 38256+
+
+ // #960
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 38336+
+
+ // #961
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 38368
+
+ // #962
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 38384
+
+ // #963
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 38416
+
+ // #964
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 38512+
+
+ // #965
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 38592+
+
+ // #966
+ "255,128,224"
+ "\377\376\375\374\373" // 38608
+
+ // #967
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 38624
+
+ // #968
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 38688+
+
+ // #969
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 38768+
+
+ // #970
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 38848+
+
+ // #971
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38880
+
+ // #972
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 38896
+
+ // #973
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 38928
+
+ // #974
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 39024+
+
+ // #975
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 39104+
+
+ // #976
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 39136+
+
+ // #977
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 39152
+
+ // #978
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 39184
+
+ // #979
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 39280+
+
+ // #980
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 39360+
+
+ // #981
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 39376
+
+ // #982
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 39392
+
+ // #983
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 39424
+
+ // #984
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 39472+
+
+ // #985
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 39552+
+
+ // #986
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 39584+
+
+ // #987
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 39600
+
+ // #988
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 39648+
+
+ // #989
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 39728+
+
+ // #990
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 39808+
+
+ // #991
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 39840
+
+ // #992
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 39856
+
+ // #993
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 39888
+
+ // #994
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 39984+
+
+ // #995
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 40064+
+
+ // #996
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40096
+
+ // #997
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 40112
+
+ // #998
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 40144
+
+ // #999
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 40240+
+
+ // #1000
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 40320+
+
+ // #1001
+ "43,116,199"
+ "\377\376\375\374\373\372" // 40336
+
+ // #1002
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 40352
+
+ // #1003
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 40384
+
+ // #1004
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 40432+
+
+ // #1005
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 40512+
+
+ // #1006
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 40528
+
+ // #1007
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 40560
+
+ // #1008
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 40576
+
+ // #1009
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 40624+
+
+ // #1010
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 40704+
+
+ // #1011
+ "255,255,255"
+ "\377\376\375\374\373" // 40720
+
+ // #1012
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 40736
+
+ // #1013
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 40800+
+
+ // #1014
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 40880+
+
+ // #1015
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 40960+
+
+ // #1016
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40992+
+
+ // #1017
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 41008
+
+ // #1018
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 41040
+
+ // #1019
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 41136+
+
+ // #1020
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 41216+
+
+ // #1021
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 41232
+
+ // #1022
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 41248
+
+ // #1023
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 41280
+
+ // #1024
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 41328+
+
+ // #1025
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 41408+
+
+ // #1026
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 41440
+
+ // #1027
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 41456
+
+ // #1028
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 41488
+
+ // #1029
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 41584+
+
+ // #1030
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 41664+
+
+ // #1031
+ "255,128,224"
+ "\377\376\375\374\373" // 41680
+
+ // #1032
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 41696
+
+ // #1033
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 41760+
+
+ // #1034
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 41840+
+
+ // #1035
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 41920+
+
+ // #1036
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 41952
+
+ // #1037
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 41968
+
+ // #1038
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 42000
+
+ // #1039
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 42096+
+
+ // #1040
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 42176+
+
+ // #1041
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 42208+
+
+ // #1042
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 42224
+
+ // #1043
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 42256
+
+ // #1044
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 42352+
+
+ // #1045
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 42432+
+
+ // #1046
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 42448
+
+ // #1047
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 42464
+
+ // #1048
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 42496
+
+ // #1049
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 42544+
+
+ // #1050
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 42624+
+
+ // #1051
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 42656+
+
+ // #1052
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 42672
+
+ // #1053
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 42720+
+
+ // #1054
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 42800+
+
+ // #1055
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 42880+
+
+ // #1056
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 42912
+
+ // #1057
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 42928
+
+ // #1058
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 42960
+
+ // #1059
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 43056+
+
+ // #1060
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 43136+
+
+ // #1061
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43168
+
+ // #1062
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 43184
+
+ // #1063
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 43216
+
+ // #1064
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 43312+
+
+ // #1065
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 43392+
+
+ // #1066
+ "43,116,199"
+ "\377\376\375\374\373\372" // 43408
+
+ // #1067
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 43424
+
+ // #1068
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 43456
+
+ // #1069
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 43504+
+
+ // #1070
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 43584+
+
+ // #1071
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 43616
+
+ // #1072
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 43632
+
+ // #1073
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 43664
+
+ // #1074
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 43744+
+
+ // #1075
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 43824+
+
+ // #1076
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 43904+
+
+ // #1077
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 43920
+
+ // #1078
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 43952
+
+ // #1079
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 43984
+
+ // #1080
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 44080+
+
+ // #1081
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 44160+
+
+ // #1082
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 44176
+
+ // #1083
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 44208
+
+ // #1084
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44240
+
+ // #1085
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 44336+
+
+ // #1086
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 44416+
+
+ // #1087
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 44432
+
+ // #1088
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 44464
+
+ // #1089
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44496
+
+ // #1090
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 44592+
+
+ // #1091
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 44672+
+
+ // #1092
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 44688
+
+ // #1093
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 44720
+
+ // #1094
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 44768+
+
+ // #1095
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 44848+
+
+ // #1096
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 44928+
+
+ // #1097
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 44944
+
+ // #1098
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 44976
+
+ // #1099
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 45008
+
+ // #1100
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 45104+
+
+ // #1101
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 45184+
+
+ // #1102
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 45200
+
+ // #1103
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 45232
+
+ // #1104
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 45248
+
+ // #1105
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 45296+
+
+ // #1106
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 45376+
+
+ // #1107
+ "255,255,255"
+ "\377\376\375\374\373" // 45392
+
+ // #1108
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 45408
+
+ // #1109
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 45472+
+
+ // #1110
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 45552+
+
+ // #1111
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 45632+
+
+ // #1112
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 45664+
+
+ // #1113
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 45680
+
+ // #1114
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 45712
+
+ // #1115
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 45808+
+
+ // #1116
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 45888+
+
+ // #1117
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 45904
+
+ // #1118
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 45920
+
+ // #1119
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 45952
+
+ // #1120
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 46000+
+
+ // #1121
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 46080+
+
+ // #1122
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46112
+
+ // #1123
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 46128
+
+ // #1124
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 46160
+
+ // #1125
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 46256+
+
+ // #1126
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 46336+
+
+ // #1127
+ "255,128,224"
+ "\377\376\375\374\373" // 46352
+
+ // #1128
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 46368
+
+ // #1129
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46432+
+
+ // #1130
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 46512+
+
+ // #1131
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 46592+
+
+ // #1132
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 46624
+
+ // #1133
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 46640
+
+ // #1134
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 46672
+
+ // #1135
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 46768+
+
+ // #1136
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 46848+
+
+ // #1137
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 46880+
+
+ // #1138
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 46896
+
+ // #1139
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 46928
+
+ // #1140
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 47024+
+
+ // #1141
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 47104+
+
+ // #1142
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 47120
+
+ // #1143
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 47136
+
+ // #1144
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 47168
+
+ // #1145
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 47216+
+
+ // #1146
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 47296+
+
+ // #1147
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 47328+
+
+ // #1148
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 47344
+
+ // #1149
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 47392+
+
+ // #1150
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 47472+
+
+ // #1151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 47552+
+
+ // #1152
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 47584
+
+ // #1153
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 47600
+
+ // #1154
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 47632
+
+ // #1155
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 47728+
+
+ // #1156
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 47808+
+
+ // #1157
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 47840
+
+ // #1158
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 47856
+
+ // #1159
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 47888
+
+ // #1160
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 47984+
+
+ // #1161
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 48064+
+
+ // #1162
+ "43,116,199"
+ "\377\376\375\374\373\372" // 48080
+
+ // #1163
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 48096
+
+ // #1164
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 48128
+
+ // #1165
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 48176+
+
+ // #1166
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 48256+
+
+ // #1167
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 48304
+
+ // #1168
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 48320
+
+ // #1169
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 48336
+
+ // #1170
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 48352
+
+ // #1171
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 48432+
+
+ // #1172
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 48512+
+
+ // #1173
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 48528
+
+ // #1174
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 48560
+
+ // #1175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 48608+
+
+ // #1176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 48688+
+
+ // #1177
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 48768+
+
+ // #1178
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 48784
+
+ // #1179
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 48816
+
+ // #1180
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 48848
+
+ // #1181
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 48944+
+
+ // #1182
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 49024+
+
+ // #1183
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 49040
+
+ // #1184
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 49072
+
+ // #1185
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49104
+
+ // #1186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 49200+
+
+ // #1187
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 49280+
+
+ // #1188
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 49296
+
+ // #1189
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 49328
+
+ // #1190
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49360
+
+ // #1191
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 49456+
+
+ // #1192
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 49536+
+
+ // #1193
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 49552
+
+ // #1194
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 49584
+
+ // #1195
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 49632+
+
+ // #1196
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 49712+
+
+ // #1197
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 49792+
+
+ // #1198
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 49808
+
+ // #1199
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 49840
+
+ // #1200
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 49872
+
+ // #1201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 49968+
+
+ // #1202
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 50048+
+
+ // #1203
+ "\377\376\375\374\373\372\371\370"
+ "112,111,110"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 50080
+
+ // #1204
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 50096
+
+ // #1205
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 50128
+
+ // #1206
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 50224+
+
+ // #1207
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 50304+
+
+ // #1208
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "oxygenrc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 50336
+
+ // #1209
+ "\377\376\375\374\373\372"
+ "No Group"
+ "\377\376" // 50352
+
+ // #1210
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 50368
+
+ // #1211
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 50384
+
+ // #1212
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 50400
+
+ // #1213
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 50416
+
+ // #1214
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 50448
+
+ // #1215
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 50464
+
+ // #1216
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 50480
+
+ // #1217
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 50496
+
+ // #1218
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 50512
+
+ // #1219
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Style"
+ "\377" // 50528
+
+ // #1220
+ "\377\376\375"
+ "CacheEnabled"
+ "\377" // 50544
+
+ // #1221
+ "\377\376\375"
+ "CacheEnabled"
+ "\377" // 50560
+
+ // #1222
+ "MaxCacheSize"
+ "\377\376\375\374" // 50576
+
+ // #1223
+ "MaxCacheSize"
+ "\377\376\375\374" // 50592
+
+ // #1224
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "AnimationSteps"
+ "\377\376\375\374\373" // 50624
+
+ // #1225
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "AnimationSteps"
+ "\377\376\375\374\373" // 50656
+
+ // #1226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324"
+ "ShowMnemonics"
+ "\377\376\375\374\373\372\371" // 50720+
+
+ // #1227
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324"
+ "ShowMnemonics"
+ "\377\376\375\374\373\372\371" // 50784+
+
+ // #1228
+ "\377\376\375\374\373\372\371\370\367\366"
+ "ToolTipTransparent"
+ "\377\376\375\374" // 50816
+
+ // #1229
+ "\377\376\375\374\373\372\371\370\367\366"
+ "ToolTipTransparent"
+ "\377\376\375\374" // 50848
+
+ // #1230
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ToolTipDrawStyledFrames"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 50896
+
+ // #1231
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ToolTipDrawStyledFrames"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 50944
+
+ // #1232
+ "\377\376\375\374\373"
+ "ToolBarDrawItemSeparator"
+ "\377\376\375" // 50976+
+
+ // #1233
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ToolBarDrawItemSeparator"
+ "\377\376\375" // 51040+
+
+ // #1234
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ViewDrawTriangularExpander"
+ "\377\376\375\374\373\372\371\370" // 51088
+
+ // #1235
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ViewDrawTriangularExpander"
+ "\377\376\375\374\373\372\371\370" // 51136
+
+ // #1236
+ "\377\376\375\374\373\372\371\370\367"
+ "TE_TINY"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 51168
+
+ // #1237
+ "\377"
+ "TE_SMALL"
+ "\377\376\375\374\373\372\371" // 51184
+
+ // #1238
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "TE_NORMAL"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 51232+
+
+ // #1239
+ "\377\376\375\374"
+ "ViewTriangularExpanderSize"
+ "\377\376" // 51264
+
+ // #1240
+ "\377\376\375\374"
+ "ViewTriangularExpanderSize"
+ "\377\376" // 51296
+
+ // #1241
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "ViewDrawFocusIndicator"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51344
+
+ // #1242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "ViewDrawFocusIndicator"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51392
+
+ // #1243
+ "\377\376\375\374\373\372"
+ "ViewDrawTreeBranchLines"
+ "\377\376\375" // 51424+
+
+ // #1244
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332"
+ "ViewDrawTreeBranchLines"
+ "\377\376\375" // 51488+
+
+ // #1245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ScrollBarWidth"
+ "\377\376\375\374" // 51520
+
+ // #1246
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ScrollBarWidth"
+ "\377\376\375\374" // 51552
+
+ // #1247
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ScrollBarAddLineButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 51600
+
+ // #1248
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ScrollBarAddLineButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 51648
+
+ // #1249
+ "\377\376\375\374\373"
+ "ScrollBarSubLineButtons"
+ "\377\376\375\374" // 51680+
+
+ // #1250
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ScrollBarSubLineButtons"
+ "\377\376\375\374" // 51744+
+
+ // #1251
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ScrollBarColored"
+ "\377\376\375" // 51776
+
+ // #1252
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ScrollBarColored"
+ "\377\376\375" // 51808
+
+ // #1253
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ScrollBarBevel"
+ "\377\376\375\374" // 51840
+
+ // #1254
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ScrollBarBevel"
+ "\377\376\375\374" // 51872
+
+ // #1255
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "CS_CHECK"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51904
+
+ // #1256
+ "\377\376\375\374\373\372"
+ "CS_X"
+ "\377\376\375\374\373\372" // 51920
+
+ // #1257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "CheckBoxStyle"
+ "\377\376\375\374\373\372\371\370" // 52000+
+
+ // #1258
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325"
+ "CheckBoxStyle"
+ "\377\376\375\374\373\372\371\370" // 52064+
+
+ // #1259
+ "\377\376\375\374\373\372\371\370\367"
+ "ProgressBarAnimated"
+ "\377\376\375\374" // 52096
+
+ // #1260
+ "\377\376\375\374\373\372\371\370\367"
+ "ProgressBarAnimated"
+ "\377\376\375\374" // 52128
+
+ // #1261
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "MM_DARK"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 52160
+
+ // #1262
+ "\377\376\375\374\373"
+ "MM_SUBTLE"
+ "\377\376" // 52176
+
+ // #1263
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "MM_STRONG"
+ "\377\376\375\374\373\372\371\370" // 52208
+
+ // #1264
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347"
+ "MenuHighlightMode"
+ "\377\376\375\374\373\372" // 52256+
+
+ // #1265
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327"
+ "MenuHighlightMode"
+ "\377\376\375\374\373\372" // 52320+
+
+ // #1266
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "TabSubtleShadow"
+ "\377\376\375\374\373\372" // 52352
+
+ // #1267
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "TabSubtleShadow"
+ "\377\376\375\374\373\372" // 52384
+
+ // #1268
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "TS_SINGLE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 52416
+
+ // #1269
+ "\377\376\375\374\373"
+ "TS_PLAIN"
+ "\377\376\375" // 52432
+
+ // #1270
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "TabStyle"
+ "\377\376\375\374\373\372\371\370\367\366" // 52464
+
+ // #1271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "TabStyle"
+ "\377\376\375\374\373\372\371\370\367\366" // 52496
+
+ // #1272
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311"
+ "WindowDragEnabled"
+ "\377\376\375\374\373\372\371\370" // 52576+
+
+ // #1273
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331"
+ "WindowDragEnabled"
+ "\377\376\375\374\373\372\371\370" // 52640+
+
+ // #1274
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52656
+
+ // #1275
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 52672
+
+ // #1276
+ "WindowDragEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 52704
+
+ // #1277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 52784+
+
+ // #1278
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 52864+
+
+ // #1279
+ "\377\376\375\374\373\372\371\370\367"
+ "WD_MINIMAL"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 52896
+
+ // #1280
+ "\377\376\375\374"
+ "WD_FULL"
+ "\377\376\375\374\373" // 52912
+
+ // #1281
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "WindowDragMode"
+ "\377\376\375\374\373\372" // 52944
+
+ // #1282
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "WindowDragMode"
+ "\377\376\375\374\373\372" // 52976
+
+ // #1283
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "WidgetExplorerEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 53024
+
+ // #1284
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "WidgetExplorerEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 53072
+
+ // #1285
+ "\377"
+ "DrawWidgetRects"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 53104
+
+ // #1286
+ "\377"
+ "DrawWidgetRects"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 53136
+
+ // #1287
+ "\377"
+ "WindowDragWhiteList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 53168
+
+ // #1288
+ "\377"
+ "WindowDragWhiteList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 53200
+
+ // #1289
+ "\377\376\375\374\373"
+ "WindowDragBlackList"
+ "\377\376\375\374\373\372\371\370" // 53232
+
+ // #1290
+ "\377\376\375\374\373"
+ "WindowDragBlackList"
+ "\377\376\375\374\373\372\371\370" // 53264
+
+ // #1291
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307"
+ "UseWMMoveResize"
+ "\377\376\375\374\373\372\371\370" // 53344+
+
+ // #1292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327"
+ "UseWMMoveResize"
+ "\377\376\375\374\373\372\371\370" // 53408+
+
+ // #1293
+ "AnimationsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53440
+
+ // #1294
+ "AnimationsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53472
+
+ // #1295
+ "\377\376\375\374\373\372\371\370\367"
+ "GenericAnimationsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53520
+
+ // #1296
+ "\377\376\375\374\373\372\371\370\367"
+ "GenericAnimationsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53568
+
+ // #1297
+ "\377\376"
+ "TB_NONE"
+ "\377\376\375\374\373\372\371" // 53584
+
+ // #1298
+ "\377\376\375\374\373\372\371\370\367\366"
+ "TB_FADE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53616
+
+ // #1299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356"
+ "TB_FOLLOW_MOUSE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53664+
+
+ // #1300
+ "\377\376"
+ "ToolBarAnimationType"
+ "\377\376\375\374\373\372\371\370\367\366" // 53696
+
+ // #1301
+ "\377\376"
+ "ToolBarAnimationType"
+ "\377\376\375\374\373\372\371\370\367\366" // 53728
+
+ // #1302
+ "\377\376\375\374\373\372\371"
+ "MB_NONE"
+ "\377\376" // 53744
+
+ // #1303
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "MB_FADE"
+ "\377\376\375\374\373\372\371\370\367\366" // 53776
+
+ // #1304
+ "\377\376\375\374\373\372\371"
+ "MB_FOLLOW_MOUSE"
+ "\377\376\375\374\373\372\371\370\367\366" // 53808
+
+ // #1305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351"
+ "MenuBarAnimationType"
+ "\377\376\375\374\373" // 53856+
+
+ // #1306
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331"
+ "MenuBarAnimationType"
+ "\377\376\375\374\373" // 53920+
+
+ // #1307
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ME_NONE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53952
+
+ // #1308
+ "\377\376\375\374"
+ "ME_FADE"
+ "\377\376\375\374\373" // 53968
+
+ // #1309
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ME_FOLLOW_MOUSE"
+ "\377\376\375\374\373" // 54000
+
+ // #1310
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MenuAnimationType"
+ "\377\376\375" // 54032
+
+ // #1311
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MenuAnimationType"
+ "\377\376\375" // 54064
+
+ // #1312
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342"
+ "ProgressBarAnimationsEnabled"
+ "\377\376\375\374\373\372" // 54128+
+
+ // #1313
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342"
+ "ProgressBarAnimationsEnabled"
+ "\377\376\375\374\373\372" // 54192+
+
+ // #1314
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "GenericAnimationsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 54240
+
+ // #1315
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "GenericAnimationsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 54288
+
+ // #1316
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313"
+ "ToolBarAnimationsDuration"
+ "\377\376" // 54368+
+
+ // #1317
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ToolBarAnimationsDuration"
+ "\377\376" // 54432+
+
+ // #1318
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "MenuBarAnimationsDuration"
+ "\377\376\375\374\373\372\371\370" // 54480
+
+ // #1319
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "MenuBarAnimationsDuration"
+ "\377\376\375\374\373\372\371\370" // 54528
+
+ // #1320
+ "\377\376\375\374\373\372\371\370"
+ "MenuBarFollowMouseAnimationsDuration"
+ "\377\376\375\374" // 54576
+
+ // #1321
+ "\377\376\375\374\373\372\371\370"
+ "MenuBarFollowMouseAnimationsDuration"
+ "\377\376\375\374" // 54624
+
+ // #1322
+ "\377\376\375\374\373\372\371\370\367"
+ "MenuAnimationsDuration"
+ "\377" // 54656
+
+ // #1323
+ "\377\376\375\374\373\372\371\370\367"
+ "MenuAnimationsDuration"
+ "\377" // 54688
+
+ // #1324
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "MenuFollowMouseAnimationsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 54768+
+
+ // #1325
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "MenuFollowMouseAnimationsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 54832+
+
+ // #1326
+ "ProgressBarAnimationsDuration"
+ "\377\376\375" // 54864
+
+ // #1327
+ "ProgressBarAnimationsDuration"
+ "\377\376\375" // 54896
+
+ // #1328
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ProgressBarBusyStepDuration"
+ "\377\376\375\374\373\372\371" // 54944
+
+ // #1329
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ProgressBarBusyStepDuration"
+ "\377\376\375\374\373\372\371" // 54992
+
+ // #1330
+ "\377\376\375\374"
+ "StackedWidgetTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 55040
+
+ // #1331
+ "\377\376\375\374"
+ "StackedWidgetTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 55088
+
+ // #1332
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55104
+
+ // #1333
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 55120
+
+ // #1334
+ "\377\376\375\374\373\372\371\370"
+ "StackedWidgetTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 55168
+
+ // #1335
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 55216+
+
+ // #1336
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 55296+
+
+ // #1337
+ "\377\376\375\374\373\372\371\370\367\366"
+ "LabelTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 55344+
+
+ // #1338
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "LabelTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 55408+
+
+ // #1339
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 55424
+
+ // #1340
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 55440
+
+ // #1341
+ "\377\376\375\374\373\372\371\370"
+ "LabelTransitionsEnabled"
+ "\377" // 55472
+
+ // #1342
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 55536+
+
+ // #1343
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 55616+
+
+ // #1344
+ "\377\376"
+ "ComboBoxTransitionsEnabled"
+ "\377\376\375\374" // 55648
+
+ // #1345
+ "\377\376"
+ "ComboBoxTransitionsEnabled"
+ "\377\376\375\374" // 55680
+
+ // #1346
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55696
+
+ // #1347
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 55712
+
+ // #1348
+ "ComboBoxTransitionsEnabled"
+ "\377\376\375\374\373\372" // 55744
+
+ // #1349
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 55792+
+
+ // #1350
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 55872+
+
+ // #1351
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "LineEditTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 55920+
+
+ // #1352
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "LineEditTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 55984+
+
+ // #1353
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354"
+ "StackedWidgetTransitionsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 56048+
+
+ // #1354
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354"
+ "StackedWidgetTransitionsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 56112+
+
+ // #1355
+ "\377\376\375\374\373\372\371\370"
+ "LabelTransitionsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 56160
+
+ // #1356
+ "\377\376\375\374\373\372\371\370"
+ "LabelTransitionsDuration"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 56208
+
+ // #1357
+ "\377"
+ "ComboBoxTransitionsDuration"
+ "\377\376\375\374" // 56240
+
+ // #1358
+ "\377"
+ "ComboBoxTransitionsDuration"
+ "\377\376\375\374" // 56272
+
+ // #1359
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "LineEditTransitionsDuration"
+ "\377\376\375\374\373\372\371\370" // 56368+
+
+ // #1360
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "LineEditTransitionsDuration"
+ "\377\376\375\374\373\372\371\370" // 56432+
+
+ // #1361
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 56448
+
+ // #1362
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 56480
+
+ // #1363
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 56496
+
+ // #1364
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 56512
+
+ // #1365
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 56528
+
+ // #1366
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 56544
+
+ // #1367
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 56560
+
+ // #1368
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 56576
+
+ // #1369
+ "WindowDragEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 56608+
+
+ // #1370
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 56688+
+
+ // #1371
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 56768+
+
+ // #1372
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 56784
+
+ // #1373
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 56800
+
+ // #1374
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "StackedWidgetTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 56880+
+
+ // #1375
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 56944+
+
+ // #1376
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 57024+
+
+ // #1377
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57040
+
+ // #1378
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 57056
+
+ // #1379
+ "LabelTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 57088
+
+ // #1380
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 57136+
+
+ // #1381
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 57216+
+
+ // #1382
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 57232
+
+ // #1383
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 57248
+
+ // #1384
+ "ComboBoxTransitionsEnabled"
+ "\377\376\375\374\373\372" // 57280
+
+ // #1385
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 57328+
+
+ // #1386
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 57408+
+
+ // #1387
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 57424
+
+ // #1388
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 57456
+
+ // #1389
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 57472
+
+ // #1390
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 57488
+
+ // #1391
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 57504
+
+ // #1392
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 57520
+
+ // #1393
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 57536
+
+ // #1394
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 57552
+
+ // #1395
+ "WindowDragEnabled"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 57584
+
+ // #1396
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 57648+
+
+ // #1397
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 57728+
+
+ // #1398
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 57744
+
+ // #1399
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 57760
+
+ // #1400
+ "\377\376\375\374\373\372\371\370"
+ "StackedWidgetTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 57808
+
+ // #1401
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 57904+
+
+ // #1402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 57984+
+
+ // #1403
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 58000
+
+ // #1404
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 58016
+
+ // #1405
+ "LabelTransitionsEnabled"
+ "\377\376\375\374\373\372\371\370\367" // 58048
+
+ // #1406
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 58096+
+
+ // #1407
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 58176+
+
+ // #1408
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 58192
+
+ // #1409
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 58208
+
+ // #1410
+ "ComboBoxTransitionsEnabled"
+ "\377\376\375\374\373\372" // 58240
+
+ // #1411
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 58288+
+
+ // #1412
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 58368+
+
+ // #1413
+ "\377\376\375\374\373"
+ "MplayerWindow"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 58400
+
+ // #1414
+ "\377\376\375\374\373\372\371\370\367"
+ "@"
+ "\377\376\375\374\373\372" // 58416
+
+ // #1415
+ "\377\376\375"
+ "ViewSliders@kmix"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 58448
+
+ // #1416
+ "\377\376\375\374\373\372\371\370\367"
+ "@"
+ "\377\376\375\374\373\372" // 58464
+
+ // #1417
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334"
+ "Sidebar_Widget@konqueror"
+ "\377\376\375\374" // 58528+
+
+ // #1418
+ "\377\376\375\374\373\372\371\370\367"
+ "@"
+ "\377\376\375\374\373\372" // 58544
+
+ // #1419
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "CustomTrackView@kdenlive"
+ "\377\376\375\374\373\372\371\370" // 58592+
+
+ // #1420
+ "\377\376\375\374\373\372\371\370\367"
+ "@"
+ "\377\376\375\374\373\372" // 58608
+
+ // #1421
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "MuseScore"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 58640
+
+ // #1422
+ "\377\376\375\374\373\372\371\370\367"
+ "@"
+ "\377\376\375\374\373\372" // 58656
+
+ // #1423
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "kde"
+ "\377" // 58672
+
+ // #1424
+ "/gui_platform"
+ "\377\376\375" // 58688
+
+ // #1425
+ "Trolltech"
+ "\377\376\375\374\373\372\371" // 58704
+
+ // #1426
+ "\377\376\375\374\373\372\371\370\367"
+ ".conf"
+ "\377\376" // 58720
+
+ // #1427
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331"
+ "No such file or directory"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 58800+
+
+ // #1428
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 58816
+
+ // #1429
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 58832
+
+ // #1430
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 58848
+
+ // #1431
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 58864
+
+ // #1432
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 58880
+
+ // #1433
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 58896
+
+ // #1434
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 58912
+
+ // #1435
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 58928
+
+ // #1436
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 58944
+
+ // #1437
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 58960
+
+ // #1438
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 58976
+
+ // #1439
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 58992
+
+ // #1440
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 59024
+
+ // #1441
+ "\377\376\375\374\373\372\371\370"
+ "com.nokia.qt.QGuiPlatformPluginInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 59088
+
+ // #1442
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 59136
+
+ // #1443
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 59152
+
+ // #1444
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 59168
+
+ // #1445
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 59184
+
+ // #1446
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 59200
+
+ // #1447
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 59216
+
+ // #1448
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 59232
+
+ // #1449
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 59264
+
+ // #1450
+ "\377\376\375\374\373\372\371\370"
+ "com.nokia.qt.QGuiPlatformPluginInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 59328
+
+ // #1451
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 59376
+
+ // #1452
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 59392
+
+ // #1453
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 59408
+
+ // #1454
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 59424
+
+ // #1455
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 59456
+
+ // #1456
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 59472
+
+ // #1457
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 59568+
+
+ // #1458
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 59648+
+
+ // #1459
+ "\377\376\375\374\373\372\371\370"
+ "192,218,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59680
+
+ // #1460
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 59696
+
+ // #1461
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "BackgroundNormal"
+ "\377" // 59744+
+
+ // #1462
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 59824+
+
+ // #1463
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 59904+
+
+ // #1464
+ "196,224,255"
+ "\377\376\375\374\373" // 59920
+
+ // #1465
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 59936
+
+ // #1466
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59968
+
+ // #1467
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 60016+
+
+ // #1468
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 60096+
+
+ // #1469
+ "\377\376\375\374\373\372\371\370"
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 60128
+
+ // #1470
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 60144
+
+ // #1471
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 60176
+
+ // #1472
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 60272+
+
+ // #1473
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 60352+
+
+ // #1474
+ "\377\376\375\374\373\372\371\370"
+ "96,112,128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 60384
+
+ // #1475
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 60400
+
+ // #1476
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 60432
+
+ // #1477
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 60528+
+
+ // #1478
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 60608+
+
+ // #1479
+ "255,128,224"
+ "\377\376\375\374\373" // 60624
+
+ // #1480
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 60640
+
+ // #1481
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60704+
+
+ // #1482
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 60784+
+
+ // #1483
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 60864+
+
+ // #1484
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370" // 60880
+
+ // #1485
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 60896
+
+ // #1486
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 60928
+
+ // #1487
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 60976+
+
+ // #1488
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 61056+
+
+ // #1489
+ "69,40,134"
+ "\377\376\375\374\373\372\371" // 61072
+
+ // #1490
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 61088
+
+ // #1491
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 61120
+
+ // #1492
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 61168+
+
+ // #1493
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 61248+
+
+ // #1494
+ "191,3,3"
+ "\377\376\375\374\373\372\371\370\367" // 61264
+
+ // #1495
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 61280
+
+ // #1496
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 61312
+
+ // #1497
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 61360+
+
+ // #1498
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 61440+
+
+ // #1499
+ "176,128,0"
+ "\377\376\375\374\373\372\371" // 61456
+
+ // #1500
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 61472
+
+ // #1501
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 61536+
+
+ // #1502
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 61616+
+
+ // #1503
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 61696+
+
+ // #1504
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 61728
+
+ // #1505
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 61744
+
+ // #1506
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 61776
+
+ // #1507
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 61872+
+
+ // #1508
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 61952+
+
+ // #1509
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61984
+
+ // #1510
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 62000
+
+ // #1511
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 62032
+
+ // #1512
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 62128+
+
+ // #1513
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 62208+
+
+ // #1514
+ "43,116,199"
+ "\377\376\375\374\373\372" // 62224
+
+ // #1515
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 62240
+
+ // #1516
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 62272
+
+ // #1517
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 62320+
+
+ // #1518
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 62400+
+
+ // #1519
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 62416
+
+ // #1520
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 62448
+
+ // #1521
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 62464
+
+ // #1522
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 62512+
+
+ // #1523
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 62592+
+
+ // #1524
+ "255,255,255"
+ "\377\376\375\374\373" // 62608
+
+ // #1525
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 62624
+
+ // #1526
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 62688+
+
+ // #1527
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 62768+
+
+ // #1528
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 62848+
+
+ // #1529
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 62880+
+
+ // #1530
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 62896
+
+ // #1531
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 62928
+
+ // #1532
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 63024+
+
+ // #1533
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 63104+
+
+ // #1534
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 63120
+
+ // #1535
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 63136
+
+ // #1536
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 63168
+
+ // #1537
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 63216+
+
+ // #1538
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 63296+
+
+ // #1539
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 63328
+
+ // #1540
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 63344
+
+ // #1541
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 63376
+
+ // #1542
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 63472+
+
+ // #1543
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 63552+
+
+ // #1544
+ "255,128,224"
+ "\377\376\375\374\373" // 63568
+
+ // #1545
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 63584
+
+ // #1546
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 63648+
+
+ // #1547
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 63728+
+
+ // #1548
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 63808+
+
+ // #1549
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 63840
+
+ // #1550
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 63856
+
+ // #1551
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 63888
+
+ // #1552
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 63984+
+
+ // #1553
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 64064+
+
+ // #1554
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 64096+
+
+ // #1555
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 64112
+
+ // #1556
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 64144
+
+ // #1557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 64240+
+
+ // #1558
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 64320+
+
+ // #1559
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 64336
+
+ // #1560
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 64352
+
+ // #1561
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 64384
+
+ // #1562
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 64432+
+
+ // #1563
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 64512+
+
+ // #1564
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 64544+
+
+ // #1565
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 64560
+
+ // #1566
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 64608+
+
+ // #1567
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 64688+
+
+ // #1568
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 64768+
+
+ // #1569
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370" // 64784
+
+ // #1570
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 64800
+
+ // #1571
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 64832
+
+ // #1572
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 64880+
+
+ // #1573
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 64960+
+
+ // #1574
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64992
+
+ // #1575
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 65008
+
+ // #1576
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 65040
+
+ // #1577
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 65136+
+
+ // #1578
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 65216+
+
+ // #1579
+ "43,116,199"
+ "\377\376\375\374\373\372" // 65232
+
+ // #1580
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 65248
+
+ // #1581
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 65280
+
+ // #1582
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 65328+
+
+ // #1583
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 65408+
+
+ // #1584
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 65424
+
+ // #1585
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 65456
+
+ // #1586
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 65472
+
+ // #1587
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 65520+
+
+ // #1588
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 65600+
+
+ // #1589
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65632
+
+ // #1590
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 65648
+
+ // #1591
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "BackgroundNormal"
+ "\377" // 65696+
+
+ // #1592
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 65776+
+
+ // #1593
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 65856+
+
+ // #1594
+ "\377\376\375\374\373\372\371\370"
+ "218,217,216"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65888
+
+ // #1595
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 65904
+
+ // #1596
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65936
+
+ // #1597
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 66032+
+
+ // #1598
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 66112+
+
+ // #1599
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 66128
+
+ // #1600
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 66144
+
+ // #1601
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 66176
+
+ // #1602
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 66224+
+
+ // #1603
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 66304+
+
+ // #1604
+ "136,135,134"
+ "\377\376\375\374\373" // 66320
+
+ // #1605
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 66336
+
+ // #1606
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 66368
+
+ // #1607
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 66416+
+
+ // #1608
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 66496+
+
+ // #1609
+ "255,128,224"
+ "\377\376\375\374\373" // 66512
+
+ // #1610
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 66528
+
+ // #1611
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 66592+
+
+ // #1612
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 66672+
+
+ // #1613
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 66752+
+
+ // #1614
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 66784
+
+ // #1615
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 66800
+
+ // #1616
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 66832
+
+ // #1617
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 66928+
+
+ // #1618
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 67008+
+
+ // #1619
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 67040+
+
+ // #1620
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 67056
+
+ // #1621
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 67088
+
+ // #1622
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 67184+
+
+ // #1623
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 67264+
+
+ // #1624
+ "191,3,3"
+ "\377\376\375\374\373\372\371\370\367" // 67280
+
+ // #1625
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 67296
+
+ // #1626
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 67328
+
+ // #1627
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 67376+
+
+ // #1628
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 67456+
+
+ // #1629
+ "176,128,0"
+ "\377\376\375\374\373\372\371" // 67472
+
+ // #1630
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 67488
+
+ // #1631
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 67552+
+
+ // #1632
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 67632+
+
+ // #1633
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 67712+
+
+ // #1634
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 67744
+
+ // #1635
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 67760
+
+ // #1636
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 67792
+
+ // #1637
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 67888+
+
+ // #1638
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 67968+
+
+ // #1639
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68000
+
+ // #1640
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 68016
+
+ // #1641
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 68048
+
+ // #1642
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 68144+
+
+ // #1643
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 68224+
+
+ // #1644
+ "43,116,199"
+ "\377\376\375\374\373\372" // 68240
+
+ // #1645
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 68256
+
+ // #1646
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 68288
+
+ // #1647
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 68336+
+
+ // #1648
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 68416+
+
+ // #1649
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 68432
+
+ // #1650
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 68464
+
+ // #1651
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 68480
+
+ // #1652
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 68528+
+
+ // #1653
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 68608+
+
+ // #1654
+ "232,231,230"
+ "\377\376\375\374\373" // 68624
+
+ // #1655
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 68640
+
+ // #1656
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 68704+
+
+ // #1657
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 68784+
+
+ // #1658
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 68864+
+
+ // #1659
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68896+
+
+ // #1660
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 68912
+
+ // #1661
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68944
+
+ // #1662
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 69040+
+
+ // #1663
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 69120+
+
+ // #1664
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 69136
+
+ // #1665
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 69152
+
+ // #1666
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 69184
+
+ // #1667
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 69232+
+
+ // #1668
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 69312+
+
+ // #1669
+ "136,135,134"
+ "\377\376\375\374\373" // 69328
+
+ // #1670
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 69344
+
+ // #1671
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 69376
+
+ // #1672
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 69424+
+
+ // #1673
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 69504+
+
+ // #1674
+ "\377\376\375\374\373\372\371\370"
+ "255,128,224"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 69536
+
+ // #1675
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 69552
+
+ // #1676
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69600+
+
+ // #1677
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 69680+
+
+ // #1678
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 69760+
+
+ // #1679
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 69792
+
+ // #1680
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 69808
+
+ // #1681
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 69840
+
+ // #1682
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 69936+
+
+ // #1683
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 70016+
+
+ // #1684
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 70048+
+
+ // #1685
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 70064
+
+ // #1686
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 70096
+
+ // #1687
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 70192+
+
+ // #1688
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 70272+
+
+ // #1689
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 70288
+
+ // #1690
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 70304
+
+ // #1691
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 70336
+
+ // #1692
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 70384+
+
+ // #1693
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 70464+
+
+ // #1694
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 70496
+
+ // #1695
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 70512
+
+ // #1696
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 70560+
+
+ // #1697
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 70640+
+
+ // #1698
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 70720+
+
+ // #1699
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370" // 70736
+
+ // #1700
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 70752
+
+ // #1701
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 70784
+
+ // #1702
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 70832+
+
+ // #1703
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 70912+
+
+ // #1704
+ "119,183,255"
+ "\377\376\375\374\373" // 70928
+
+ // #1705
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 70944
+
+ // #1706
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 70976
+
+ // #1707
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 71024+
+
+ // #1708
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 71104+
+
+ // #1709
+ "\377\376\375\374\373\372\371\370"
+ "43,116,199"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 71136
+
+ // #1710
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 71152
+
+ // #1711
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 71184
+
+ // #1712
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 71280+
+
+ // #1713
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 71360+
+
+ // #1714
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 71376
+
+ // #1715
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 71392
+
+ // #1716
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 71408
+
+ // #1717
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 71472+
+
+ // #1718
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 71552+
+
+ // #1719
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 71568
+
+ // #1720
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 71584
+
+ // #1721
+ "ChangeSelectionColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 71616
+
+ // #1722
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 71664+
+
+ // #1723
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 71744+
+
+ // #1724
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 71760
+
+ // #1725
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 71792
+
+ // #1726
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 71808
+
+ // #1727
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 71856+
+
+ // #1728
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 71936+
+
+ // #1729
+ "65,139,212"
+ "\377\376\375\374\373\372" // 71952
+
+ // #1730
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 71968
+
+ // #1731
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 72032+
+
+ // #1732
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 72112+
+
+ // #1733
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 72192+
+
+ // #1734
+ "62,138,204"
+ "\377\376\375\374\373\372" // 72208
+
+ // #1735
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 72224
+
+ // #1736
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72256
+
+ // #1737
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 72304+
+
+ // #1738
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 72384+
+
+ // #1739
+ "255,255,255"
+ "\377\376\375\374\373" // 72400
+
+ // #1740
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 72416
+
+ // #1741
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 72448
+
+ // #1742
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 72496+
+
+ // #1743
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 72576+
+
+ // #1744
+ "165,193,228"
+ "\377\376\375\374\373" // 72592
+
+ // #1745
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 72608
+
+ // #1746
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 72640
+
+ // #1747
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 72688+
+
+ // #1748
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 72768+
+
+ // #1749
+ "\377\376\375\374\373\372\371\370"
+ "255,128,224"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72800
+
+ // #1750
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 72816
+
+ // #1751
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72864+
+
+ // #1752
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 72944+
+
+ // #1753
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 73024+
+
+ // #1754
+ "\377\376\375\374\373\372\371\370"
+ "0,49,110"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 73056
+
+ // #1755
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 73072
+
+ // #1756
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 73104
+
+ // #1757
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 73200+
+
+ // #1758
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 73280+
+
+ // #1759
+ "69,40,134"
+ "\377\376\375\374\373\372\371" // 73296
+
+ // #1760
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 73312
+
+ // #1761
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 73344
+
+ // #1762
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 73392+
+
+ // #1763
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 73472+
+
+ // #1764
+ "156,14,14"
+ "\377\376\375\374\373\372\371" // 73488
+
+ // #1765
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 73504
+
+ // #1766
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 73536
+
+ // #1767
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 73584+
+
+ // #1768
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 73664+
+
+ // #1769
+ "\377\376\375\374\373\372\371\370"
+ "255,221,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 73696
+
+ // #1770
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 73712
+
+ // #1771
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 73760+
+
+ // #1772
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 73840+
+
+ // #1773
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 73920+
+
+ // #1774
+ "\377\376\375\374\373\372\371\370"
+ "128,255,128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 73952
+
+ // #1775
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 73968
+
+ // #1776
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 74000
+
+ // #1777
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 74096+
+
+ // #1778
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 74176+
+
+ // #1779
+ "119,183,255"
+ "\377\376\375\374\373" // 74192
+
+ // #1780
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 74208
+
+ // #1781
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 74240
+
+ // #1782
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 74288+
+
+ // #1783
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 74368+
+
+ // #1784
+ "\377\376\375\374\373\372\371\370"
+ "43,116,199"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 74400
+
+ // #1785
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 74416
+
+ // #1786
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 74448
+
+ // #1787
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 74544+
+
+ // #1788
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 74624+
+
+ // #1789
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 74640
+
+ // #1790
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 74672
+
+ // #1791
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 74688
+
+ // #1792
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 74736+
+
+ // #1793
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 74816+
+
+ // #1794
+ "255,255,255"
+ "\377\376\375\374\373" // 74832
+
+ // #1795
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 74848
+
+ // #1796
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 74912+
+
+ // #1797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 74992+
+
+ // #1798
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 75072+
+
+ // #1799
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75104+
+
+ // #1800
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 75120
+
+ // #1801
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75152
+
+ // #1802
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 75248+
+
+ // #1803
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 75328+
+
+ // #1804
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 75344
+
+ // #1805
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 75360
+
+ // #1806
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 75392
+
+ // #1807
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 75440+
+
+ // #1808
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 75520+
+
+ // #1809
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75552
+
+ // #1810
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 75568
+
+ // #1811
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 75600
+
+ // #1812
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 75696+
+
+ // #1813
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 75776+
+
+ // #1814
+ "255,128,224"
+ "\377\376\375\374\373" // 75792
+
+ // #1815
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 75808
+
+ // #1816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75872+
+
+ // #1817
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 75952+
+
+ // #1818
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 76032+
+
+ // #1819
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 76064
+
+ // #1820
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 76080
+
+ // #1821
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 76112
+
+ // #1822
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 76208+
+
+ // #1823
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 76288+
+
+ // #1824
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 76320+
+
+ // #1825
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 76336
+
+ // #1826
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 76368
+
+ // #1827
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 76464+
+
+ // #1828
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 76544+
+
+ // #1829
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 76560
+
+ // #1830
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 76576
+
+ // #1831
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 76608
+
+ // #1832
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 76656+
+
+ // #1833
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 76736+
+
+ // #1834
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 76768+
+
+ // #1835
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 76784
+
+ // #1836
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 76832+
+
+ // #1837
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 76912+
+
+ // #1838
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 76992+
+
+ // #1839
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370" // 77008
+
+ // #1840
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 77024
+
+ // #1841
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 77056
+
+ // #1842
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 77104+
+
+ // #1843
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 77184+
+
+ // #1844
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 77216
+
+ // #1845
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 77232
+
+ // #1846
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 77264
+
+ // #1847
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 77360+
+
+ // #1848
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 77440+
+
+ // #1849
+ "43,116,199"
+ "\377\376\375\374\373\372" // 77456
+
+ // #1850
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 77472
+
+ // #1851
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 77504
+
+ // #1852
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 77552+
+
+ // #1853
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 77632+
+
+ // #1854
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 77680
+
+ // #1855
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 77696
+
+ // #1856
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 77712
+
+ // #1857
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 77728
+
+ // #1858
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 77808+
+
+ // #1859
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 77888+
+
+ // #1860
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 77904
+
+ // #1861
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 77936
+
+ // #1862
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 77984+
+
+ // #1863
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 78064+
+
+ // #1864
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 78144+
+
+ // #1865
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 78160
+
+ // #1866
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 78192
+
+ // #1867
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 78224
+
+ // #1868
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 78320+
+
+ // #1869
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 78400+
+
+ // #1870
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 78416
+
+ // #1871
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 78448
+
+ // #1872
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78480
+
+ // #1873
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 78576+
+
+ // #1874
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 78656+
+
+ // #1875
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 78672
+
+ // #1876
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 78704
+
+ // #1877
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78736
+
+ // #1878
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 78832+
+
+ // #1879
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 78912+
+
+ // #1880
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 78928
+
+ // #1881
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 78960
+
+ // #1882
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 79008+
+
+ // #1883
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 79088+
+
+ // #1884
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 79168+
+
+ // #1885
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 79184
+
+ // #1886
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 79216
+
+ // #1887
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 79248
+
+ // #1888
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 79344+
+
+ // #1889
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 79424+
+
+ // #1890
+ "112,111,110"
+ "\377\376\375\374\373" // 79440
+
+ // #1891
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 79456
+
+ // #1892
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 79488
+
+ // #1893
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 79536+
+
+ // #1894
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 79616+
+
+ // #1895
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 79632
+
+ // #1896
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 79664
+
+ // #1897
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 79680
+
+ // #1898
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 79728+
+
+ // #1899
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 79808+
+
+ // #1900
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79840
+
+ // #1901
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 79856
+
+ // #1902
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "BackgroundNormal"
+ "\377" // 79904+
+
+ // #1903
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 79984+
+
+ // #1904
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 80064+
+
+ // #1905
+ "\377\376\375\374\373\372\371\370"
+ "218,217,216"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 80096
+
+ // #1906
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 80112
+
+ // #1907
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 80144
+
+ // #1908
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 80240+
+
+ // #1909
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 80320+
+
+ // #1910
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 80336
+
+ // #1911
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 80352
+
+ // #1912
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 80384
+
+ // #1913
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 80432+
+
+ // #1914
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 80512+
+
+ // #1915
+ "136,135,134"
+ "\377\376\375\374\373" // 80528
+
+ // #1916
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 80544
+
+ // #1917
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 80576
+
+ // #1918
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 80624+
+
+ // #1919
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 80704+
+
+ // #1920
+ "255,128,224"
+ "\377\376\375\374\373" // 80720
+
+ // #1921
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 80736
+
+ // #1922
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80800+
+
+ // #1923
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 80880+
+
+ // #1924
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 80960+
+
+ // #1925
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 80992
+
+ // #1926
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 81008
+
+ // #1927
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 81040
+
+ // #1928
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 81136+
+
+ // #1929
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 81216+
+
+ // #1930
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 81248+
+
+ // #1931
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 81264
+
+ // #1932
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 81296
+
+ // #1933
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 81392+
+
+ // #1934
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 81472+
+
+ // #1935
+ "191,3,3"
+ "\377\376\375\374\373\372\371\370\367" // 81488
+
+ // #1936
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 81504
+
+ // #1937
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 81536
+
+ // #1938
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 81584+
+
+ // #1939
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 81664+
+
+ // #1940
+ "176,128,0"
+ "\377\376\375\374\373\372\371" // 81680
+
+ // #1941
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 81696
+
+ // #1942
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 81760+
+
+ // #1943
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 81840+
+
+ // #1944
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 81920+
+
+ // #1945
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 81952
+
+ // #1946
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 81968
+
+ // #1947
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 82000
+
+ // #1948
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 82096+
+
+ // #1949
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 82176+
+
+ // #1950
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82208
+
+ // #1951
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 82224
+
+ // #1952
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 82256
+
+ // #1953
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 82352+
+
+ // #1954
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 82432+
+
+ // #1955
+ "43,116,199"
+ "\377\376\375\374\373\372" // 82448
+
+ // #1956
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 82464
+
+ // #1957
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 82496
+
+ // #1958
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 82544+
+
+ // #1959
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 82624+
+
+ // #1960
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82672
+
+ // #1961
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 82688
+
+ // #1962
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 82704
+
+ // #1963
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 82720
+
+ // #1964
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 82800+
+
+ // #1965
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 82880+
+
+ // #1966
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 82896
+
+ // #1967
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 82928
+
+ // #1968
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 82976+
+
+ // #1969
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 83056+
+
+ // #1970
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 83136+
+
+ // #1971
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 83152
+
+ // #1972
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 83184
+
+ // #1973
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 83216
+
+ // #1974
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 83312+
+
+ // #1975
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 83392+
+
+ // #1976
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 83408
+
+ // #1977
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 83440
+
+ // #1978
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83472
+
+ // #1979
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 83568+
+
+ // #1980
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 83648+
+
+ // #1981
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 83664
+
+ // #1982
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 83696
+
+ // #1983
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83728
+
+ // #1984
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 83824+
+
+ // #1985
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 83904+
+
+ // #1986
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 83920
+
+ // #1987
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 83952
+
+ // #1988
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 84000+
+
+ // #1989
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 84080+
+
+ // #1990
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 84160+
+
+ // #1991
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 84176
+
+ // #1992
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 84208
+
+ // #1993
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 84240
+
+ // #1994
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 84336+
+
+ // #1995
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 84416+
+
+ // #1996
+ "112,111,110"
+ "\377\376\375\374\373" // 84432
+
+ // #1997
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 84448
+
+ // #1998
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 84480
+
+ // #1999
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 84528+
+
+ // #2000
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 84608+
+
+ // #2001
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 84624
+
+ // #2002
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 84656
+
+ // #2003
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 84672
+
+ // #2004
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 84720+
+
+ // #2005
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 84800+
+
+ // #2006
+ "232,231,230"
+ "\377\376\375\374\373" // 84816
+
+ // #2007
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 84832
+
+ // #2008
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 84896+
+
+ // #2009
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 84976+
+
+ // #2010
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 85056+
+
+ // #2011
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 85088+
+
+ // #2012
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 85104
+
+ // #2013
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 85136
+
+ // #2014
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 85232+
+
+ // #2015
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 85312+
+
+ // #2016
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 85328
+
+ // #2017
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 85344
+
+ // #2018
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 85376
+
+ // #2019
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 85424+
+
+ // #2020
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 85504+
+
+ // #2021
+ "136,135,134"
+ "\377\376\375\374\373" // 85520
+
+ // #2022
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 85536
+
+ // #2023
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 85568
+
+ // #2024
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 85616+
+
+ // #2025
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 85696+
+
+ // #2026
+ "\377\376\375\374\373\372\371\370"
+ "255,128,224"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 85728
+
+ // #2027
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 85744
+
+ // #2028
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 85792+
+
+ // #2029
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 85872+
+
+ // #2030
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 85952+
+
+ // #2031
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 85984
+
+ // #2032
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 86000
+
+ // #2033
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 86032
+
+ // #2034
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 86128+
+
+ // #2035
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 86208+
+
+ // #2036
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 86240+
+
+ // #2037
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 86256
+
+ // #2038
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 86288
+
+ // #2039
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 86384+
+
+ // #2040
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 86464+
+
+ // #2041
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 86480
+
+ // #2042
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 86496
+
+ // #2043
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 86528
+
+ // #2044
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 86576+
+
+ // #2045
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 86656+
+
+ // #2046
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 86688
+
+ // #2047
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 86704
+
+ // #2048
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 86752+
+
+ // #2049
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 86832+
+
+ // #2050
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 86912+
+
+ // #2051
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370" // 86928
+
+ // #2052
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 86944
+
+ // #2053
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 86976
+
+ // #2054
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 87024+
+
+ // #2055
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 87104+
+
+ // #2056
+ "119,183,255"
+ "\377\376\375\374\373" // 87120
+
+ // #2057
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 87136
+
+ // #2058
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 87168
+
+ // #2059
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 87216+
+
+ // #2060
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 87296+
+
+ // #2061
+ "\377\376\375\374\373\372\371\370"
+ "43,116,199"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 87328
+
+ // #2062
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 87344
+
+ // #2063
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 87376
+
+ // #2064
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 87472+
+
+ // #2065
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 87552+
+
+ // #2066
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 87600
+
+ // #2067
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 87616
+
+ // #2068
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 87632
+
+ // #2069
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 87648
+
+ // #2070
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 87728+
+
+ // #2071
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 87808+
+
+ // #2072
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 87824
+
+ // #2073
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 87856
+
+ // #2074
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 87904+
+
+ // #2075
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 87984+
+
+ // #2076
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 88064+
+
+ // #2077
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 88080
+
+ // #2078
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 88112
+
+ // #2079
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 88144
+
+ // #2080
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 88240+
+
+ // #2081
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 88320+
+
+ // #2082
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 88336
+
+ // #2083
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 88368
+
+ // #2084
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88400
+
+ // #2085
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 88496+
+
+ // #2086
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 88576+
+
+ // #2087
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 88592
+
+ // #2088
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 88624
+
+ // #2089
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88656
+
+ // #2090
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 88752+
+
+ // #2091
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 88832+
+
+ // #2092
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 88848
+
+ // #2093
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 88880
+
+ // #2094
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 88928+
+
+ // #2095
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 89008+
+
+ // #2096
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 89088+
+
+ // #2097
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 89104
+
+ // #2098
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 89136
+
+ // #2099
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 89168
+
+ // #2100
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 89264+
+
+ // #2101
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 89344+
+
+ // #2102
+ "112,111,110"
+ "\377\376\375\374\373" // 89360
+
+ // #2103
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 89376
+
+ // #2104
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 89408
+
+ // #2105
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 89456+
+
+ // #2106
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 89536+
+
+ // #2107
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 89552
+
+ // #2108
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 89568
+
+ // #2109
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 89584
+
+ // #2110
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 89648+
+
+ // #2111
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 89728+
+
+ // #2112
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 89744
+
+ // #2113
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 89760
+
+ // #2114
+ "ChangeSelectionColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 89792
+
+ // #2115
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 89840+
+
+ // #2116
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 89920+
+
+ // #2117
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 89936
+
+ // #2118
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 89952
+
+ // #2119
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 89968
+
+ // #2120
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 90032+
+
+ // #2121
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 90112+
+
+ // #2122
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 90128
+
+ // #2123
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 90144
+
+ // #2124
+ "ChangeSelectionColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 90176
+
+ // #2125
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 90224+
+
+ // #2126
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 90304+
+
+ // #2127
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 90320
+
+ // #2128
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 90352
+
+ // #2129
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 90368
+
+ // #2130
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 90416+
+
+ // #2131
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 90496+
+
+ // #2132
+ "65,139,212"
+ "\377\376\375\374\373\372" // 90512
+
+ // #2133
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 90528
+
+ // #2134
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 90592+
+
+ // #2135
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 90672+
+
+ // #2136
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 90752+
+
+ // #2137
+ "62,138,204"
+ "\377\376\375\374\373\372" // 90768
+
+ // #2138
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 90784
+
+ // #2139
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 90816
+
+ // #2140
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 90864+
+
+ // #2141
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 90944+
+
+ // #2142
+ "255,255,255"
+ "\377\376\375\374\373" // 90960
+
+ // #2143
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 90976
+
+ // #2144
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 91008
+
+ // #2145
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 91056+
+
+ // #2146
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 91136+
+
+ // #2147
+ "165,193,228"
+ "\377\376\375\374\373" // 91152
+
+ // #2148
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 91168
+
+ // #2149
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 91200
+
+ // #2150
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 91248+
+
+ // #2151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 91328+
+
+ // #2152
+ "\377\376\375\374\373\372\371\370"
+ "255,128,224"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91360
+
+ // #2153
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 91376
+
+ // #2154
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91424+
+
+ // #2155
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 91504+
+
+ // #2156
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 91584+
+
+ // #2157
+ "\377\376\375\374\373\372\371\370"
+ "0,49,110"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 91616
+
+ // #2158
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 91632
+
+ // #2159
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 91664
+
+ // #2160
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 91760+
+
+ // #2161
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 91840+
+
+ // #2162
+ "69,40,134"
+ "\377\376\375\374\373\372\371" // 91856
+
+ // #2163
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 91872
+
+ // #2164
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 91904
+
+ // #2165
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 91952+
+
+ // #2166
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 92032+
+
+ // #2167
+ "156,14,14"
+ "\377\376\375\374\373\372\371" // 92048
+
+ // #2168
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 92064
+
+ // #2169
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 92096
+
+ // #2170
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 92144+
+
+ // #2171
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 92224+
+
+ // #2172
+ "\377\376\375\374\373\372\371\370"
+ "255,221,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 92256
+
+ // #2173
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 92272
+
+ // #2174
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 92320+
+
+ // #2175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 92400+
+
+ // #2176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 92480+
+
+ // #2177
+ "\377\376\375\374\373\372\371\370"
+ "128,255,128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 92512
+
+ // #2178
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 92528
+
+ // #2179
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 92560
+
+ // #2180
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 92656+
+
+ // #2181
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 92736+
+
+ // #2182
+ "119,183,255"
+ "\377\376\375\374\373" // 92752
+
+ // #2183
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 92768
+
+ // #2184
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 92800
+
+ // #2185
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 92848+
+
+ // #2186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 92928+
+
+ // #2187
+ "\377\376\375\374\373\372\371\370"
+ "43,116,199"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 92960
+
+ // #2188
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 92976
+
+ // #2189
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 93008
+
+ // #2190
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 93104+
+
+ // #2191
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 93184+
+
+ // #2192
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 93200
+
+ // #2193
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 93232
+
+ // #2194
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 93248
+
+ // #2195
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 93296+
+
+ // #2196
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 93376+
+
+ // #2197
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93408
+
+ // #2198
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 93424
+
+ // #2199
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "BackgroundNormal"
+ "\377" // 93472+
+
+ // #2200
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 93552+
+
+ // #2201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 93632+
+
+ // #2202
+ "\377\376\375\374\373\372\371\370"
+ "218,217,216"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93664
+
+ // #2203
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 93680
+
+ // #2204
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93712
+
+ // #2205
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 93808+
+
+ // #2206
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 93888+
+
+ // #2207
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 93904
+
+ // #2208
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 93920
+
+ // #2209
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 93952
+
+ // #2210
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 94000+
+
+ // #2211
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 94080+
+
+ // #2212
+ "136,135,134"
+ "\377\376\375\374\373" // 94096
+
+ // #2213
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 94112
+
+ // #2214
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 94144
+
+ // #2215
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 94192+
+
+ // #2216
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 94272+
+
+ // #2217
+ "255,128,224"
+ "\377\376\375\374\373" // 94288
+
+ // #2218
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 94304
+
+ // #2219
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 94368+
+
+ // #2220
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 94448+
+
+ // #2221
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 94528+
+
+ // #2222
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 94560
+
+ // #2223
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 94576
+
+ // #2224
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 94608
+
+ // #2225
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 94704+
+
+ // #2226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 94784+
+
+ // #2227
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 94816+
+
+ // #2228
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 94832
+
+ // #2229
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 94864
+
+ // #2230
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 94960+
+
+ // #2231
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 95040+
+
+ // #2232
+ "191,3,3"
+ "\377\376\375\374\373\372\371\370\367" // 95056
+
+ // #2233
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 95072
+
+ // #2234
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 95104
+
+ // #2235
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 95152+
+
+ // #2236
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 95232+
+
+ // #2237
+ "176,128,0"
+ "\377\376\375\374\373\372\371" // 95248
+
+ // #2238
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 95264
+
+ // #2239
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 95328+
+
+ // #2240
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 95408+
+
+ // #2241
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 95488+
+
+ // #2242
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 95520
+
+ // #2243
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 95536
+
+ // #2244
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 95568
+
+ // #2245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 95664+
+
+ // #2246
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 95744+
+
+ // #2247
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 95776
+
+ // #2248
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 95792
+
+ // #2249
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 95824
+
+ // #2250
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 95920+
+
+ // #2251
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 96000+
+
+ // #2252
+ "43,116,199"
+ "\377\376\375\374\373\372" // 96016
+
+ // #2253
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 96032
+
+ // #2254
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 96064
+
+ // #2255
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 96112+
+
+ // #2256
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 96192+
+
+ // #2257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ColorEffects:Inactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 96240
+
+ // #2258
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 96256
+
+ // #2259
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 96272
+
+ // #2260
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 96288
+
+ // #2261
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 96368+
+
+ // #2262
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 96448+
+
+ // #2263
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 96464
+
+ // #2264
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 96496
+
+ // #2265
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 96544+
+
+ // #2266
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 96624+
+
+ // #2267
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 96704+
+
+ // #2268
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 96720
+
+ // #2269
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 96752
+
+ // #2270
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 96784
+
+ // #2271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 96880+
+
+ // #2272
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 96960+
+
+ // #2273
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 96976
+
+ // #2274
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 97008
+
+ // #2275
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97040
+
+ // #2276
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 97136+
+
+ // #2277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 97216+
+
+ // #2278
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 97232
+
+ // #2279
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 97264
+
+ // #2280
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97296
+
+ // #2281
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 97392+
+
+ // #2282
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 97472+
+
+ // #2283
+ "\377\376\375\374\373\372\371\370"
+ "0.025"
+ "\377\376\375" // 97488
+
+ // #2284
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 97520
+
+ // #2285
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 97568+
+
+ // #2286
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 97648+
+
+ // #2287
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 97728+
+
+ // #2288
+ "\377\376\375\374\373\372\371\370"
+ "0.1"
+ "\377\376\375\374\373" // 97744
+
+ // #2289
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 97776
+
+ // #2290
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 97808
+
+ // #2291
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 97904+
+
+ // #2292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 97984+
+
+ // #2293
+ "112,111,110"
+ "\377\376\375\374\373" // 98000
+
+ // #2294
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 98016
+
+ // #2295
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 98048
+
+ // #2296
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 98096+
+
+ // #2297
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 98176+
+
+ // #2298
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 98192
+
+ // #2299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 98224
+
+ // #2300
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 98240
+
+ // #2301
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 98288+
+
+ // #2302
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 98368+
+
+ // #2303
+ "255,255,255"
+ "\377\376\375\374\373" // 98384
+
+ // #2304
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 98400
+
+ // #2305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 98464+
+
+ // #2306
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 98544+
+
+ // #2307
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 98624+
+
+ // #2308
+ "\377\376\375\374\373\372\371\370"
+ "248,247,246"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98656+
+
+ // #2309
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 98672
+
+ // #2310
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98704
+
+ // #2311
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 98800+
+
+ // #2312
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 98880+
+
+ // #2313
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 98896
+
+ // #2314
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 98912
+
+ // #2315
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 98944
+
+ // #2316
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 98992+
+
+ // #2317
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 99072+
+
+ // #2318
+ "\377\376\375\374\373\372\371\370"
+ "136,135,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 99104
+
+ // #2319
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 99120
+
+ // #2320
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 99152
+
+ // #2321
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 99248+
+
+ // #2322
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 99328+
+
+ // #2323
+ "255,128,224"
+ "\377\376\375\374\373" // 99344
+
+ // #2324
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 99360
+
+ // #2325
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99424+
+
+ // #2326
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 99504+
+
+ // #2327
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 99584+
+
+ // #2328
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 99616
+
+ // #2329
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 99632
+
+ // #2330
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 99664
+
+ // #2331
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 99760+
+
+ // #2332
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 99840+
+
+ // #2333
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 99872+
+
+ // #2334
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 99888
+
+ // #2335
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 99920
+
+ // #2336
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 100016+
+
+ // #2337
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 100096+
+
+ // #2338
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 100112
+
+ // #2339
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 100128
+
+ // #2340
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 100160
+
+ // #2341
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 100208+
+
+ // #2342
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 100288+
+
+ // #2343
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 100320+
+
+ // #2344
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 100336
+
+ // #2345
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 100384+
+
+ // #2346
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 100464+
+
+ // #2347
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 100544+
+
+ // #2348
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370" // 100560
+
+ // #2349
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 100576
+
+ // #2350
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 100608
+
+ // #2351
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 100656+
+
+ // #2352
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 100736+
+
+ // #2353
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 100768
+
+ // #2354
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 100784
+
+ // #2355
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 100816
+
+ // #2356
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 100912+
+
+ // #2357
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 100992+
+
+ // #2358
+ "43,116,199"
+ "\377\376\375\374\373\372" // 101008
+
+ // #2359
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 101024
+
+ // #2360
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 101056
+
+ // #2361
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 101104+
+
+ // #2362
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 101184+
+
+ // #2363
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 101216
+
+ // #2364
+ "\377\376\375\374\373\372\371\370"
+ "2"
+ "\377\376\375\374\373\372\371" // 101232
+
+ // #2365
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 101264
+
+ // #2366
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 101344+
+
+ // #2367
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 101424+
+
+ // #2368
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 101504+
+
+ // #2369
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 101520
+
+ // #2370
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 101552
+
+ // #2371
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 101584
+
+ // #2372
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 101680+
+
+ // #2373
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 101760+
+
+ // #2374
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 101776
+
+ // #2375
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 101808
+
+ // #2376
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101840
+
+ // #2377
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 101936+
+
+ // #2378
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 102016+
+
+ // #2379
+ "0.1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102032
+
+ // #2380
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 102064
+
+ // #2381
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 102096
+
+ // #2382
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 102192+
+
+ // #2383
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 102272+
+
+ // #2384
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 102288
+
+ // #2385
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 102320
+
+ // #2386
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 102368+
+
+ // #2387
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 102448+
+
+ // #2388
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 102528+
+
+ // #2389
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 102544
+
+ // #2390
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 102576
+
+ // #2391
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 102608
+
+ // #2392
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 102704+
+
+ // #2393
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 102784+
+
+ // #2394
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 102800
+
+ // #2395
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 102832
+
+ // #2396
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 102848
+
+ // #2397
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 102896+
+
+ // #2398
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 102976+
+
+ // #2399
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 103008
+
+ // #2400
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 103024
+
+ // #2401
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "BackgroundNormal"
+ "\377" // 103072+
+
+ // #2402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 103152+
+
+ // #2403
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 103232+
+
+ // #2404
+ "\377\376\375\374\373\372\371\370"
+ "218,217,216"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 103264
+
+ // #2405
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 103280
+
+ // #2406
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 103312
+
+ // #2407
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 103408+
+
+ // #2408
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 103488+
+
+ // #2409
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 103504
+
+ // #2410
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 103520
+
+ // #2411
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 103552
+
+ // #2412
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 103600+
+
+ // #2413
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 103680+
+
+ // #2414
+ "136,135,134"
+ "\377\376\375\374\373" // 103696
+
+ // #2415
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 103712
+
+ // #2416
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 103744
+
+ // #2417
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 103792+
+
+ // #2418
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 103872+
+
+ // #2419
+ "255,128,224"
+ "\377\376\375\374\373" // 103888
+
+ // #2420
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 103904
+
+ // #2421
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 103968+
+
+ // #2422
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 104048+
+
+ // #2423
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 104128+
+
+ // #2424
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 104160
+
+ // #2425
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 104176
+
+ // #2426
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 104208
+
+ // #2427
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 104304+
+
+ // #2428
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 104384+
+
+ // #2429
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 104416+
+
+ // #2430
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 104432
+
+ // #2431
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 104464
+
+ // #2432
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 104560+
+
+ // #2433
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 104640+
+
+ // #2434
+ "191,3,3"
+ "\377\376\375\374\373\372\371\370\367" // 104656
+
+ // #2435
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 104672
+
+ // #2436
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 104704
+
+ // #2437
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 104752+
+
+ // #2438
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 104832+
+
+ // #2439
+ "176,128,0"
+ "\377\376\375\374\373\372\371" // 104848
+
+ // #2440
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 104864
+
+ // #2441
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 104928+
+
+ // #2442
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 105008+
+
+ // #2443
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 105088+
+
+ // #2444
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 105120
+
+ // #2445
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 105136
+
+ // #2446
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 105168
+
+ // #2447
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 105264+
+
+ // #2448
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 105344+
+
+ // #2449
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 105376
+
+ // #2450
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 105392
+
+ // #2451
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 105424
+
+ // #2452
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 105520+
+
+ // #2453
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 105600+
+
+ // #2454
+ "43,116,199"
+ "\377\376\375\374\373\372" // 105616
+
+ // #2455
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 105632
+
+ // #2456
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 105664
+
+ // #2457
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 105712+
+
+ // #2458
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 105792+
+
+ // #2459
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 105824
+
+ // #2460
+ "\377\376\375\374\373\372\371\370"
+ "2"
+ "\377\376\375\374\373\372\371" // 105840
+
+ // #2461
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 105872
+
+ // #2462
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 105952+
+
+ // #2463
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 106032+
+
+ // #2464
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 106112+
+
+ // #2465
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 106128
+
+ // #2466
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 106160
+
+ // #2467
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 106192
+
+ // #2468
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 106288+
+
+ // #2469
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 106368+
+
+ // #2470
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 106384
+
+ // #2471
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 106416
+
+ // #2472
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106448
+
+ // #2473
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 106544+
+
+ // #2474
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 106624+
+
+ // #2475
+ "0.1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106640
+
+ // #2476
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 106672
+
+ // #2477
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106704
+
+ // #2478
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 106800+
+
+ // #2479
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 106880+
+
+ // #2480
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 106896
+
+ // #2481
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 106928
+
+ // #2482
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 106976+
+
+ // #2483
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 107056+
+
+ // #2484
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 107136+
+
+ // #2485
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 107152
+
+ // #2486
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 107184
+
+ // #2487
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 107216
+
+ // #2488
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 107312+
+
+ // #2489
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 107392+
+
+ // #2490
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 107408
+
+ // #2491
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 107440
+
+ // #2492
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 107456
+
+ // #2493
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 107504+
+
+ // #2494
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 107584+
+
+ // #2495
+ "232,231,230"
+ "\377\376\375\374\373" // 107600
+
+ // #2496
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 107616
+
+ // #2497
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "BackgroundNormal"
+ "\377" // 107680+
+
+ // #2498
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 107760+
+
+ // #2499
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 107840+
+
+ // #2500
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 107872+
+
+ // #2501
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 107888
+
+ // #2502
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 107920
+
+ // #2503
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 108016+
+
+ // #2504
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 108096+
+
+ // #2505
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 108112
+
+ // #2506
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 108128
+
+ // #2507
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 108160
+
+ // #2508
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 108208+
+
+ // #2509
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 108288+
+
+ // #2510
+ "136,135,134"
+ "\377\376\375\374\373" // 108304
+
+ // #2511
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 108320
+
+ // #2512
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 108352
+
+ // #2513
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 108400+
+
+ // #2514
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 108480+
+
+ // #2515
+ "\377\376\375\374\373\372\371\370"
+ "255,128,224"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108512
+
+ // #2516
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 108528
+
+ // #2517
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108576+
+
+ // #2518
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 108656+
+
+ // #2519
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 108736+
+
+ // #2520
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108768
+
+ // #2521
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 108784
+
+ // #2522
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 108816
+
+ // #2523
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 108912+
+
+ // #2524
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 108992+
+
+ // #2525
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 109024+
+
+ // #2526
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 109040
+
+ // #2527
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 109072
+
+ // #2528
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 109168+
+
+ // #2529
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 109248+
+
+ // #2530
+ "\377\376\375\374\373\372\371\370"
+ "191,3,3"
+ "\377" // 109264
+
+ // #2531
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 109280
+
+ // #2532
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 109312
+
+ // #2533
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 109360+
+
+ // #2534
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 109440+
+
+ // #2535
+ "\377\376\375\374\373\372\371\370"
+ "176,128,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 109472
+
+ // #2536
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 109488
+
+ // #2537
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 109536+
+
+ // #2538
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 109616+
+
+ // #2539
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 109696+
+
+ // #2540
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370" // 109712
+
+ // #2541
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 109728
+
+ // #2542
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 109760
+
+ // #2543
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 109808+
+
+ // #2544
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 109888+
+
+ // #2545
+ "119,183,255"
+ "\377\376\375\374\373" // 109904
+
+ // #2546
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 109920
+
+ // #2547
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 109952
+
+ // #2548
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 110000+
+
+ // #2549
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 110080+
+
+ // #2550
+ "\377\376\375\374\373\372\371\370"
+ "43,116,199"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 110112
+
+ // #2551
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 110128
+
+ // #2552
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 110160
+
+ // #2553
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 110256+
+
+ // #2554
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 110336+
+
+ // #2555
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 110368
+
+ // #2556
+ "\377\376\375\374\373\372\371\370"
+ "2"
+ "\377\376\375\374\373\372\371" // 110384
+
+ // #2557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110416
+
+ // #2558
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 110496+
+
+ // #2559
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 110576+
+
+ // #2560
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 110656+
+
+ // #2561
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110672
+
+ // #2562
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110704
+
+ // #2563
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 110736
+
+ // #2564
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 110832+
+
+ // #2565
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 110912+
+
+ // #2566
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 110928
+
+ // #2567
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110960
+
+ // #2568
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 110992
+
+ // #2569
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 111088+
+
+ // #2570
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 111168+
+
+ // #2571
+ "0.1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 111184
+
+ // #2572
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 111216
+
+ // #2573
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 111248
+
+ // #2574
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 111344+
+
+ // #2575
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 111424+
+
+ // #2576
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 111440
+
+ // #2577
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 111472
+
+ // #2578
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 111520+
+
+ // #2579
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 111600+
+
+ // #2580
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 111680+
+
+ // #2581
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 111696
+
+ // #2582
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 111728
+
+ // #2583
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 111760
+
+ // #2584
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 111856+
+
+ // #2585
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 111936+
+
+ // #2586
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 111952
+
+ // #2587
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 111968
+
+ // #2588
+ "\377\376\375\374"
+ "Enable"
+ "\377\376\375\374\373\372" // 111984
+
+ // #2589
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 112048+
+
+ // #2590
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 112128+
+
+ // #2591
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 112144
+
+ // #2592
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 112160
+
+ // #2593
+ "ChangeSelectionColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 112192
+
+ // #2594
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 112240+
+
+ // #2595
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 112320+
+
+ // #2596
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 112336
+
+ // #2597
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 112368
+
+ // #2598
+ "contrast"
+ "\377\376\375\374\373\372\371\370" // 112384
+
+ // #2599
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 112432+
+
+ // #2600
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 112512+
+
+ // #2601
+ "\377\376\375\374\373\372\371\370"
+ "224,223,222"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 112544
+
+ // #2602
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 112560
+
+ // #2603
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "BackgroundNormal"
+ "\377" // 112608+
+
+ // #2604
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 112688+
+
+ // #2605
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 112768+
+
+ // #2606
+ "\377\376\375\374\373\372\371\370"
+ "218,217,216"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 112800
+
+ // #2607
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 112816
+
+ // #2608
+ "BackgroundAlternate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 112848
+
+ // #2609
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 112944+
+
+ // #2610
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 113024+
+
+ // #2611
+ "20,19,18"
+ "\377\376\375\374\373\372\371\370" // 113040
+
+ // #2612
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 113056
+
+ // #2613
+ "\377"
+ "ForegroundNormal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 113088
+
+ // #2614
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 113136+
+
+ // #2615
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 113216+
+
+ // #2616
+ "136,135,134"
+ "\377\376\375\374\373" // 113232
+
+ // #2617
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 113248
+
+ // #2618
+ "\377\376"
+ "ForegroundInactive"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 113280
+
+ // #2619
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 113328+
+
+ // #2620
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 113408+
+
+ // #2621
+ "255,128,224"
+ "\377\376\375\374\373" // 113424
+
+ // #2622
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 113440
+
+ // #2623
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333"
+ "ForegroundActive"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 113504+
+
+ // #2624
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 113584+
+
+ // #2625
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 113664+
+
+ // #2626
+ "\377\376\375\374\373\372\371\370"
+ "0,87,174"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 113696
+
+ // #2627
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 113712
+
+ // #2628
+ "\377\376\375\374\373\372"
+ "ForegroundLink"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 113744
+
+ // #2629
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 113840+
+
+ // #2630
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 113920+
+
+ // #2631
+ "\377\376\375\374\373\372\371\370"
+ "69,40,134"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 113952+
+
+ // #2632
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 113968
+
+ // #2633
+ "\377\376\375\374\373"
+ "ForegroundVisited"
+ "\377\376\375\374\373\372\371\370\367\366" // 114000
+
+ // #2634
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 114096+
+
+ // #2635
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 114176+
+
+ // #2636
+ "191,3,3"
+ "\377\376\375\374\373\372\371\370\367" // 114192
+
+ // #2637
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 114208
+
+ // #2638
+ "\377\376\375\374\373\372\371"
+ "ForegroundNegative"
+ "\377\376\375\374\373\372\371" // 114240
+
+ // #2639
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 114288+
+
+ // #2640
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 114368+
+
+ // #2641
+ "176,128,0"
+ "\377\376\375\374\373\372\371" // 114384
+
+ // #2642
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 114400
+
+ // #2643
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "ForegroundNeutral"
+ "\377\376\375\374\373" // 114464+
+
+ // #2644
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 114544+
+
+ // #2645
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 114624+
+
+ // #2646
+ "\377\376\375\374\373\372\371\370"
+ "0,110,40"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 114656
+
+ // #2647
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 114672
+
+ // #2648
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "ForegroundPositive"
+ "\377\376" // 114704
+
+ // #2649
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 114800+
+
+ // #2650
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 114880+
+
+ // #2651
+ "\377\376\375\374\373\372\371\370"
+ "119,183,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 114912
+
+ // #2652
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 114928
+
+ // #2653
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationHover"
+ "\377\376" // 114960
+
+ // #2654
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 115056+
+
+ // #2655
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 115136+
+
+ // #2656
+ "43,116,199"
+ "\377\376\375\374\373\372" // 115152
+
+ // #2657
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 115168
+
+ // #2658
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "DecorationFocus"
+ "\377\376" // 115200
+
+ // #2659
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 115248+
+
+ // #2660
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 115328+
+
+ // #2661
+ "\377\376\375\374\373\372\371\370"
+ "ColorEffects:Disabled"
+ "\377\376\375" // 115360
+
+ // #2662
+ "\377\376\375\374\373\372\371\370"
+ "2"
+ "\377\376\375\374\373\372\371" // 115376
+
+ // #2663
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 115408
+
+ // #2664
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "IntensityEffect"
+ "\377\376\375\374\373\372" // 115488+
+
+ // #2665
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 115568+
+
+ // #2666
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 115648+
+
+ // #2667
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 115664
+
+ // #2668
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 115696
+
+ // #2669
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "ColorEffect"
+ "\377\376\375\374\373\372\371\370\367\366" // 115728
+
+ // #2670
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 115824+
+
+ // #2671
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 115904+
+
+ // #2672
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 115920
+
+ // #2673
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 115952
+
+ // #2674
+ "\377\376\375\374\373\372\371"
+ "ContrastEffect"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 115984
+
+ // #2675
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 116080+
+
+ // #2676
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 116160+
+
+ // #2677
+ "0.1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 116176
+
+ // #2678
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116208
+
+ // #2679
+ "\377\376\375\374\373\372"
+ "IntensityAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 116240
+
+ // #2680
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 116336+
+
+ // #2681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 116416+
+
+ // #2682
+ "\377\376\375\374\373\372\371\370"
+ "0"
+ "\377\376\375\374\373\372\371" // 116432
+
+ // #2683
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116464
+
+ // #2684
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "ColorAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 116512+
+
+ // #2685
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 116592+
+
+ // #2686
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 116672+
+
+ // #2687
+ "0.65"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 116688
+
+ // #2688
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116720
+
+ // #2689
+ "\377\376"
+ "ContrastAmount"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 116752
+
+ // #2690
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 116848+
+
+ // #2691
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 116928+
+
+ // #2692
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 116944
+
+ // #2693
+ "\377\376\375\374\373\372"
+ "wacomcfg"
+ "\377\376" // 116960
+
+ // #2694
+ "\377\376\375\374"
+ "lib"
+ "\377\376\375\374\373\372\371\370\367" // 116976
+
+ // #2695
+ "\377\376\375\374\373\372\371\370"
+ ".so.%1"
+ "\377\376" // 116992
+
+ // #2696
+ "\377\376\375"
+ "Cannot load library %1: %2"
+ "\377\376\375" // 117024+
+
+ // #2697
+ "\377\376\375\374"
+ "Desktop"
+ "\377\376\375\374\373" // 117040
+
+ // #2698
+ "\377\376"
+ "Toolbar"
+ "\377\376\375\374\373\372\371" // 117056
+
+ // #2699
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MainToolbar"
+ "\377\376\375\374\373\372\371\370\367" // 117088
+
+ // #2700
+ "\377\376\375\374\373\372\371\370"
+ "Small"
+ "\377\376\375" // 117104
+
+ // #2701
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Panel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 117136
+
+ // #2702
+ "\377\376\375"
+ "Dialog"
+ "\377\376\375\374\373\372\371" // 117152
+
+ // #2703
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 117168
+
+ // #2704
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "Active"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 117216+
+
+ // #2705
+ "\377\376\375\374\373"
+ "Disabled"
+ "\377\376\375" // 117232
+
+ // #2706
+ "\377\376\375\374"
+ "togray"
+ "\377\376\375\374\373\372" // 117248
+
+ // #2707
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "colorize"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 117280+
+
+ // #2708
+ "\377\376\375\374"
+ "desaturate"
+ "\377\376" // 117296
+
+ // #2709
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "togamma"
+ "\377\376\375\374\373\372\371\370\367\366" // 117328
+
+ // #2710
+ "\377\376\375\374\373"
+ "none"
+ "\377\376\375\374\373\372\371" // 117344
+
+ // #2711
+ "\377\376\375\374\373\372\371"
+ "tomonochrome"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 117376
+
+ // #2712
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 117392
+
+ // #2713
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 117408
+
+ // #2714
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 117472+
+
+ // #2715
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 117488
+
+ // #2716
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 117520
+
+ // #2717
+ "DefaultValue"
+ "\377\376\375\374" // 117536
+
+ // #2718
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 117616+
+
+ // #2719
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 117696+
+
+ // #2720
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 117728
+
+ // #2721
+ "\377\376\375\374\373\372\371\370"
+ "144,128,248"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 117760
+
+ // #2722
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 117776
+
+ // #2723
+ "\377\376\375\374\373\372\371\370"
+ "DefaultColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 117808
+
+ // #2724
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 117872+
+
+ // #2725
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 117952+
+
+ // #2726
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 117968
+
+ // #2727
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 117984
+
+ // #2728
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 118000
+
+ // #2729
+ "\377\376\375\374\373\372\371\370"
+ "DefaultColor2"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 118032
+
+ // #2730
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 118128+
+
+ // #2731
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 118208+
+
+ // #2732
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 118240
+
+ // #2733
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 118256
+
+ // #2734
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 118272
+
+ // #2735
+ "DefaultSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367\366" // 118304
+
+ // #2736
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 118384+
+
+ // #2737
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 118464+
+
+ // #2738
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 118480
+
+ // #2739
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 118560+
+
+ // #2740
+ "\377\376\375\374\373\372\371\370"
+ "0.7"
+ "\377\376\375\374\373" // 118576
+
+ // #2741
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 118608
+
+ // #2742
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "ActiveValue"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 118688+
+
+ // #2743
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 118768+
+
+ // #2744
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 118848+
+
+ // #2745
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 118880
+
+ // #2746
+ "169,156,255"
+ "\377\376\375\374\373" // 118896
+
+ // #2747
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 118912
+
+ // #2748
+ "ActiveColor"
+ "\377\376\375\374\373" // 118928
+
+ // #2749
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 119024+
+
+ // #2750
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 119104+
+
+ // #2751
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 119120
+
+ // #2752
+ "\377\376\375\374\373\372\371\370"
+ "0,0,0"
+ "\377\376\375" // 119136
+
+ // #2753
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 119152
+
+ // #2754
+ "\377\376\375\374\373\372\371\370"
+ "ActiveColor2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 119184
+
+ // #2755
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 119280+
+
+ // #2756
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 119360+
+
+ // #2757
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 119392
+
+ // #2758
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 119408
+
+ // #2759
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 119424
+
+ // #2760
+ "ActiveSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 119456
+
+ // #2761
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 119536+
+
+ // #2762
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 119616+
+
+ // #2763
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 119632
+
+ // #2764
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 119712+
+
+ // #2765
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 119728
+
+ // #2766
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 119760
+
+ // #2767
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "DisabledValue"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 119840+
+
+ // #2768
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 119920+
+
+ // #2769
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 120000+
+
+ // #2770
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 120032
+
+ // #2771
+ "\377\376\375\374\373\372\371\370"
+ "34,202,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 120064
+
+ // #2772
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 120080
+
+ // #2773
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 120112
+
+ // #2774
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 120176+
+
+ // #2775
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 120256+
+
+ // #2776
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 120272
+
+ // #2777
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 120288
+
+ // #2778
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 120304
+
+ // #2779
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor2"
+ "\377\376\375\374\373\372\371\370\367\366" // 120336
+
+ // #2780
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 120432+
+
+ // #2781
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 120512+
+
+ // #2782
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 120544
+
+ // #2783
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 120560
+
+ // #2784
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 120576
+
+ // #2785
+ "DisabledSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367" // 120608
+
+ // #2786
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 120688+
+
+ // #2787
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 120768+
+
+ // #2788
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 120784
+
+ // #2789
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 120800
+
+ // #2790
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 120864+
+
+ // #2791
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 120880
+
+ // #2792
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 120912
+
+ // #2793
+ "DefaultValue"
+ "\377\376\375\374" // 120928
+
+ // #2794
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 121008+
+
+ // #2795
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 121088+
+
+ // #2796
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 121120
+
+ // #2797
+ "\377\376\375\374\373\372\371\370"
+ "144,128,248"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 121152
+
+ // #2798
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 121168
+
+ // #2799
+ "DefaultColor"
+ "\377\376\375\374" // 121184
+
+ // #2800
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 121264+
+
+ // #2801
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 121344+
+
+ // #2802
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 121360
+
+ // #2803
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 121376
+
+ // #2804
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 121392
+
+ // #2805
+ "\377\376\375\374\373\372\371\370"
+ "DefaultColor2"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 121424
+
+ // #2806
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 121520+
+
+ // #2807
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 121600+
+
+ // #2808
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 121632
+
+ // #2809
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 121648
+
+ // #2810
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 121664
+
+ // #2811
+ "\377\376\375\374\373\372\371\370"
+ "DefaultSemiTransparent"
+ "\377\376" // 121696
+
+ // #2812
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 121776+
+
+ // #2813
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 121856+
+
+ // #2814
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 121872
+
+ // #2815
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 121952+
+
+ // #2816
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 121968
+
+ // #2817
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 122000
+
+ // #2818
+ "\377\376\375\374\373\372\371\370"
+ "ActiveValue"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 122032
+
+ // #2819
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 122096+
+
+ // #2820
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 122176+
+
+ // #2821
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 122208
+
+ // #2822
+ "169,156,255"
+ "\377\376\375\374\373" // 122224
+
+ // #2823
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 122240
+
+ // #2824
+ "\377\376\375\374\373\372\371\370"
+ "ActiveColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 122272+
+
+ // #2825
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 122352+
+
+ // #2826
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 122432+
+
+ // #2827
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 122448
+
+ // #2828
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 122464
+
+ // #2829
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 122480
+
+ // #2830
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "ActiveColor2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 122528+
+
+ // #2831
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 122608+
+
+ // #2832
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 122688+
+
+ // #2833
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 122720
+
+ // #2834
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 122736
+
+ // #2835
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 122752
+
+ // #2836
+ "\377\376\375\374\373\372\371\370"
+ "ActiveSemiTransparent"
+ "\377\376\375" // 122784
+
+ // #2837
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 122864+
+
+ // #2838
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 122944+
+
+ // #2839
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 122960
+
+ // #2840
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 123040+
+
+ // #2841
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 123056
+
+ // #2842
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 123088
+
+ // #2843
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "DisabledValue"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 123168+
+
+ // #2844
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 123248+
+
+ // #2845
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 123328+
+
+ // #2846
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 123360
+
+ // #2847
+ "\377\376\375\374\373\372\371\370"
+ "34,202,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 123392
+
+ // #2848
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 123408
+
+ // #2849
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "DisabledColor"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 123488+
+
+ // #2850
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 123568+
+
+ // #2851
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 123648+
+
+ // #2852
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 123664
+
+ // #2853
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 123680
+
+ // #2854
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 123696
+
+ // #2855
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "DisabledColor2"
+ "\377\376\375\374\373\372\371\370\367\366" // 123744+
+
+ // #2856
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 123824+
+
+ // #2857
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 123904+
+
+ // #2858
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 123936
+
+ // #2859
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 123952
+
+ // #2860
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 123968
+
+ // #2861
+ "DisabledSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367" // 124000
+
+ // #2862
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 124080+
+
+ // #2863
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 124160+
+
+ // #2864
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 124176
+
+ // #2865
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 124192
+
+ // #2866
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 124256+
+
+ // #2867
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 124272
+
+ // #2868
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 124304
+
+ // #2869
+ "\377\376\375\374\373\372\371\370"
+ "DefaultValue"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 124336
+
+ // #2870
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 124400+
+
+ // #2871
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 124480+
+
+ // #2872
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 124512
+
+ // #2873
+ "\377\376\375\374\373\372\371\370"
+ "144,128,248"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 124544
+
+ // #2874
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 124560
+
+ // #2875
+ "\377\376\375\374\373\372\371\370"
+ "DefaultColor"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 124592
+
+ // #2876
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 124656+
+
+ // #2877
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 124736+
+
+ // #2878
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 124752
+
+ // #2879
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 124768
+
+ // #2880
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 124784
+
+ // #2881
+ "\377\376\375\374\373\372\371\370"
+ "DefaultColor2"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 124816
+
+ // #2882
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 124912+
+
+ // #2883
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 124992+
+
+ // #2884
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 125024
+
+ // #2885
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 125040
+
+ // #2886
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 125056
+
+ // #2887
+ "DefaultSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367\366" // 125088+
+
+ // #2888
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 125168+
+
+ // #2889
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 125248+
+
+ // #2890
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 125264
+
+ // #2891
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 125344+
+
+ // #2892
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 125360
+
+ // #2893
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 125392
+
+ // #2894
+ "\377\376\375\374\373\372\371\370"
+ "ActiveValue"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 125424
+
+ // #2895
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 125488+
+
+ // #2896
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 125568+
+
+ // #2897
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 125600
+
+ // #2898
+ "169,156,255"
+ "\377\376\375\374\373" // 125616
+
+ // #2899
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 125632
+
+ // #2900
+ "ActiveColor"
+ "\377\376\375\374\373" // 125648
+
+ // #2901
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 125744+
+
+ // #2902
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 125824+
+
+ // #2903
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 125840
+
+ // #2904
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 125856
+
+ // #2905
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 125872
+
+ // #2906
+ "ActiveColor2"
+ "\377\376\375\374" // 125888
+
+ // #2907
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 125936+
+
+ // #2908
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 126016+
+
+ // #2909
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 126048
+
+ // #2910
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 126064
+
+ // #2911
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 126080
+
+ // #2912
+ "\377\376\375\374\373\372\371\370"
+ "ActiveSemiTransparent"
+ "\377\376\375" // 126112
+
+ // #2913
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 126192+
+
+ // #2914
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 126272+
+
+ // #2915
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 126288
+
+ // #2916
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 126368+
+
+ // #2917
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 126384
+
+ // #2918
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 126416
+
+ // #2919
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "DisabledValue"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 126496+
+
+ // #2920
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 126576+
+
+ // #2921
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 126656+
+
+ // #2922
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 126688
+
+ // #2923
+ "\377\376\375\374\373\372\371\370"
+ "34,202,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 126720
+
+ // #2924
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 126736
+
+ // #2925
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 126768
+
+ // #2926
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 126832+
+
+ // #2927
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 126912+
+
+ // #2928
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 126928
+
+ // #2929
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 126944
+
+ // #2930
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 126960
+
+ // #2931
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor2"
+ "\377\376\375\374\373\372\371\370\367\366" // 126992
+
+ // #2932
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 127088+
+
+ // #2933
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 127168+
+
+ // #2934
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 127200
+
+ // #2935
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 127216
+
+ // #2936
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 127232
+
+ // #2937
+ "\377\376\375\374\373\372\371\370"
+ "DisabledSemiTransparent"
+ "\377" // 127264+
+
+ // #2938
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 127344+
+
+ // #2939
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 127424+
+
+ // #2940
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 127440
+
+ // #2941
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 127456
+
+ // #2942
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 127520+
+
+ // #2943
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 127536
+
+ // #2944
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 127568
+
+ // #2945
+ "DefaultValue"
+ "\377\376\375\374" // 127584
+
+ // #2946
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 127664+
+
+ // #2947
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 127744+
+
+ // #2948
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 127776
+
+ // #2949
+ "\377\376\375\374\373\372\371\370"
+ "144,128,248"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 127808
+
+ // #2950
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 127824
+
+ // #2951
+ "DefaultColor"
+ "\377\376\375\374" // 127840
+
+ // #2952
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 127920+
+
+ // #2953
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 128000+
+
+ // #2954
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 128016
+
+ // #2955
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 128032
+
+ // #2956
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 128048
+
+ // #2957
+ "DefaultColor2"
+ "\377\376\375" // 128064
+
+ // #2958
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 128112+
+
+ // #2959
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 128192+
+
+ // #2960
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 128224
+
+ // #2961
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 128240
+
+ // #2962
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 128256
+
+ // #2963
+ "DefaultSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367\366" // 128288
+
+ // #2964
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 128368+
+
+ // #2965
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 128448+
+
+ // #2966
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 128464
+
+ // #2967
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 128544+
+
+ // #2968
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 128560
+
+ // #2969
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 128592
+
+ // #2970
+ "\377\376\375\374\373\372\371\370"
+ "ActiveValue"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 128624
+
+ // #2971
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 128688+
+
+ // #2972
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 128768+
+
+ // #2973
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 128800
+
+ // #2974
+ "169,156,255"
+ "\377\376\375\374\373" // 128816
+
+ // #2975
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 128832
+
+ // #2976
+ "ActiveColor"
+ "\377\376\375\374\373" // 128848
+
+ // #2977
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 128944+
+
+ // #2978
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 129024+
+
+ // #2979
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 129040
+
+ // #2980
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 129056
+
+ // #2981
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 129072
+
+ // #2982
+ "ActiveColor2"
+ "\377\376\375\374" // 129088
+
+ // #2983
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 129136+
+
+ // #2984
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 129216+
+
+ // #2985
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 129248
+
+ // #2986
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 129264
+
+ // #2987
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 129280
+
+ // #2988
+ "\377\376\375\374\373\372\371\370"
+ "ActiveSemiTransparent"
+ "\377\376\375" // 129312
+
+ // #2989
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 129392+
+
+ // #2990
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 129472+
+
+ // #2991
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 129488
+
+ // #2992
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 129568+
+
+ // #2993
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 129584
+
+ // #2994
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 129616
+
+ // #2995
+ "DisabledValue"
+ "\377\376\375" // 129632
+
+ // #2996
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 129712+
+
+ // #2997
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 129792+
+
+ // #2998
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 129824
+
+ // #2999
+ "\377\376\375\374\373\372\371\370"
+ "34,202,0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 129856
+
+ // #3000
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 129872
+
+ // #3001
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 129904
+
+ // #3002
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 129968+
+
+ // #3003
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 130048+
+
+ // #3004
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 130064
+
+ // #3005
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 130080
+
+ // #3006
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 130096
+
+ // #3007
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor2"
+ "\377\376\375\374\373\372\371\370\367\366" // 130128
+
+ // #3008
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 130224+
+
+ // #3009
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 130304+
+
+ // #3010
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 130336
+
+ // #3011
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 130352
+
+ // #3012
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 130368
+
+ // #3013
+ "\377\376\375\374\373\372\371\370"
+ "DisabledSemiTransparent"
+ "\377" // 130400
+
+ // #3014
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 130480+
+
+ // #3015
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 130560+
+
+ // #3016
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 130576
+
+ // #3017
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 130592
+
+ // #3018
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 130656+
+
+ // #3019
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 130672
+
+ // #3020
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 130704
+
+ // #3021
+ "DefaultValue"
+ "\377\376\375\374" // 130720
+
+ // #3022
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 130800+
+
+ // #3023
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 130880+
+
+ // #3024
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 130912
+
+ // #3025
+ "\377\376\375\374\373\372\371\370"
+ "144,128,248"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 130944
+
+ // #3026
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 130960
+
+ // #3027
+ "DefaultColor"
+ "\377\376\375\374" // 130976
+
+ // #3028
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 131056+
+
+ // #3029
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 131136+
+
+ // #3030
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 131152
+
+ // #3031
+ "0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 131168
+
+ // #3032
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 131184
+
+ // #3033
+ "DefaultColor2"
+ "\377\376\375" // 131200
+
+ // #3034
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 131248+
+
+ // #3035
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 131328+
+
+ // #3036
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 131360
+
+ // #3037
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 131376
+
+ // #3038
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 131392
+
+ // #3039
+ "DefaultSemiTransparent"
+ "\377\376\375\374\373\372\371\370\367\366" // 131424+
+
+ // #3040
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 131504+
+
+ // #3041
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 131584+
+
+ // #3042
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 131600
+
+ // #3043
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 131680+
+
+ // #3044
+ "\377\376\375\374\373\372\371\370"
+ "0.7"
+ "\377\376\375\374\373" // 131696
+
+ // #3045
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 131728
+
+ // #3046
+ "\377\376\375\374\373\372\371\370"
+ "ActiveValue"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 131760
+
+ // #3047
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 131824+
+
+ // #3048
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 131904+
+
+ // #3049
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 131936
+
+ // #3050
+ "\377\376\375\374\373\372\371\370"
+ "169,156,255"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 131968
+
+ // #3051
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 131984
+
+ // #3052
+ "ActiveColor"
+ "\377\376\375\374\373" // 132000
+
+ // #3053
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 132080+
+
+ // #3054
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 132160+
+
+ // #3055
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 132176
+
+ // #3056
+ "\377\376\375\374\373\372\371\370"
+ "0,0,0"
+ "\377\376\375" // 132192
+
+ // #3057
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 132208
+
+ // #3058
+ "ActiveColor2"
+ "\377\376\375\374" // 132224
+
+ // #3059
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 132272+
+
+ // #3060
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 132352+
+
+ // #3061
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 132384
+
+ // #3062
+ "\377\376\375\374\373\372\371\370"
+ "false"
+ "\377\376\375" // 132400
+
+ // #3063
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 132416
+
+ // #3064
+ "\377\376\375\374\373\372\371\370"
+ "ActiveSemiTransparent"
+ "\377\376\375" // 132448
+
+ // #3065
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 132528+
+
+ // #3066
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 132608+
+
+ // #3067
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 132624
+
+ // #3068
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Value"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 132704+
+
+ // #3069
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 132720
+
+ // #3070
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "double"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 132752
+
+ // #3071
+ "DisabledValue"
+ "\377\376\375" // 132768
+
+ // #3072
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 132848+
+
+ // #3073
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 132928+
+
+ // #3074
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Color"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 132960
+
+ // #3075
+ "34,202,0"
+ "\377\376\375\374\373\372\371\370" // 132976
+
+ // #3076
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 132992
+
+ // #3077
+ "\377\376\375\374\373\372\371\370"
+ "DisabledColor"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 133024+
+
+ // #3078
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 133104+
+
+ // #3079
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 133184+
+
+ // #3080
+ "\377\376\375\374"
+ "Color2"
+ "\377\376\375\374\373\372" // 133200
+
+ // #3081
+ "\377\376\375\374\373\372\371\370"
+ "0,0,0"
+ "\377\376\375" // 133216
+
+ // #3082
+ "\377\376\375\374\373\372\371"
+ "QColor"
+ "\377\376\375" // 133232
+
+ // #3083
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "DisabledColor2"
+ "\377\376\375\374\373\372\371\370\367\366" // 133280+
+
+ // #3084
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 133360+
+
+ // #3085
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 133440+
+
+ // #3086
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "SemiTransparent"
+ "\377\376\375\374\373\372" // 133472
+
+ // #3087
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 133488
+
+ // #3088
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 133504
+
+ // #3089
+ "\377\376\375\374\373\372\371\370"
+ "DisabledSemiTransparent"
+ "\377" // 133536
+
+ // #3090
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 133616+
+
+ // #3091
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 133696+
+
+ // #3092
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 133712
+
+ // #3093
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 133728
+
+ // #3094
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 133744
+
+ // #3095
+ "Effect"
+ "\377\376\375\374\373\372\371\370\367\366" // 133760
+
+ // #3096
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "icon-cache"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 133792+
+
+ // #3097
+ "\377\376\375\374\373\372\371\370"
+ ".kcache"
+ "\377" // 133808
+
+ // #3098
+ "\377\376\375\374\373"
+ "cache"
+ "\377\376\375\374\373\372" // 133824
+
+ // #3099
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 133840
+
+ // #3100
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 133856
+
+ // #3101
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 133872
+
+ // #3102
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 133888
+
+ // #3103
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 133904
+
+ // #3104
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 133936
+
+ // #3105
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 133968
+
+ // #3106
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 134000
+
+ // #3107
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 134032
+
+ // #3108
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 134064
+
+ // #3109
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 134080
+
+ // #3110
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 134096
+
+ // #3111
+ "\377\376\375"
+ "/usr/share/pixmaps/"
+ "\377\376\375\374\373\372\371\370\367\366" // 134128
+
+ // #3112
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 134144
+
+ // #3113
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 134160
+
+ // #3114
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 134176
+
+ // #3115
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 134192
+
+ // #3116
+ "index.theme"
+ "\377\376\375\374\373" // 134208
+
+ // #3117
+ "\377"
+ "index.desktop"
+ "\377\376" // 134224
+
+ // #3118
+ "index.theme"
+ "\377\376\375\374\373" // 134240
+
+ // #3119
+ "\377"
+ "index.desktop"
+ "\377\376" // 134256
+
+ // #3120
+ "index.theme"
+ "\377\376\375\374\373" // 134272
+
+ // #3121
+ "index.theme"
+ "\377\376\375\374\373" // 134288
+
+ // #3122
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Icon Theme"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 134320
+
+ // #3123
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 134336
+
+ // #3124
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 134352
+
+ // #3125
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 134368
+
+ // #3126
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 134384
+
+ // #3127
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 134416
+
+ // #3128
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 134432
+
+ // #3129
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 134448
+
+ // #3130
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 134464
+
+ // #3131
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 134480
+
+ // #3132
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 134496
+
+ // #3133
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 134512
+
+ // #3134
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 134544
+
+ // #3135
+ "\377\376\375\374"
+ "DisplayDepth"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 134576
+
+ // #3136
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 134640+
+
+ // #3137
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 134720+
+
+ // #3138
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 134736
+
+ // #3139
+ "8"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 134752
+
+ // #3140
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 134784
+
+ // #3141
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 134816+
+
+ // #3142
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 134896+
+
+ // #3143
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 134976+
+
+ // #3144
+ "8"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 134992
+
+ // #3145
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135024
+
+ // #3146
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135072+
+
+ // #3147
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 135152+
+
+ // #3148
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 135232+
+
+ // #3149
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 135248
+
+ // #3150
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135280
+
+ // #3151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135328+
+
+ // #3152
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 135408+
+
+ // #3153
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 135488+
+
+ // #3154
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 135504
+
+ // #3155
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135536
+
+ // #3156
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135584+
+
+ // #3157
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 135664+
+
+ // #3158
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 135744+
+
+ // #3159
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 135760
+
+ // #3160
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135792
+
+ // #3161
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 135840+
+
+ // #3162
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 135920+
+
+ // #3163
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 136000+
+
+ // #3164
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 136016
+
+ // #3165
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136048
+
+ // #3166
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136096+
+
+ // #3167
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 136176+
+
+ // #3168
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 136256+
+
+ // #3169
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 136272
+
+ // #3170
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136304
+
+ // #3171
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136352+
+
+ // #3172
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 136432+
+
+ // #3173
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 136512+
+
+ // #3174
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 136528
+
+ // #3175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136560
+
+ // #3176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136608+
+
+ // #3177
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 136688+
+
+ // #3178
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 136768+
+
+ // #3179
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 136784
+
+ // #3180
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136816
+
+ // #3181
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 136864+
+
+ // #3182
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 136944+
+
+ // #3183
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 137024+
+
+ // #3184
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 137040
+
+ // #3185
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137072
+
+ // #3186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137120+
+
+ // #3187
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 137200+
+
+ // #3188
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 137280+
+
+ // #3189
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 137296
+
+ // #3190
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137328
+
+ // #3191
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137376+
+
+ // #3192
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 137456+
+
+ // #3193
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 137536+
+
+ // #3194
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 137552
+
+ // #3195
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137584
+
+ // #3196
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137632+
+
+ // #3197
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 137712+
+
+ // #3198
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 137792+
+
+ // #3199
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 137808
+
+ // #3200
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137840
+
+ // #3201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 137888+
+
+ // #3202
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 137968+
+
+ // #3203
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 138048+
+
+ // #3204
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 138064
+
+ // #3205
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138096
+
+ // #3206
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138144+
+
+ // #3207
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 138224+
+
+ // #3208
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 138304+
+
+ // #3209
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 138320
+
+ // #3210
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138352
+
+ // #3211
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138400+
+
+ // #3212
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 138480+
+
+ // #3213
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 138560+
+
+ // #3214
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 138576
+
+ // #3215
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138608
+
+ // #3216
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138656+
+
+ // #3217
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 138736+
+
+ // #3218
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 138816+
+
+ // #3219
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 138832
+
+ // #3220
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138864
+
+ // #3221
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 138912+
+
+ // #3222
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 138992+
+
+ // #3223
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 139072+
+
+ // #3224
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 139088
+
+ // #3225
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139120
+
+ // #3226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139168+
+
+ // #3227
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 139248+
+
+ // #3228
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 139328+
+
+ // #3229
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 139344
+
+ // #3230
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139376
+
+ // #3231
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139424+
+
+ // #3232
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 139504+
+
+ // #3233
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 139584+
+
+ // #3234
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 139600
+
+ // #3235
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139632
+
+ // #3236
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139680+
+
+ // #3237
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 139760+
+
+ // #3238
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 139840+
+
+ // #3239
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 139856
+
+ // #3240
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139888
+
+ // #3241
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 139936+
+
+ // #3242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 140016+
+
+ // #3243
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 140096+
+
+ // #3244
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 140112
+
+ // #3245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140144
+
+ // #3246
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140192+
+
+ // #3247
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 140272+
+
+ // #3248
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 140352+
+
+ // #3249
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 140368
+
+ // #3250
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140400
+
+ // #3251
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140448+
+
+ // #3252
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 140528+
+
+ // #3253
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 140608+
+
+ // #3254
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 140624
+
+ // #3255
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140656
+
+ // #3256
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140704+
+
+ // #3257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 140784+
+
+ // #3258
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 140864+
+
+ // #3259
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 140880
+
+ // #3260
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140912
+
+ // #3261
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 140960+
+
+ // #3262
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 141040+
+
+ // #3263
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 141120+
+
+ // #3264
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 141136
+
+ // #3265
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141168
+
+ // #3266
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141216+
+
+ // #3267
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 141296+
+
+ // #3268
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 141376+
+
+ // #3269
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 141392
+
+ // #3270
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141424
+
+ // #3271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141472+
+
+ // #3272
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 141552+
+
+ // #3273
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 141632+
+
+ // #3274
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 141648
+
+ // #3275
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141680
+
+ // #3276
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141728+
+
+ // #3277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 141808+
+
+ // #3278
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 141888+
+
+ // #3279
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 141904
+
+ // #3280
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141936
+
+ // #3281
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 141984+
+
+ // #3282
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 142064+
+
+ // #3283
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 142144+
+
+ // #3284
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 142160
+
+ // #3285
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142192
+
+ // #3286
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142240+
+
+ // #3287
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 142320+
+
+ // #3288
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 142400+
+
+ // #3289
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 142416
+
+ // #3290
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142448
+
+ // #3291
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142496+
+
+ // #3292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 142576+
+
+ // #3293
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 142656+
+
+ // #3294
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 142672
+
+ // #3295
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142704
+
+ // #3296
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142752+
+
+ // #3297
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 142832+
+
+ // #3298
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 142912+
+
+ // #3299
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 142928
+
+ // #3300
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 142960
+
+ // #3301
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143008+
+
+ // #3302
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 143088+
+
+ // #3303
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 143168+
+
+ // #3304
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 143184
+
+ // #3305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143216
+
+ // #3306
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143264+
+
+ // #3307
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 143344+
+
+ // #3308
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 143424+
+
+ // #3309
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 143440
+
+ // #3310
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143472
+
+ // #3311
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143520+
+
+ // #3312
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 143600+
+
+ // #3313
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 143680+
+
+ // #3314
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 143696
+
+ // #3315
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143728
+
+ // #3316
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143776+
+
+ // #3317
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 143856+
+
+ // #3318
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 143936+
+
+ // #3319
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 143952
+
+ // #3320
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 143984
+
+ // #3321
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144032+
+
+ // #3322
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 144112+
+
+ // #3323
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 144192+
+
+ // #3324
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 144208
+
+ // #3325
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144240
+
+ // #3326
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144288+
+
+ // #3327
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 144368+
+
+ // #3328
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 144448+
+
+ // #3329
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 144464
+
+ // #3330
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144496
+
+ // #3331
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144544+
+
+ // #3332
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 144624+
+
+ // #3333
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 144704+
+
+ // #3334
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 144720
+
+ // #3335
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144752
+
+ // #3336
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 144800+
+
+ // #3337
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 144880+
+
+ // #3338
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 144960+
+
+ // #3339
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 144976
+
+ // #3340
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145008
+
+ // #3341
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145056+
+
+ // #3342
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 145136+
+
+ // #3343
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 145216+
+
+ // #3344
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 145232
+
+ // #3345
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145264
+
+ // #3346
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145312+
+
+ // #3347
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 145392+
+
+ // #3348
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 145472+
+
+ // #3349
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 145488
+
+ // #3350
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145520
+
+ // #3351
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145568+
+
+ // #3352
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 145648+
+
+ // #3353
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 145728+
+
+ // #3354
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 145744
+
+ // #3355
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145776
+
+ // #3356
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 145824+
+
+ // #3357
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 145904+
+
+ // #3358
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 145984+
+
+ // #3359
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 146000
+
+ // #3360
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146032
+
+ // #3361
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146080+
+
+ // #3362
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 146160+
+
+ // #3363
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 146240+
+
+ // #3364
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 146256
+
+ // #3365
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146288
+
+ // #3366
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146336+
+
+ // #3367
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 146416+
+
+ // #3368
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 146496+
+
+ // #3369
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 146512
+
+ // #3370
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146544
+
+ // #3371
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146592+
+
+ // #3372
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 146672+
+
+ // #3373
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 146752+
+
+ // #3374
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 146768
+
+ // #3375
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146800
+
+ // #3376
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 146848+
+
+ // #3377
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 146928+
+
+ // #3378
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 147008+
+
+ // #3379
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 147024
+
+ // #3380
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147056
+
+ // #3381
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147104+
+
+ // #3382
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 147184+
+
+ // #3383
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 147264+
+
+ // #3384
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 147280
+
+ // #3385
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147312
+
+ // #3386
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147360+
+
+ // #3387
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 147440+
+
+ // #3388
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 147520+
+
+ // #3389
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 147536
+
+ // #3390
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147568
+
+ // #3391
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147616+
+
+ // #3392
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 147696+
+
+ // #3393
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 147776+
+
+ // #3394
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 147792
+
+ // #3395
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147824
+
+ // #3396
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 147872+
+
+ // #3397
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 147952+
+
+ // #3398
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 148032+
+
+ // #3399
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 148048
+
+ // #3400
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148080
+
+ // #3401
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148128+
+
+ // #3402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 148208+
+
+ // #3403
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 148288+
+
+ // #3404
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 148304
+
+ // #3405
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148336
+
+ // #3406
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148384+
+
+ // #3407
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 148464+
+
+ // #3408
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 148544+
+
+ // #3409
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 148560
+
+ // #3410
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148592
+
+ // #3411
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148640+
+
+ // #3412
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 148720+
+
+ // #3413
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 148800+
+
+ // #3414
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 148816
+
+ // #3415
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148848
+
+ // #3416
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 148896+
+
+ // #3417
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 148976+
+
+ // #3418
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 149056+
+
+ // #3419
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 149072
+
+ // #3420
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149104
+
+ // #3421
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149152+
+
+ // #3422
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 149232+
+
+ // #3423
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 149312+
+
+ // #3424
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 149328
+
+ // #3425
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149360
+
+ // #3426
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149408+
+
+ // #3427
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 149488+
+
+ // #3428
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 149568+
+
+ // #3429
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 149584
+
+ // #3430
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149616
+
+ // #3431
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149664+
+
+ // #3432
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 149744+
+
+ // #3433
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 149824+
+
+ // #3434
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 149840
+
+ // #3435
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149872
+
+ // #3436
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 149920+
+
+ // #3437
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 150000+
+
+ // #3438
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 150080+
+
+ // #3439
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 150096
+
+ // #3440
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150128
+
+ // #3441
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150176+
+
+ // #3442
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 150256+
+
+ // #3443
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 150336+
+
+ // #3444
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 150352
+
+ // #3445
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150384
+
+ // #3446
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150432+
+
+ // #3447
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 150512+
+
+ // #3448
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 150592+
+
+ // #3449
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 150608
+
+ // #3450
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150640
+
+ // #3451
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150688+
+
+ // #3452
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 150768+
+
+ // #3453
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 150848+
+
+ // #3454
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 150864
+
+ // #3455
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150896
+
+ // #3456
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 150944+
+
+ // #3457
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 151024+
+
+ // #3458
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 151104+
+
+ // #3459
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 151120
+
+ // #3460
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151152
+
+ // #3461
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151200+
+
+ // #3462
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 151280+
+
+ // #3463
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 151360+
+
+ // #3464
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 151376
+
+ // #3465
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151408
+
+ // #3466
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151456+
+
+ // #3467
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 151536+
+
+ // #3468
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 151616+
+
+ // #3469
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 151632
+
+ // #3470
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151664
+
+ // #3471
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151712+
+
+ // #3472
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 151792+
+
+ // #3473
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 151872+
+
+ // #3474
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 151888
+
+ // #3475
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151920
+
+ // #3476
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 151968+
+
+ // #3477
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 152048+
+
+ // #3478
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 152128+
+
+ // #3479
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 152144
+
+ // #3480
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152176
+
+ // #3481
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152224+
+
+ // #3482
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 152304+
+
+ // #3483
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 152384+
+
+ // #3484
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 152400
+
+ // #3485
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152432
+
+ // #3486
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152480+
+
+ // #3487
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 152560+
+
+ // #3488
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 152640+
+
+ // #3489
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 152656
+
+ // #3490
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152688
+
+ // #3491
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152736+
+
+ // #3492
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 152816+
+
+ // #3493
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 152896+
+
+ // #3494
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 152912
+
+ // #3495
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152944
+
+ // #3496
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 152992+
+
+ // #3497
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 153072+
+
+ // #3498
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 153152+
+
+ // #3499
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 153168
+
+ // #3500
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153200
+
+ // #3501
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153248+
+
+ // #3502
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 153328+
+
+ // #3503
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 153408+
+
+ // #3504
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 153424
+
+ // #3505
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153456
+
+ // #3506
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153504+
+
+ // #3507
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 153584+
+
+ // #3508
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 153664+
+
+ // #3509
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 153680
+
+ // #3510
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153712
+
+ // #3511
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153760+
+
+ // #3512
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 153840+
+
+ // #3513
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 153920+
+
+ // #3514
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 153936
+
+ // #3515
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 153968
+
+ // #3516
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154016+
+
+ // #3517
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 154096+
+
+ // #3518
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 154176+
+
+ // #3519
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 154192
+
+ // #3520
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154224
+
+ // #3521
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154272+
+
+ // #3522
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 154352+
+
+ // #3523
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 154432+
+
+ // #3524
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 154448
+
+ // #3525
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154480
+
+ // #3526
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154528+
+
+ // #3527
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 154608+
+
+ // #3528
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 154688+
+
+ // #3529
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 154704
+
+ // #3530
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154736
+
+ // #3531
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154784+
+
+ // #3532
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 154864+
+
+ // #3533
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 154944+
+
+ // #3534
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 154960
+
+ // #3535
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 154992
+
+ // #3536
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155040+
+
+ // #3537
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 155120+
+
+ // #3538
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 155200+
+
+ // #3539
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 155216
+
+ // #3540
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155248
+
+ // #3541
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155296+
+
+ // #3542
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 155376+
+
+ // #3543
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 155456+
+
+ // #3544
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 155472
+
+ // #3545
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155504
+
+ // #3546
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155552+
+
+ // #3547
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 155632+
+
+ // #3548
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 155712+
+
+ // #3549
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 155728
+
+ // #3550
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155760
+
+ // #3551
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 155808+
+
+ // #3552
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 155888+
+
+ // #3553
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 155968+
+
+ // #3554
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 155984
+
+ // #3555
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156016
+
+ // #3556
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156064+
+
+ // #3557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 156144+
+
+ // #3558
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 156224+
+
+ // #3559
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 156240
+
+ // #3560
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156272
+
+ // #3561
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156320+
+
+ // #3562
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 156400+
+
+ // #3563
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 156480+
+
+ // #3564
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 156496
+
+ // #3565
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156528
+
+ // #3566
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156576+
+
+ // #3567
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 156656+
+
+ // #3568
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 156736+
+
+ // #3569
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 156752
+
+ // #3570
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156784
+
+ // #3571
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 156832+
+
+ // #3572
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 156912+
+
+ // #3573
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 156992+
+
+ // #3574
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 157008
+
+ // #3575
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157040
+
+ // #3576
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157088+
+
+ // #3577
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 157168+
+
+ // #3578
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 157248+
+
+ // #3579
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 157264
+
+ // #3580
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157296
+
+ // #3581
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157344+
+
+ // #3582
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 157424+
+
+ // #3583
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 157504+
+
+ // #3584
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 157520
+
+ // #3585
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157552
+
+ // #3586
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157600+
+
+ // #3587
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 157680+
+
+ // #3588
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 157760+
+
+ // #3589
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 157776
+
+ // #3590
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157808
+
+ // #3591
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 157856+
+
+ // #3592
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 157936+
+
+ // #3593
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 158016+
+
+ // #3594
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 158032
+
+ // #3595
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158064
+
+ // #3596
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158112+
+
+ // #3597
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 158192+
+
+ // #3598
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 158272+
+
+ // #3599
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 158288
+
+ // #3600
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158320
+
+ // #3601
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158368+
+
+ // #3602
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 158448+
+
+ // #3603
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 158528+
+
+ // #3604
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 158544
+
+ // #3605
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158576
+
+ // #3606
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158624+
+
+ // #3607
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 158704+
+
+ // #3608
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 158784+
+
+ // #3609
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 158800
+
+ // #3610
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158832
+
+ // #3611
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 158880+
+
+ // #3612
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 158960+
+
+ // #3613
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 159040+
+
+ // #3614
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 159056
+
+ // #3615
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159088
+
+ // #3616
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159136+
+
+ // #3617
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 159216+
+
+ // #3618
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 159296+
+
+ // #3619
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 159312
+
+ // #3620
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159344
+
+ // #3621
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159392+
+
+ // #3622
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 159472+
+
+ // #3623
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 159552+
+
+ // #3624
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 159568
+
+ // #3625
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159600
+
+ // #3626
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159648+
+
+ // #3627
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 159728+
+
+ // #3628
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 159808+
+
+ // #3629
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 159824
+
+ // #3630
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159856
+
+ // #3631
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 159904+
+
+ // #3632
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 159984+
+
+ // #3633
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 160064+
+
+ // #3634
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 160080
+
+ // #3635
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160112
+
+ // #3636
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160160+
+
+ // #3637
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 160240+
+
+ // #3638
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 160320+
+
+ // #3639
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 160336
+
+ // #3640
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160368
+
+ // #3641
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160416+
+
+ // #3642
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 160496+
+
+ // #3643
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 160576+
+
+ // #3644
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 160592
+
+ // #3645
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160624
+
+ // #3646
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160672+
+
+ // #3647
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 160752+
+
+ // #3648
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 160832+
+
+ // #3649
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 160848
+
+ // #3650
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160880
+
+ // #3651
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 160928+
+
+ // #3652
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 161008+
+
+ // #3653
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 161088+
+
+ // #3654
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 161104
+
+ // #3655
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161136
+
+ // #3656
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161184+
+
+ // #3657
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 161264+
+
+ // #3658
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 161344+
+
+ // #3659
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 161360
+
+ // #3660
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161392
+
+ // #3661
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161440+
+
+ // #3662
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 161520+
+
+ // #3663
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 161600+
+
+ // #3664
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 161616
+
+ // #3665
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161648
+
+ // #3666
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161696+
+
+ // #3667
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 161776+
+
+ // #3668
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 161856+
+
+ // #3669
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 161872
+
+ // #3670
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161904
+
+ // #3671
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 161952+
+
+ // #3672
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 162032+
+
+ // #3673
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 162112+
+
+ // #3674
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 162128
+
+ // #3675
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162160
+
+ // #3676
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162208+
+
+ // #3677
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 162288+
+
+ // #3678
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 162368+
+
+ // #3679
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 162384
+
+ // #3680
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162416
+
+ // #3681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162464+
+
+ // #3682
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 162544+
+
+ // #3683
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 162624+
+
+ // #3684
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 162640
+
+ // #3685
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162672
+
+ // #3686
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162720+
+
+ // #3687
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 162800+
+
+ // #3688
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 162880+
+
+ // #3689
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 162896
+
+ // #3690
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162928
+
+ // #3691
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 162976+
+
+ // #3692
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 163056+
+
+ // #3693
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 163136+
+
+ // #3694
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 163152
+
+ // #3695
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163184
+
+ // #3696
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163232+
+
+ // #3697
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 163312+
+
+ // #3698
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 163392+
+
+ // #3699
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 163408
+
+ // #3700
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163440
+
+ // #3701
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163488+
+
+ // #3702
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 163568+
+
+ // #3703
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 163648+
+
+ // #3704
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 163664
+
+ // #3705
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163696
+
+ // #3706
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163744+
+
+ // #3707
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 163824+
+
+ // #3708
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 163904+
+
+ // #3709
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 163920
+
+ // #3710
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 163952
+
+ // #3711
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164000+
+
+ // #3712
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 164080+
+
+ // #3713
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 164160+
+
+ // #3714
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 164176
+
+ // #3715
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164208
+
+ // #3716
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164256+
+
+ // #3717
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 164336+
+
+ // #3718
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 164416+
+
+ // #3719
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 164432
+
+ // #3720
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164464
+
+ // #3721
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164512+
+
+ // #3722
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 164592+
+
+ // #3723
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 164672+
+
+ // #3724
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 164688
+
+ // #3725
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164720
+
+ // #3726
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164768+
+
+ // #3727
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 164848+
+
+ // #3728
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 164928+
+
+ // #3729
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 164944
+
+ // #3730
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 164976
+
+ // #3731
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165024+
+
+ // #3732
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 165104+
+
+ // #3733
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 165184+
+
+ // #3734
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 165200
+
+ // #3735
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165232
+
+ // #3736
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165280+
+
+ // #3737
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 165360+
+
+ // #3738
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 165440+
+
+ // #3739
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 165456
+
+ // #3740
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165488
+
+ // #3741
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165536+
+
+ // #3742
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 165616+
+
+ // #3743
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 165696+
+
+ // #3744
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 165712
+
+ // #3745
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165744
+
+ // #3746
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 165792+
+
+ // #3747
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 165872+
+
+ // #3748
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 165952+
+
+ // #3749
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 165968
+
+ // #3750
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166000
+
+ // #3751
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166048+
+
+ // #3752
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 166128+
+
+ // #3753
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 166208+
+
+ // #3754
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 166224
+
+ // #3755
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166256
+
+ // #3756
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166304+
+
+ // #3757
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 166384+
+
+ // #3758
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 166464+
+
+ // #3759
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 166480
+
+ // #3760
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166512
+
+ // #3761
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166560+
+
+ // #3762
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 166640+
+
+ // #3763
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 166720+
+
+ // #3764
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 166736
+
+ // #3765
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166768
+
+ // #3766
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 166816+
+
+ // #3767
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 166896+
+
+ // #3768
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 166976+
+
+ // #3769
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 166992
+
+ // #3770
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167024
+
+ // #3771
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167072+
+
+ // #3772
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 167152+
+
+ // #3773
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 167232+
+
+ // #3774
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 167248
+
+ // #3775
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167280
+
+ // #3776
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167328+
+
+ // #3777
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 167408+
+
+ // #3778
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 167488+
+
+ // #3779
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 167504
+
+ // #3780
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167536
+
+ // #3781
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167584+
+
+ // #3782
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 167664+
+
+ // #3783
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 167744+
+
+ // #3784
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 167760
+
+ // #3785
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167792
+
+ // #3786
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 167840+
+
+ // #3787
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 167920+
+
+ // #3788
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 168000+
+
+ // #3789
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 168016
+
+ // #3790
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168048
+
+ // #3791
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168096+
+
+ // #3792
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 168176+
+
+ // #3793
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 168256+
+
+ // #3794
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 168272
+
+ // #3795
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168304
+
+ // #3796
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168352+
+
+ // #3797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 168432+
+
+ // #3798
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 168512+
+
+ // #3799
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 168528
+
+ // #3800
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168560
+
+ // #3801
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168608+
+
+ // #3802
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 168688+
+
+ // #3803
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 168768+
+
+ // #3804
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 168784
+
+ // #3805
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168816
+
+ // #3806
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 168864+
+
+ // #3807
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 168944+
+
+ // #3808
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 169024+
+
+ // #3809
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 169040
+
+ // #3810
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169072
+
+ // #3811
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169120+
+
+ // #3812
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 169200+
+
+ // #3813
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 169280+
+
+ // #3814
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 169296
+
+ // #3815
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169328
+
+ // #3816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169376+
+
+ // #3817
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 169456+
+
+ // #3818
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 169536+
+
+ // #3819
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 169552
+
+ // #3820
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169584
+
+ // #3821
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169632+
+
+ // #3822
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 169712+
+
+ // #3823
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 169792+
+
+ // #3824
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 169808
+
+ // #3825
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169840
+
+ // #3826
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 169888+
+
+ // #3827
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 169968+
+
+ // #3828
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 170048+
+
+ // #3829
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 170064
+
+ // #3830
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170096
+
+ // #3831
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170144+
+
+ // #3832
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 170224+
+
+ // #3833
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 170304+
+
+ // #3834
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 170320
+
+ // #3835
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170352
+
+ // #3836
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170400+
+
+ // #3837
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 170480+
+
+ // #3838
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 170560+
+
+ // #3839
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 170576
+
+ // #3840
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170608
+
+ // #3841
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170656+
+
+ // #3842
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 170736+
+
+ // #3843
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 170816+
+
+ // #3844
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 170832
+
+ // #3845
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170864
+
+ // #3846
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 170912+
+
+ // #3847
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 170992+
+
+ // #3848
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 171072+
+
+ // #3849
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 171088
+
+ // #3850
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171120
+
+ // #3851
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171168+
+
+ // #3852
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 171248+
+
+ // #3853
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 171328+
+
+ // #3854
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 171344
+
+ // #3855
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171376
+
+ // #3856
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171424+
+
+ // #3857
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 171504+
+
+ // #3858
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 171584+
+
+ // #3859
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 171600
+
+ // #3860
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171632
+
+ // #3861
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171680+
+
+ // #3862
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 171760+
+
+ // #3863
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 171840+
+
+ // #3864
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 171856
+
+ // #3865
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171888
+
+ // #3866
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 171936+
+
+ // #3867
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 172016+
+
+ // #3868
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 172096+
+
+ // #3869
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 172112
+
+ // #3870
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172144
+
+ // #3871
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172192+
+
+ // #3872
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 172272+
+
+ // #3873
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 172352+
+
+ // #3874
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 172368
+
+ // #3875
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172400
+
+ // #3876
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172448+
+
+ // #3877
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 172528+
+
+ // #3878
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 172608+
+
+ // #3879
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 172624
+
+ // #3880
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172656
+
+ // #3881
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172704+
+
+ // #3882
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 172784+
+
+ // #3883
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 172864+
+
+ // #3884
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 172880
+
+ // #3885
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172912
+
+ // #3886
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 172960+
+
+ // #3887
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 173040+
+
+ // #3888
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 173120+
+
+ // #3889
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 173136
+
+ // #3890
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173168
+
+ // #3891
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173216+
+
+ // #3892
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 173296+
+
+ // #3893
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 173376+
+
+ // #3894
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 173392
+
+ // #3895
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173424
+
+ // #3896
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173472+
+
+ // #3897
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 173552+
+
+ // #3898
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 173632+
+
+ // #3899
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 173648
+
+ // #3900
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173680
+
+ // #3901
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173728+
+
+ // #3902
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 173808+
+
+ // #3903
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 173888+
+
+ // #3904
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 173904
+
+ // #3905
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173936
+
+ // #3906
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 173984+
+
+ // #3907
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 174064+
+
+ // #3908
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 174144+
+
+ // #3909
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 174160
+
+ // #3910
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174192
+
+ // #3911
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174240+
+
+ // #3912
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 174320+
+
+ // #3913
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 174400+
+
+ // #3914
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 174416
+
+ // #3915
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174448
+
+ // #3916
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174496+
+
+ // #3917
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 174576+
+
+ // #3918
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 174656+
+
+ // #3919
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 174672
+
+ // #3920
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174704
+
+ // #3921
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174752+
+
+ // #3922
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 174832+
+
+ // #3923
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 174912+
+
+ // #3924
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 174928
+
+ // #3925
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 174960
+
+ // #3926
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 175008+
+
+ // #3927
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 175088+
+
+ // #3928
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 175168+
+
+ // #3929
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 175184
+
+ // #3930
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 175216
+
+ // #3931
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 175264+
+
+ // #3932
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 175344+
+
+ // #3933
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 175424+
+
+ // #3934
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 175440
+
+ // #3935
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 175472
+
+ // #3936
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 175520+
+
+ // #3937
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 175600+
+
+ // #3938
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 175680+
+
+ // #3939
+ "\377\376\375\374"
+ "Desktop"
+ "\377\376\375\374\373" // 175696
+
+ // #3940
+ "\377\376"
+ "Toolbar"
+ "\377\376\375\374\373\372\371" // 175712
+
+ // #3941
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MainToolbar"
+ "\377\376\375\374\373\372\371\370\367" // 175744
+
+ // #3942
+ "\377\376\375\374\373\372\371\370"
+ "Small"
+ "\377\376\375" // 175760
+
+ // #3943
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Panel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 175792
+
+ // #3944
+ "\377\376\375"
+ "Dialog"
+ "\377\376\375\374\373\372\371" // 175808
+
+ // #3945
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 175824
+
+ // #3946
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 175840
+
+ // #3947
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 175872
+
+ // #3948
+ "\377\376\375\374\373\372\371\370"
+ "DesktopDefault"
+ "\377\376\375\374\373\372\371\370\367\366" // 175904
+
+ // #3949
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 175984+
+
+ // #3950
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 176064+
+
+ // #3951
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 176080
+
+ // #3952
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "16,22,32,48,64,128,256"
+ "\377\376\375\374\373\372\371\370\367\366" // 176160+
+
+ // #3953
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 176192
+
+ // #3954
+ "DesktopSizes"
+ "\377\376\375\374" // 176208
+
+ // #3955
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 176304+
+
+ // #3956
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 176384+
+
+ // #3957
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 176400
+
+ // #3958
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 176416
+
+ // #3959
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 176448
+
+ // #3960
+ "\377\376\375\374\373\372\371\370"
+ "ToolbarDefault"
+ "\377\376\375\374\373\372\371\370\367\366" // 176480
+
+ // #3961
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 176560+
+
+ // #3962
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 176640+
+
+ // #3963
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 176656
+
+ // #3964
+ "16,22,32,48"
+ "\377\376\375\374\373" // 176672
+
+ // #3965
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 176704
+
+ // #3966
+ "\377\376\375\374\373\372\371\370"
+ "ToolbarSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 176736
+
+ // #3967
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 176816+
+
+ // #3968
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 176896+
+
+ // #3969
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 176912
+
+ // #3970
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 176928
+
+ // #3971
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 176960
+
+ // #3972
+ "MainToolbarDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 176992+
+
+ // #3973
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 177072+
+
+ // #3974
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 177152+
+
+ // #3975
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 177168
+
+ // #3976
+ "16,22,32,48"
+ "\377\376\375\374\373" // 177184
+
+ // #3977
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 177216
+
+ // #3978
+ "\377\376\375\374\373\372\371\370"
+ "MainToolbarSizes"
+ "\377\376\375\374\373\372\371\370" // 177248+
+
+ // #3979
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 177328+
+
+ // #3980
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 177408+
+
+ // #3981
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 177424
+
+ // #3982
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 177440
+
+ // #3983
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 177472
+
+ // #3984
+ "\377\376\375\374\373\372\371\370"
+ "SmallDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 177504
+
+ // #3985
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 177584+
+
+ // #3986
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 177664+
+
+ // #3987
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 177680
+
+ // #3988
+ "16,22,32,48"
+ "\377\376\375\374\373" // 177696
+
+ // #3989
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 177728
+
+ // #3990
+ "\377\376\375\374\373\372\371\370"
+ "SmallSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 177760+
+
+ // #3991
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 177840+
+
+ // #3992
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 177920+
+
+ // #3993
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 177936
+
+ // #3994
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 177952
+
+ // #3995
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 177984
+
+ // #3996
+ "\377\376\375\374\373\372\371\370"
+ "PanelDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 178016
+
+ // #3997
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 178096+
+
+ // #3998
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 178176+
+
+ // #3999
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 178192
+
+ // #4000
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48,64,128,256"
+ "\377\376" // 178224
+
+ // #4001
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 178256
+
+ // #4002
+ "PanelSizes"
+ "\377\376\375\374\373\372" // 178272
+
+ // #4003
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 178352+
+
+ // #4004
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 178432+
+
+ // #4005
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 178448
+
+ // #4006
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 178464
+
+ // #4007
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 178496
+
+ // #4008
+ "\377\376\375\374\373\372\371\370"
+ "DialogDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 178528
+
+ // #4009
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 178608+
+
+ // #4010
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 178688+
+
+ // #4011
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 178704
+
+ // #4012
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "16,22,32,48,64,128,256"
+ "\377\376" // 178784+
+
+ // #4013
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 178816
+
+ // #4014
+ "\377\376\375\374\373\372\371\370"
+ "DialogSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 178848
+
+ // #4015
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 178928+
+
+ // #4016
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 179008+
+
+ // #4017
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 179024
+
+ // #4018
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 179040
+
+ // #4019
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 179072
+
+ // #4020
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 179104
+
+ // #4021
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 179136
+
+ // #4022
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 179168
+
+ // #4023
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 179200
+
+ // #4024
+ "\377\376\375"
+ "/usr/share/pixmaps/"
+ "\377\376\375\374\373\372\371\370\367\366" // 179232
+
+ // #4025
+ "index.theme"
+ "\377\376\375\374\373" // 179248
+
+ // #4026
+ "\377"
+ "index.desktop"
+ "\377\376" // 179264
+
+ // #4027
+ "index.theme"
+ "\377\376\375\374\373" // 179280
+
+ // #4028
+ "\377"
+ "index.desktop"
+ "\377\376" // 179296
+
+ // #4029
+ "index.theme"
+ "\377\376\375\374\373" // 179312
+
+ // #4030
+ "index.theme"
+ "\377\376\375\374\373" // 179328
+
+ // #4031
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Icon Theme"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 179360
+
+ // #4032
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 179376
+
+ // #4033
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179408
+
+ // #4034
+ "\377\376\375\374"
+ "DisplayDepth"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 179440
+
+ // #4035
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 179504+
+
+ // #4036
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 179584+
+
+ // #4037
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 179600
+
+ // #4038
+ "8"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179616
+
+ // #4039
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179648
+
+ // #4040
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179680+
+
+ // #4041
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 179760+
+
+ // #4042
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 179840+
+
+ // #4043
+ "8"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179856
+
+ // #4044
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179888
+
+ // #4045
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 179936+
+
+ // #4046
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 180016+
+
+ // #4047
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 180096+
+
+ // #4048
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 180112
+
+ // #4049
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180144
+
+ // #4050
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180192+
+
+ // #4051
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 180272+
+
+ // #4052
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 180352+
+
+ // #4053
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 180368
+
+ // #4054
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180400
+
+ // #4055
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180448+
+
+ // #4056
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 180528+
+
+ // #4057
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 180608+
+
+ // #4058
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 180624
+
+ // #4059
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180656
+
+ // #4060
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180704+
+
+ // #4061
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 180784+
+
+ // #4062
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 180864+
+
+ // #4063
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 180880
+
+ // #4064
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180912
+
+ // #4065
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 180960+
+
+ // #4066
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 181040+
+
+ // #4067
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 181120+
+
+ // #4068
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 181136
+
+ // #4069
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181168
+
+ // #4070
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181216+
+
+ // #4071
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 181296+
+
+ // #4072
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 181376+
+
+ // #4073
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 181392
+
+ // #4074
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181424
+
+ // #4075
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181472+
+
+ // #4076
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 181552+
+
+ // #4077
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 181632+
+
+ // #4078
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 181648
+
+ // #4079
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181680
+
+ // #4080
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181728+
+
+ // #4081
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 181808+
+
+ // #4082
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 181888+
+
+ // #4083
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 181904
+
+ // #4084
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181936
+
+ // #4085
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 181984+
+
+ // #4086
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 182064+
+
+ // #4087
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 182144+
+
+ // #4088
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 182160
+
+ // #4089
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182192
+
+ // #4090
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182240+
+
+ // #4091
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 182320+
+
+ // #4092
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 182400+
+
+ // #4093
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 182416
+
+ // #4094
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182448
+
+ // #4095
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182496+
+
+ // #4096
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 182576+
+
+ // #4097
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 182656+
+
+ // #4098
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 182672
+
+ // #4099
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182704
+
+ // #4100
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182752+
+
+ // #4101
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 182832+
+
+ // #4102
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 182912+
+
+ // #4103
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 182928
+
+ // #4104
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 182960
+
+ // #4105
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183008+
+
+ // #4106
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 183088+
+
+ // #4107
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 183168+
+
+ // #4108
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 183184
+
+ // #4109
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183216
+
+ // #4110
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183264+
+
+ // #4111
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 183344+
+
+ // #4112
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 183424+
+
+ // #4113
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 183440
+
+ // #4114
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183472
+
+ // #4115
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183520+
+
+ // #4116
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 183600+
+
+ // #4117
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 183680+
+
+ // #4118
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 183696
+
+ // #4119
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183728
+
+ // #4120
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183776+
+
+ // #4121
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 183856+
+
+ // #4122
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 183936+
+
+ // #4123
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 183952
+
+ // #4124
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 183984
+
+ // #4125
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184032+
+
+ // #4126
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 184112+
+
+ // #4127
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 184192+
+
+ // #4128
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 184208
+
+ // #4129
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184240
+
+ // #4130
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184288+
+
+ // #4131
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 184368+
+
+ // #4132
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 184448+
+
+ // #4133
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 184464
+
+ // #4134
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184496
+
+ // #4135
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184544+
+
+ // #4136
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 184624+
+
+ // #4137
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 184704+
+
+ // #4138
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 184720
+
+ // #4139
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184752
+
+ // #4140
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 184800+
+
+ // #4141
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 184880+
+
+ // #4142
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 184960+
+
+ // #4143
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 184976
+
+ // #4144
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185008
+
+ // #4145
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185056+
+
+ // #4146
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 185136+
+
+ // #4147
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 185216+
+
+ // #4148
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 185232
+
+ // #4149
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185264
+
+ // #4150
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185312+
+
+ // #4151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 185392+
+
+ // #4152
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 185472+
+
+ // #4153
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 185488
+
+ // #4154
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185520
+
+ // #4155
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185568+
+
+ // #4156
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 185648+
+
+ // #4157
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 185728+
+
+ // #4158
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 185744
+
+ // #4159
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185776
+
+ // #4160
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 185824+
+
+ // #4161
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 185904+
+
+ // #4162
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 185984+
+
+ // #4163
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 186000
+
+ // #4164
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186032
+
+ // #4165
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186080+
+
+ // #4166
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 186160+
+
+ // #4167
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 186240+
+
+ // #4168
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 186256
+
+ // #4169
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186288
+
+ // #4170
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186336+
+
+ // #4171
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 186416+
+
+ // #4172
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 186496+
+
+ // #4173
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 186512
+
+ // #4174
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186544
+
+ // #4175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186592+
+
+ // #4176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 186672+
+
+ // #4177
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 186752+
+
+ // #4178
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 186768
+
+ // #4179
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186800
+
+ // #4180
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 186848+
+
+ // #4181
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 186928+
+
+ // #4182
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 187008+
+
+ // #4183
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 187024
+
+ // #4184
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187056
+
+ // #4185
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187104+
+
+ // #4186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 187184+
+
+ // #4187
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 187264+
+
+ // #4188
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 187280
+
+ // #4189
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187312
+
+ // #4190
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187360+
+
+ // #4191
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 187440+
+
+ // #4192
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 187520+
+
+ // #4193
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 187536
+
+ // #4194
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187568
+
+ // #4195
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187616+
+
+ // #4196
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 187696+
+
+ // #4197
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 187776+
+
+ // #4198
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 187792
+
+ // #4199
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187824
+
+ // #4200
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 187872+
+
+ // #4201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 187952+
+
+ // #4202
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 188032+
+
+ // #4203
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 188048
+
+ // #4204
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188080
+
+ // #4205
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188128+
+
+ // #4206
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 188208+
+
+ // #4207
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 188288+
+
+ // #4208
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 188304
+
+ // #4209
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188336
+
+ // #4210
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188384+
+
+ // #4211
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 188464+
+
+ // #4212
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 188544+
+
+ // #4213
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 188560
+
+ // #4214
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188592
+
+ // #4215
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188640+
+
+ // #4216
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 188720+
+
+ // #4217
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 188800+
+
+ // #4218
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 188816
+
+ // #4219
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188848
+
+ // #4220
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 188896+
+
+ // #4221
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 188976+
+
+ // #4222
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 189056+
+
+ // #4223
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 189072
+
+ // #4224
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189104
+
+ // #4225
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189152+
+
+ // #4226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 189232+
+
+ // #4227
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 189312+
+
+ // #4228
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 189328
+
+ // #4229
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189360
+
+ // #4230
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189408+
+
+ // #4231
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 189488+
+
+ // #4232
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 189568+
+
+ // #4233
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 189584
+
+ // #4234
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189616
+
+ // #4235
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189664+
+
+ // #4236
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 189744+
+
+ // #4237
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 189824+
+
+ // #4238
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 189840
+
+ // #4239
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189872
+
+ // #4240
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 189920+
+
+ // #4241
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 190000+
+
+ // #4242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 190080+
+
+ // #4243
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 190096
+
+ // #4244
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190128
+
+ // #4245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190176+
+
+ // #4246
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 190256+
+
+ // #4247
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 190336+
+
+ // #4248
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 190352
+
+ // #4249
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190384
+
+ // #4250
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190432+
+
+ // #4251
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 190512+
+
+ // #4252
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 190592+
+
+ // #4253
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 190608
+
+ // #4254
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190640
+
+ // #4255
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190688+
+
+ // #4256
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 190768+
+
+ // #4257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 190848+
+
+ // #4258
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 190864
+
+ // #4259
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190896
+
+ // #4260
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 190944+
+
+ // #4261
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 191024+
+
+ // #4262
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 191104+
+
+ // #4263
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 191120
+
+ // #4264
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191152
+
+ // #4265
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191200+
+
+ // #4266
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 191280+
+
+ // #4267
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 191360+
+
+ // #4268
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 191376
+
+ // #4269
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191408
+
+ // #4270
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191456+
+
+ // #4271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 191536+
+
+ // #4272
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 191616+
+
+ // #4273
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 191632
+
+ // #4274
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191664
+
+ // #4275
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191712+
+
+ // #4276
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 191792+
+
+ // #4277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 191872+
+
+ // #4278
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 191888
+
+ // #4279
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191920
+
+ // #4280
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 191968+
+
+ // #4281
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 192048+
+
+ // #4282
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 192128+
+
+ // #4283
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 192144
+
+ // #4284
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192176
+
+ // #4285
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192224+
+
+ // #4286
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 192304+
+
+ // #4287
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 192384+
+
+ // #4288
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 192400
+
+ // #4289
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192432
+
+ // #4290
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192480+
+
+ // #4291
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 192560+
+
+ // #4292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 192640+
+
+ // #4293
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 192656
+
+ // #4294
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192688
+
+ // #4295
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192736+
+
+ // #4296
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 192816+
+
+ // #4297
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 192896+
+
+ // #4298
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 192912
+
+ // #4299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192944
+
+ // #4300
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 192992+
+
+ // #4301
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 193072+
+
+ // #4302
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 193152+
+
+ // #4303
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 193168
+
+ // #4304
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193200
+
+ // #4305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193248+
+
+ // #4306
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 193328+
+
+ // #4307
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 193408+
+
+ // #4308
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 193424
+
+ // #4309
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193456
+
+ // #4310
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193504+
+
+ // #4311
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 193584+
+
+ // #4312
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 193664+
+
+ // #4313
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 193680
+
+ // #4314
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193712
+
+ // #4315
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193760+
+
+ // #4316
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 193840+
+
+ // #4317
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 193920+
+
+ // #4318
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 193936
+
+ // #4319
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 193968
+
+ // #4320
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194016+
+
+ // #4321
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 194096+
+
+ // #4322
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 194176+
+
+ // #4323
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 194192
+
+ // #4324
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194224
+
+ // #4325
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194272+
+
+ // #4326
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 194352+
+
+ // #4327
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 194432+
+
+ // #4328
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 194448
+
+ // #4329
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194480
+
+ // #4330
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194528+
+
+ // #4331
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 194608+
+
+ // #4332
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 194688+
+
+ // #4333
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 194704
+
+ // #4334
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194736
+
+ // #4335
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194784+
+
+ // #4336
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 194864+
+
+ // #4337
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 194944+
+
+ // #4338
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 194960
+
+ // #4339
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 194992
+
+ // #4340
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195040+
+
+ // #4341
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 195120+
+
+ // #4342
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 195200+
+
+ // #4343
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 195216
+
+ // #4344
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195248
+
+ // #4345
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195296+
+
+ // #4346
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 195376+
+
+ // #4347
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 195456+
+
+ // #4348
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 195472
+
+ // #4349
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195504
+
+ // #4350
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195552+
+
+ // #4351
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 195632+
+
+ // #4352
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 195712+
+
+ // #4353
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 195728
+
+ // #4354
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195760
+
+ // #4355
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 195808+
+
+ // #4356
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 195888+
+
+ // #4357
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 195968+
+
+ // #4358
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 195984
+
+ // #4359
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196016
+
+ // #4360
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196064+
+
+ // #4361
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 196144+
+
+ // #4362
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 196224+
+
+ // #4363
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 196240
+
+ // #4364
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196272
+
+ // #4365
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196320+
+
+ // #4366
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 196400+
+
+ // #4367
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 196480+
+
+ // #4368
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 196496
+
+ // #4369
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196528
+
+ // #4370
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196576+
+
+ // #4371
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 196656+
+
+ // #4372
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 196736+
+
+ // #4373
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 196752
+
+ // #4374
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196784
+
+ // #4375
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 196832+
+
+ // #4376
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 196912+
+
+ // #4377
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 196992+
+
+ // #4378
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 197008
+
+ // #4379
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197040
+
+ // #4380
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197088+
+
+ // #4381
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 197168+
+
+ // #4382
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 197248+
+
+ // #4383
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 197264
+
+ // #4384
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197296
+
+ // #4385
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197344+
+
+ // #4386
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 197424+
+
+ // #4387
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 197504+
+
+ // #4388
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 197520
+
+ // #4389
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197552
+
+ // #4390
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197600+
+
+ // #4391
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 197680+
+
+ // #4392
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 197760+
+
+ // #4393
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 197776
+
+ // #4394
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197808
+
+ // #4395
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 197856+
+
+ // #4396
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 197936+
+
+ // #4397
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 198016+
+
+ // #4398
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 198032
+
+ // #4399
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198064
+
+ // #4400
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198112+
+
+ // #4401
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 198192+
+
+ // #4402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 198272+
+
+ // #4403
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 198288
+
+ // #4404
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198320
+
+ // #4405
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198368+
+
+ // #4406
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 198448+
+
+ // #4407
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 198528+
+
+ // #4408
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 198544
+
+ // #4409
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198576
+
+ // #4410
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198624+
+
+ // #4411
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 198704+
+
+ // #4412
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 198784+
+
+ // #4413
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 198800
+
+ // #4414
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198832
+
+ // #4415
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 198880+
+
+ // #4416
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 198960+
+
+ // #4417
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 199040+
+
+ // #4418
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 199056
+
+ // #4419
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199088
+
+ // #4420
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199136+
+
+ // #4421
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 199216+
+
+ // #4422
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 199296+
+
+ // #4423
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 199312
+
+ // #4424
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199344
+
+ // #4425
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199392+
+
+ // #4426
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 199472+
+
+ // #4427
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 199552+
+
+ // #4428
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 199568
+
+ // #4429
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199600
+
+ // #4430
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199648+
+
+ // #4431
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 199728+
+
+ // #4432
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 199808+
+
+ // #4433
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 199824
+
+ // #4434
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199856
+
+ // #4435
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 199904+
+
+ // #4436
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 199984+
+
+ // #4437
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 200064+
+
+ // #4438
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 200080
+
+ // #4439
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200112
+
+ // #4440
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200160+
+
+ // #4441
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 200240+
+
+ // #4442
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 200320+
+
+ // #4443
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 200336
+
+ // #4444
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200368
+
+ // #4445
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200416+
+
+ // #4446
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 200496+
+
+ // #4447
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 200576+
+
+ // #4448
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 200592
+
+ // #4449
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200624
+
+ // #4450
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200672+
+
+ // #4451
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 200752+
+
+ // #4452
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 200832+
+
+ // #4453
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 200848
+
+ // #4454
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200880
+
+ // #4455
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 200928+
+
+ // #4456
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 201008+
+
+ // #4457
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 201088+
+
+ // #4458
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 201104
+
+ // #4459
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201136
+
+ // #4460
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201184+
+
+ // #4461
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 201264+
+
+ // #4462
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 201344+
+
+ // #4463
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 201360
+
+ // #4464
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201392
+
+ // #4465
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201440+
+
+ // #4466
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 201520+
+
+ // #4467
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 201600+
+
+ // #4468
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 201616
+
+ // #4469
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201648
+
+ // #4470
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201696+
+
+ // #4471
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 201776+
+
+ // #4472
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 201856+
+
+ // #4473
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 201872
+
+ // #4474
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201904
+
+ // #4475
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 201952+
+
+ // #4476
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 202032+
+
+ // #4477
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 202112+
+
+ // #4478
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 202128
+
+ // #4479
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202160
+
+ // #4480
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202208+
+
+ // #4481
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 202288+
+
+ // #4482
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 202368+
+
+ // #4483
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 202384
+
+ // #4484
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202416
+
+ // #4485
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202464+
+
+ // #4486
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 202544+
+
+ // #4487
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 202624+
+
+ // #4488
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 202640
+
+ // #4489
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202672
+
+ // #4490
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202720+
+
+ // #4491
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 202800+
+
+ // #4492
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 202880+
+
+ // #4493
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 202896
+
+ // #4494
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202928
+
+ // #4495
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 202976+
+
+ // #4496
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 203056+
+
+ // #4497
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 203136+
+
+ // #4498
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 203152
+
+ // #4499
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203184
+
+ // #4500
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203232+
+
+ // #4501
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 203312+
+
+ // #4502
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 203392+
+
+ // #4503
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 203408
+
+ // #4504
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203440
+
+ // #4505
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203488+
+
+ // #4506
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 203568+
+
+ // #4507
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 203648+
+
+ // #4508
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 203664
+
+ // #4509
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203696
+
+ // #4510
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203744+
+
+ // #4511
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 203824+
+
+ // #4512
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 203904+
+
+ // #4513
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 203920
+
+ // #4514
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 203952
+
+ // #4515
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204000+
+
+ // #4516
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 204080+
+
+ // #4517
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 204160+
+
+ // #4518
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 204176
+
+ // #4519
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204208
+
+ // #4520
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204256+
+
+ // #4521
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 204336+
+
+ // #4522
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 204416+
+
+ // #4523
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 204432
+
+ // #4524
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204464
+
+ // #4525
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204512+
+
+ // #4526
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 204592+
+
+ // #4527
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 204672+
+
+ // #4528
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 204688
+
+ // #4529
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204720
+
+ // #4530
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204768+
+
+ // #4531
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 204848+
+
+ // #4532
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 204928+
+
+ // #4533
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 204944
+
+ // #4534
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 204976
+
+ // #4535
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205024+
+
+ // #4536
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 205104+
+
+ // #4537
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 205184+
+
+ // #4538
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 205200
+
+ // #4539
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205232
+
+ // #4540
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205280+
+
+ // #4541
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 205360+
+
+ // #4542
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 205440+
+
+ // #4543
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 205456
+
+ // #4544
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205488
+
+ // #4545
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205536+
+
+ // #4546
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 205616+
+
+ // #4547
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 205696+
+
+ // #4548
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 205712
+
+ // #4549
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205744
+
+ // #4550
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 205792+
+
+ // #4551
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 205872+
+
+ // #4552
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 205952+
+
+ // #4553
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 205968
+
+ // #4554
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206000
+
+ // #4555
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206048+
+
+ // #4556
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 206128+
+
+ // #4557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 206208+
+
+ // #4558
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 206224
+
+ // #4559
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206256
+
+ // #4560
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206304+
+
+ // #4561
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 206384+
+
+ // #4562
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 206464+
+
+ // #4563
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 206480
+
+ // #4564
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206512
+
+ // #4565
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206560+
+
+ // #4566
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 206640+
+
+ // #4567
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 206720+
+
+ // #4568
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 206736
+
+ // #4569
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206768
+
+ // #4570
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 206816+
+
+ // #4571
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 206896+
+
+ // #4572
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 206976+
+
+ // #4573
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 206992
+
+ // #4574
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207024
+
+ // #4575
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207072+
+
+ // #4576
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 207152+
+
+ // #4577
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 207232+
+
+ // #4578
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 207248
+
+ // #4579
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207280
+
+ // #4580
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207328+
+
+ // #4581
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 207408+
+
+ // #4582
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 207488+
+
+ // #4583
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 207504
+
+ // #4584
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207536
+
+ // #4585
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207584+
+
+ // #4586
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 207664+
+
+ // #4587
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 207744+
+
+ // #4588
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 207760
+
+ // #4589
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207792
+
+ // #4590
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 207840+
+
+ // #4591
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 207920+
+
+ // #4592
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 208000+
+
+ // #4593
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 208016
+
+ // #4594
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208048
+
+ // #4595
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208096+
+
+ // #4596
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 208176+
+
+ // #4597
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 208256+
+
+ // #4598
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 208272
+
+ // #4599
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208304
+
+ // #4600
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208352+
+
+ // #4601
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 208432+
+
+ // #4602
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 208512+
+
+ // #4603
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 208528
+
+ // #4604
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208560
+
+ // #4605
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208608+
+
+ // #4606
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 208688+
+
+ // #4607
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 208768+
+
+ // #4608
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 208784
+
+ // #4609
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208816
+
+ // #4610
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 208864+
+
+ // #4611
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 208944+
+
+ // #4612
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 209024+
+
+ // #4613
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 209040
+
+ // #4614
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209072
+
+ // #4615
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209120+
+
+ // #4616
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 209200+
+
+ // #4617
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 209280+
+
+ // #4618
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 209296
+
+ // #4619
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209328
+
+ // #4620
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209376+
+
+ // #4621
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 209456+
+
+ // #4622
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 209536+
+
+ // #4623
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 209552
+
+ // #4624
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209584
+
+ // #4625
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209632+
+
+ // #4626
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 209712+
+
+ // #4627
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 209792+
+
+ // #4628
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 209808
+
+ // #4629
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209840
+
+ // #4630
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 209888+
+
+ // #4631
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 209968+
+
+ // #4632
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 210048+
+
+ // #4633
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 210064
+
+ // #4634
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210096
+
+ // #4635
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210144+
+
+ // #4636
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 210224+
+
+ // #4637
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 210304+
+
+ // #4638
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 210320
+
+ // #4639
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210352
+
+ // #4640
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210400+
+
+ // #4641
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 210480+
+
+ // #4642
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 210560+
+
+ // #4643
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 210576
+
+ // #4644
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210608
+
+ // #4645
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210656+
+
+ // #4646
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 210736+
+
+ // #4647
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 210816+
+
+ // #4648
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 210832
+
+ // #4649
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210864
+
+ // #4650
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 210912+
+
+ // #4651
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 210992+
+
+ // #4652
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 211072+
+
+ // #4653
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 211088
+
+ // #4654
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211120
+
+ // #4655
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211168+
+
+ // #4656
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 211248+
+
+ // #4657
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 211328+
+
+ // #4658
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 211344
+
+ // #4659
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211376
+
+ // #4660
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211424+
+
+ // #4661
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 211504+
+
+ // #4662
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 211584+
+
+ // #4663
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 211600
+
+ // #4664
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211632
+
+ // #4665
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211680+
+
+ // #4666
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 211760+
+
+ // #4667
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 211840+
+
+ // #4668
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 211856
+
+ // #4669
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211888
+
+ // #4670
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 211936+
+
+ // #4671
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 212016+
+
+ // #4672
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 212096+
+
+ // #4673
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 212112
+
+ // #4674
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212144
+
+ // #4675
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212192+
+
+ // #4676
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 212272+
+
+ // #4677
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 212352+
+
+ // #4678
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 212368
+
+ // #4679
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212400
+
+ // #4680
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212448+
+
+ // #4681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 212528+
+
+ // #4682
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 212608+
+
+ // #4683
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 212624
+
+ // #4684
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212656
+
+ // #4685
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212704+
+
+ // #4686
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 212784+
+
+ // #4687
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 212864+
+
+ // #4688
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 212880
+
+ // #4689
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212912
+
+ // #4690
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 212960+
+
+ // #4691
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 213040+
+
+ // #4692
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 213120+
+
+ // #4693
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 213136
+
+ // #4694
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213168
+
+ // #4695
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213216+
+
+ // #4696
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 213296+
+
+ // #4697
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 213376+
+
+ // #4698
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 213392
+
+ // #4699
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213424
+
+ // #4700
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213472+
+
+ // #4701
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 213552+
+
+ // #4702
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 213632+
+
+ // #4703
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 213648
+
+ // #4704
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213680
+
+ // #4705
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213728+
+
+ // #4706
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 213808+
+
+ // #4707
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 213888+
+
+ // #4708
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 213904
+
+ // #4709
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213936
+
+ // #4710
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 213984+
+
+ // #4711
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 214064+
+
+ // #4712
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 214144+
+
+ // #4713
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 214160
+
+ // #4714
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214192
+
+ // #4715
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214240+
+
+ // #4716
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 214320+
+
+ // #4717
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 214400+
+
+ // #4718
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 214416
+
+ // #4719
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214448
+
+ // #4720
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214496+
+
+ // #4721
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 214576+
+
+ // #4722
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 214656+
+
+ // #4723
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 214672
+
+ // #4724
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214704
+
+ // #4725
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214752+
+
+ // #4726
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 214832+
+
+ // #4727
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 214912+
+
+ // #4728
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 214928
+
+ // #4729
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 214960
+
+ // #4730
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215008+
+
+ // #4731
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 215088+
+
+ // #4732
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 215168+
+
+ // #4733
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 215184
+
+ // #4734
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215216
+
+ // #4735
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215264+
+
+ // #4736
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 215344+
+
+ // #4737
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 215424+
+
+ // #4738
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 215440
+
+ // #4739
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215472
+
+ // #4740
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215520+
+
+ // #4741
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 215600+
+
+ // #4742
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 215680+
+
+ // #4743
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 215696
+
+ // #4744
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215728
+
+ // #4745
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215776+
+
+ // #4746
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 215856+
+
+ // #4747
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 215936+
+
+ // #4748
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 215952
+
+ // #4749
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 215984
+
+ // #4750
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216032+
+
+ // #4751
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 216112+
+
+ // #4752
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 216192+
+
+ // #4753
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 216208
+
+ // #4754
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216240
+
+ // #4755
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216288+
+
+ // #4756
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 216368+
+
+ // #4757
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 216448+
+
+ // #4758
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 216464
+
+ // #4759
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216496
+
+ // #4760
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216544+
+
+ // #4761
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 216624+
+
+ // #4762
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 216704+
+
+ // #4763
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 216720
+
+ // #4764
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216752
+
+ // #4765
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 216800+
+
+ // #4766
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 216880+
+
+ // #4767
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 216960+
+
+ // #4768
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 216976
+
+ // #4769
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217008
+
+ // #4770
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217056+
+
+ // #4771
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 217136+
+
+ // #4772
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 217216+
+
+ // #4773
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 217232
+
+ // #4774
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217264
+
+ // #4775
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217312+
+
+ // #4776
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 217392+
+
+ // #4777
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 217472+
+
+ // #4778
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 217488
+
+ // #4779
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217520
+
+ // #4780
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217568+
+
+ // #4781
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 217648+
+
+ // #4782
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 217728+
+
+ // #4783
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 217744
+
+ // #4784
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217776
+
+ // #4785
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 217824+
+
+ // #4786
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 217904+
+
+ // #4787
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 217984+
+
+ // #4788
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 218000
+
+ // #4789
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218032
+
+ // #4790
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218080+
+
+ // #4791
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 218160+
+
+ // #4792
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 218240+
+
+ // #4793
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 218256
+
+ // #4794
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218288
+
+ // #4795
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218336+
+
+ // #4796
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 218416+
+
+ // #4797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 218496+
+
+ // #4798
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 218512
+
+ // #4799
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218544
+
+ // #4800
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218592+
+
+ // #4801
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 218672+
+
+ // #4802
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 218752+
+
+ // #4803
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 218768
+
+ // #4804
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218800
+
+ // #4805
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 218848+
+
+ // #4806
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 218928+
+
+ // #4807
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 219008+
+
+ // #4808
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 219024
+
+ // #4809
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219056
+
+ // #4810
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219104+
+
+ // #4811
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 219184+
+
+ // #4812
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 219264+
+
+ // #4813
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 219280
+
+ // #4814
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219312
+
+ // #4815
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219360+
+
+ // #4816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 219440+
+
+ // #4817
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 219520+
+
+ // #4818
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 219536
+
+ // #4819
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219568
+
+ // #4820
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219616+
+
+ // #4821
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 219696+
+
+ // #4822
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 219776+
+
+ // #4823
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 219792
+
+ // #4824
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219824
+
+ // #4825
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 219872+
+
+ // #4826
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 219952+
+
+ // #4827
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 220032+
+
+ // #4828
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 220048
+
+ // #4829
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 220080
+
+ // #4830
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 220128+
+
+ // #4831
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 220208+
+
+ // #4832
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 220288+
+
+ // #4833
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 220304
+
+ // #4834
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 220336
+
+ // #4835
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 220384+
+
+ // #4836
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 220464+
+
+ // #4837
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 220544+
+
+ // #4838
+ "\377\376\375\374"
+ "Desktop"
+ "\377\376\375\374\373" // 220560
+
+ // #4839
+ "\377\376"
+ "Toolbar"
+ "\377\376\375\374\373\372\371" // 220576
+
+ // #4840
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MainToolbar"
+ "\377\376\375\374\373\372\371\370\367" // 220608
+
+ // #4841
+ "\377\376\375\374\373\372\371\370"
+ "Small"
+ "\377\376\375" // 220624
+
+ // #4842
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Panel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 220656
+
+ // #4843
+ "\377\376\375"
+ "Dialog"
+ "\377\376\375\374\373\372\371" // 220672
+
+ // #4844
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 220688
+
+ // #4845
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 220704
+
+ // #4846
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 220736
+
+ // #4847
+ "DesktopDefault"
+ "\377\376" // 220752
+
+ // #4848
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 220848+
+
+ // #4849
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 220928+
+
+ // #4850
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 220944
+
+ // #4851
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "16,22,32,48,64,128,256"
+ "\377\376\375\374\373\372\371\370\367\366" // 221024+
+
+ // #4852
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 221056
+
+ // #4853
+ "\377\376\375\374\373\372\371\370"
+ "DesktopSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 221088
+
+ // #4854
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 221168+
+
+ // #4855
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 221248+
+
+ // #4856
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 221264
+
+ // #4857
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 221280
+
+ // #4858
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 221312
+
+ // #4859
+ "ToolbarDefault"
+ "\377\376" // 221328
+
+ // #4860
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 221424+
+
+ // #4861
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 221504+
+
+ // #4862
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 221520
+
+ // #4863
+ "16,22,32,48"
+ "\377\376\375\374\373" // 221536
+
+ // #4864
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 221568
+
+ // #4865
+ "ToolbarSizes"
+ "\377\376\375\374" // 221584
+
+ // #4866
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 221680+
+
+ // #4867
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 221760+
+
+ // #4868
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 221776
+
+ // #4869
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 221792
+
+ // #4870
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 221824
+
+ // #4871
+ "\377\376\375\374\373\372\371\370"
+ "MainToolbarDefault"
+ "\377\376\375\374\373\372" // 221856+
+
+ // #4872
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 221936+
+
+ // #4873
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 222016+
+
+ // #4874
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 222032
+
+ // #4875
+ "16,22,32,48"
+ "\377\376\375\374\373" // 222048
+
+ // #4876
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 222080
+
+ // #4877
+ "MainToolbarSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 222112
+
+ // #4878
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 222192+
+
+ // #4879
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 222272+
+
+ // #4880
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 222288
+
+ // #4881
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 222304
+
+ // #4882
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 222336
+
+ // #4883
+ "SmallDefault"
+ "\377\376\375\374" // 222352
+
+ // #4884
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 222448+
+
+ // #4885
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 222528+
+
+ // #4886
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 222544
+
+ // #4887
+ "16,22,32,48"
+ "\377\376\375\374\373" // 222560
+
+ // #4888
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 222592
+
+ // #4889
+ "\377\376\375\374\373\372\371\370"
+ "SmallSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 222624
+
+ // #4890
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 222704+
+
+ // #4891
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 222784+
+
+ // #4892
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 222800
+
+ // #4893
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 222816
+
+ // #4894
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 222848
+
+ // #4895
+ "\377\376\375\374\373\372\371\370"
+ "PanelDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 222880
+
+ // #4896
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 222960+
+
+ // #4897
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 223040+
+
+ // #4898
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 223056
+
+ // #4899
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48,64,128,256"
+ "\377\376" // 223088
+
+ // #4900
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 223120
+
+ // #4901
+ "\377\376\375\374\373\372\371\370"
+ "PanelSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 223152
+
+ // #4902
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 223216+
+
+ // #4903
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 223296+
+
+ // #4904
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 223312
+
+ // #4905
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 223328
+
+ // #4906
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 223360
+
+ // #4907
+ "DialogDefault"
+ "\377\376\375" // 223376
+
+ // #4908
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 223472+
+
+ // #4909
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 223552+
+
+ // #4910
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 223568
+
+ // #4911
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "16,22,32,48,64,128,256"
+ "\377\376" // 223648+
+
+ // #4912
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 223680
+
+ // #4913
+ "\377\376\375\374\373\372\371\370"
+ "DialogSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 223712
+
+ // #4914
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 223792+
+
+ // #4915
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 223872+
+
+ // #4916
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "hicolor"
+ "\377\376\375\374\373\372\371\370\367\366" // 223904+
+
+ // #4917
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 223920
+
+ // #4918
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 223952
+
+ // #4919
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 223984
+
+ // #4920
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 224016
+
+ // #4921
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 224048
+
+ // #4922
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "/icons/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 224080
+
+ // #4923
+ "\377\376\375"
+ "/usr/share/pixmaps/"
+ "\377\376\375\374\373\372\371\370\367\366" // 224112
+
+ // #4924
+ "index.theme"
+ "\377\376\375\374\373" // 224128
+
+ // #4925
+ "index.theme"
+ "\377\376\375\374\373" // 224144
+
+ // #4926
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Icon Theme"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 224176
+
+ // #4927
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 224192
+
+ // #4928
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 224208
+
+ // #4929
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 224224
+
+ // #4930
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 224240
+
+ // #4931
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 224272
+
+ // #4932
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 224288
+
+ // #4933
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 224304
+
+ // #4934
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 224320
+
+ // #4935
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 224336
+
+ // #4936
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 224352
+
+ // #4937
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 224368
+
+ // #4938
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 224400
+
+ // #4939
+ "\377\376\375\374"
+ "DisplayDepth"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 224432
+
+ // #4940
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 224496+
+
+ // #4941
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 224576+
+
+ // #4942
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 224592
+
+ // #4943
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 224608
+
+ // #4944
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 224624
+
+ // #4945
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Hidden"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 224656
+
+ // #4946
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 224752+
+
+ // #4947
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 224832+
+
+ // #4948
+ "\377\376\375\374\373\372\371\370"
+ "192"
+ "\377\376\375\374\373" // 224848
+
+ // #4949
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 224880
+
+ // #4950
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 224928+
+
+ // #4951
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 225008+
+
+ // #4952
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 225088+
+
+ // #4953
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 225104
+
+ // #4954
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225136
+
+ // #4955
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225184+
+
+ // #4956
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 225264+
+
+ // #4957
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 225344+
+
+ // #4958
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 225360
+
+ // #4959
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225392
+
+ // #4960
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225440+
+
+ // #4961
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 225520+
+
+ // #4962
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 225600+
+
+ // #4963
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 225616
+
+ // #4964
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225648
+
+ // #4965
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225696+
+
+ // #4966
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 225776+
+
+ // #4967
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 225856+
+
+ // #4968
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 225872
+
+ // #4969
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225904
+
+ // #4970
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 225952+
+
+ // #4971
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 226032+
+
+ // #4972
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 226112+
+
+ // #4973
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 226128
+
+ // #4974
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226160
+
+ // #4975
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226208+
+
+ // #4976
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 226288+
+
+ // #4977
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 226368+
+
+ // #4978
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 226384
+
+ // #4979
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226416
+
+ // #4980
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226464+
+
+ // #4981
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 226544+
+
+ // #4982
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 226624+
+
+ // #4983
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 226640
+
+ // #4984
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226672
+
+ // #4985
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226720+
+
+ // #4986
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 226800+
+
+ // #4987
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 226880+
+
+ // #4988
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 226896
+
+ // #4989
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226928
+
+ // #4990
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 226976+
+
+ // #4991
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 227056+
+
+ // #4992
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 227136+
+
+ // #4993
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 227152
+
+ // #4994
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227184
+
+ // #4995
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227232+
+
+ // #4996
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 227312+
+
+ // #4997
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 227392+
+
+ // #4998
+ "\377\376\375\374\373\372\371\370"
+ "96"
+ "\377\376\375\374\373\372" // 227408
+
+ // #4999
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227440
+
+ // #5000
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227488+
+
+ // #5001
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 227568+
+
+ // #5002
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 227648+
+
+ // #5003
+ "\377\376\375\374\373\372\371\370"
+ "96"
+ "\377\376\375\374\373\372" // 227664
+
+ // #5004
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227696
+
+ // #5005
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227744+
+
+ // #5006
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 227824+
+
+ // #5007
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 227904+
+
+ // #5008
+ "96"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 227920
+
+ // #5009
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 227952
+
+ // #5010
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228000+
+
+ // #5011
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 228080+
+
+ // #5012
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 228160+
+
+ // #5013
+ "\377\376\375\374\373\372\371\370"
+ "96"
+ "\377\376\375\374\373\372" // 228176
+
+ // #5014
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228208
+
+ // #5015
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228256+
+
+ // #5016
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 228336+
+
+ // #5017
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 228416+
+
+ // #5018
+ "96"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 228432
+
+ // #5019
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228464
+
+ // #5020
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228512+
+
+ // #5021
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 228592+
+
+ // #5022
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 228672+
+
+ // #5023
+ "72"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 228688
+
+ // #5024
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228720
+
+ // #5025
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228768+
+
+ // #5026
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 228848+
+
+ // #5027
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 228928+
+
+ // #5028
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 228944
+
+ // #5029
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 228976
+
+ // #5030
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229024+
+
+ // #5031
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 229104+
+
+ // #5032
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 229184+
+
+ // #5033
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 229200
+
+ // #5034
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229232
+
+ // #5035
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229280+
+
+ // #5036
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 229360+
+
+ // #5037
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 229440+
+
+ // #5038
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 229456
+
+ // #5039
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229488
+
+ // #5040
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229536+
+
+ // #5041
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 229616+
+
+ // #5042
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 229696+
+
+ // #5043
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 229712
+
+ // #5044
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229744
+
+ // #5045
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 229792+
+
+ // #5046
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 229872+
+
+ // #5047
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 229952+
+
+ // #5048
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 229968
+
+ // #5049
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230000
+
+ // #5050
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230048+
+
+ // #5051
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 230128+
+
+ // #5052
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 230208+
+
+ // #5053
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 230224
+
+ // #5054
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230256
+
+ // #5055
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230304+
+
+ // #5056
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 230384+
+
+ // #5057
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 230464+
+
+ // #5058
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 230480
+
+ // #5059
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230512
+
+ // #5060
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230560+
+
+ // #5061
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 230640+
+
+ // #5062
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 230720+
+
+ // #5063
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 230736
+
+ // #5064
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230768
+
+ // #5065
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 230816+
+
+ // #5066
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 230896+
+
+ // #5067
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 230976+
+
+ // #5068
+ "\377\376\375\374\373\372\371\370"
+ "64"
+ "\377\376\375\374\373\372" // 230992
+
+ // #5069
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231024
+
+ // #5070
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231072+
+
+ // #5071
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 231152+
+
+ // #5072
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 231232+
+
+ // #5073
+ "64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 231248
+
+ // #5074
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231280
+
+ // #5075
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231328+
+
+ // #5076
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 231408+
+
+ // #5077
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 231488+
+
+ // #5078
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 231504
+
+ // #5079
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231536
+
+ // #5080
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231584+
+
+ // #5081
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 231664+
+
+ // #5082
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 231744+
+
+ // #5083
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 231760
+
+ // #5084
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231792
+
+ // #5085
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 231840+
+
+ // #5086
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 231920+
+
+ // #5087
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 232000+
+
+ // #5088
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 232016
+
+ // #5089
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232048
+
+ // #5090
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232096+
+
+ // #5091
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 232176+
+
+ // #5092
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 232256+
+
+ // #5093
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 232272
+
+ // #5094
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232304
+
+ // #5095
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232352+
+
+ // #5096
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 232432+
+
+ // #5097
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 232512+
+
+ // #5098
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 232528
+
+ // #5099
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232560
+
+ // #5100
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232608+
+
+ // #5101
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 232688+
+
+ // #5102
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 232768+
+
+ // #5103
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 232784
+
+ // #5104
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232816
+
+ // #5105
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 232864+
+
+ // #5106
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 232944+
+
+ // #5107
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 233024+
+
+ // #5108
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 233040
+
+ // #5109
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233072
+
+ // #5110
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233120+
+
+ // #5111
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 233200+
+
+ // #5112
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 233280+
+
+ // #5113
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 233296
+
+ // #5114
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233328
+
+ // #5115
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233376+
+
+ // #5116
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 233456+
+
+ // #5117
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 233536+
+
+ // #5118
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 233552
+
+ // #5119
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233584
+
+ // #5120
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233632+
+
+ // #5121
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 233712+
+
+ // #5122
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 233792+
+
+ // #5123
+ "36"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 233808
+
+ // #5124
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233840
+
+ // #5125
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 233888+
+
+ // #5126
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 233968+
+
+ // #5127
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 234048+
+
+ // #5128
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 234064
+
+ // #5129
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234096
+
+ // #5130
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234144+
+
+ // #5131
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 234224+
+
+ // #5132
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 234304+
+
+ // #5133
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 234320
+
+ // #5134
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234352
+
+ // #5135
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234400+
+
+ // #5136
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 234480+
+
+ // #5137
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 234560+
+
+ // #5138
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 234576
+
+ // #5139
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234608
+
+ // #5140
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234656+
+
+ // #5141
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 234736+
+
+ // #5142
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 234816+
+
+ // #5143
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 234832
+
+ // #5144
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234864
+
+ // #5145
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 234912+
+
+ // #5146
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 234992+
+
+ // #5147
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 235072+
+
+ // #5148
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 235088
+
+ // #5149
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235120
+
+ // #5150
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235168+
+
+ // #5151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 235248+
+
+ // #5152
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 235328+
+
+ // #5153
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 235344
+
+ // #5154
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235376
+
+ // #5155
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235424+
+
+ // #5156
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 235504+
+
+ // #5157
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 235584+
+
+ // #5158
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 235600
+
+ // #5159
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235632
+
+ // #5160
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235680+
+
+ // #5161
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 235760+
+
+ // #5162
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 235840+
+
+ // #5163
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 235856
+
+ // #5164
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235888
+
+ // #5165
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 235936+
+
+ // #5166
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 236016+
+
+ // #5167
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 236096+
+
+ // #5168
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 236112
+
+ // #5169
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236144
+
+ // #5170
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236192+
+
+ // #5171
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 236272+
+
+ // #5172
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 236352+
+
+ // #5173
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 236368
+
+ // #5174
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236400
+
+ // #5175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236448+
+
+ // #5176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 236528+
+
+ // #5177
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 236608+
+
+ // #5178
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 236624
+
+ // #5179
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236656
+
+ // #5180
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236704+
+
+ // #5181
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 236784+
+
+ // #5182
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 236864+
+
+ // #5183
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 236880
+
+ // #5184
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236912
+
+ // #5185
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 236960+
+
+ // #5186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 237040+
+
+ // #5187
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 237120+
+
+ // #5188
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 237136
+
+ // #5189
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237168
+
+ // #5190
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237216+
+
+ // #5191
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 237296+
+
+ // #5192
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 237376+
+
+ // #5193
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 237392
+
+ // #5194
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237424
+
+ // #5195
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237472+
+
+ // #5196
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 237552+
+
+ // #5197
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 237632+
+
+ // #5198
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 237648
+
+ // #5199
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237680
+
+ // #5200
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237728+
+
+ // #5201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 237808+
+
+ // #5202
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 237888+
+
+ // #5203
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 237904
+
+ // #5204
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237936
+
+ // #5205
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 237984+
+
+ // #5206
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 238064+
+
+ // #5207
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 238144+
+
+ // #5208
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 238160
+
+ // #5209
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238192
+
+ // #5210
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238240+
+
+ // #5211
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 238320+
+
+ // #5212
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 238400+
+
+ // #5213
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 238416
+
+ // #5214
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238448
+
+ // #5215
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238496+
+
+ // #5216
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 238576+
+
+ // #5217
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 238656+
+
+ // #5218
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 238672
+
+ // #5219
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238704
+
+ // #5220
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238752+
+
+ // #5221
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 238832+
+
+ // #5222
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 238912+
+
+ // #5223
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 238928
+
+ // #5224
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 238960
+
+ // #5225
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239008+
+
+ // #5226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 239088+
+
+ // #5227
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 239168+
+
+ // #5228
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 239184
+
+ // #5229
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239216
+
+ // #5230
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239264+
+
+ // #5231
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 239344+
+
+ // #5232
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 239424+
+
+ // #5233
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 239440
+
+ // #5234
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239472
+
+ // #5235
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239520+
+
+ // #5236
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 239600+
+
+ // #5237
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 239680+
+
+ // #5238
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 239696
+
+ // #5239
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239728
+
+ // #5240
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239776+
+
+ // #5241
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 239856+
+
+ // #5242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 239936+
+
+ // #5243
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 239952
+
+ // #5244
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 239984
+
+ // #5245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240032+
+
+ // #5246
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 240112+
+
+ // #5247
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 240192+
+
+ // #5248
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 240208
+
+ // #5249
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240240
+
+ // #5250
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240288+
+
+ // #5251
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 240368+
+
+ // #5252
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 240448+
+
+ // #5253
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 240464
+
+ // #5254
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240496
+
+ // #5255
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240544+
+
+ // #5256
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 240624+
+
+ // #5257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 240704+
+
+ // #5258
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 240720
+
+ // #5259
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240752
+
+ // #5260
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 240800+
+
+ // #5261
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 240880+
+
+ // #5262
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 240960+
+
+ // #5263
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 240976
+
+ // #5264
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241008
+
+ // #5265
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241056+
+
+ // #5266
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 241136+
+
+ // #5267
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 241216+
+
+ // #5268
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 241232
+
+ // #5269
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241264
+
+ // #5270
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241312+
+
+ // #5271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 241392+
+
+ // #5272
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 241472+
+
+ // #5273
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 241488
+
+ // #5274
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241520
+
+ // #5275
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241568+
+
+ // #5276
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 241648+
+
+ // #5277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 241728+
+
+ // #5278
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 241744
+
+ // #5279
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241776
+
+ // #5280
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 241824+
+
+ // #5281
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 241904+
+
+ // #5282
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 241984+
+
+ // #5283
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 242000
+
+ // #5284
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242032
+
+ // #5285
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242080+
+
+ // #5286
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 242160+
+
+ // #5287
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 242240+
+
+ // #5288
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 242256
+
+ // #5289
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242288
+
+ // #5290
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242336+
+
+ // #5291
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 242416+
+
+ // #5292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 242496+
+
+ // #5293
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 242512
+
+ // #5294
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242544
+
+ // #5295
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242592+
+
+ // #5296
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 242672+
+
+ // #5297
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 242752+
+
+ // #5298
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 242768
+
+ // #5299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242800
+
+ // #5300
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 242848+
+
+ // #5301
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 242928+
+
+ // #5302
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 243008+
+
+ // #5303
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 243024
+
+ // #5304
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243056
+
+ // #5305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243104+
+
+ // #5306
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 243184+
+
+ // #5307
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 243264+
+
+ // #5308
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 243280
+
+ // #5309
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243312
+
+ // #5310
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 243328
+
+ // #5311
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 243376+
+
+ // #5312
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 243456+
+
+ // #5313
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 243472
+
+ // #5314
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243504
+
+ // #5315
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 243520
+
+ // #5316
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 243568+
+
+ // #5317
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 243648+
+
+ // #5318
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 243664
+
+ // #5319
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243696
+
+ // #5320
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243744+
+
+ // #5321
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 243824+
+
+ // #5322
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 243904+
+
+ // #5323
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 243920
+
+ // #5324
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 243952
+
+ // #5325
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 243968
+
+ // #5326
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 244016+
+
+ // #5327
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 244096+
+
+ // #5328
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 244112
+
+ // #5329
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 244144
+
+ // #5330
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 244160
+
+ // #5331
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 244208+
+
+ // #5332
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 244288+
+
+ // #5333
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 244304
+
+ // #5334
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 244336
+
+ // #5335
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 244384+
+
+ // #5336
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 244464+
+
+ // #5337
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 244544+
+
+ // #5338
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 244560
+
+ // #5339
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 244592
+
+ // #5340
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 244608
+
+ // #5341
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 244656+
+
+ // #5342
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 244736+
+
+ // #5343
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 244752
+
+ // #5344
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 244784
+
+ // #5345
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 244800
+
+ // #5346
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 244848+
+
+ // #5347
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 244928+
+
+ // #5348
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 244944
+
+ // #5349
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 244976
+
+ // #5350
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 245024+
+
+ // #5351
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 245104+
+
+ // #5352
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 245184+
+
+ // #5353
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 245200
+
+ // #5354
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 245232
+
+ // #5355
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 245248
+
+ // #5356
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 245296+
+
+ // #5357
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 245376+
+
+ // #5358
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 245392
+
+ // #5359
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 245424
+
+ // #5360
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 245440
+
+ // #5361
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 245488+
+
+ // #5362
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 245568+
+
+ // #5363
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 245584
+
+ // #5364
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 245616
+
+ // #5365
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 245664+
+
+ // #5366
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 245744+
+
+ // #5367
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 245824+
+
+ // #5368
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 245840
+
+ // #5369
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 245872
+
+ // #5370
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 245888
+
+ // #5371
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 245936+
+
+ // #5372
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 246016+
+
+ // #5373
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 246032
+
+ // #5374
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246064
+
+ // #5375
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 246080
+
+ // #5376
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 246128+
+
+ // #5377
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 246208+
+
+ // #5378
+ "\377\376\375\374\373\372\371\370"
+ "128"
+ "\377\376\375\374\373" // 246224
+
+ // #5379
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246256
+
+ // #5380
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246304+
+
+ // #5381
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 246384+
+
+ // #5382
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 246464+
+
+ // #5383
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 246480
+
+ // #5384
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246512
+
+ // #5385
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 246528
+
+ // #5386
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 246576+
+
+ // #5387
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 246656+
+
+ // #5388
+ "256"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 246672
+
+ // #5389
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246704
+
+ // #5390
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 246720
+
+ // #5391
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 246768+
+
+ // #5392
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 246848+
+
+ // #5393
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 246864
+
+ // #5394
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246896
+
+ // #5395
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 246944+
+
+ // #5396
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 247024+
+
+ // #5397
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 247104+
+
+ // #5398
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247120
+
+ // #5399
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247152
+
+ // #5400
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 247168
+
+ // #5401
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 247216+
+
+ // #5402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 247296+
+
+ // #5403
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 247312
+
+ // #5404
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247344
+
+ // #5405
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 247360
+
+ // #5406
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 247408+
+
+ // #5407
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 247488+
+
+ // #5408
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 247504
+
+ // #5409
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247536
+
+ // #5410
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247584+
+
+ // #5411
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 247664+
+
+ // #5412
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 247744+
+
+ // #5413
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247760
+
+ // #5414
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247792
+
+ // #5415
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 247808
+
+ // #5416
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 247856+
+
+ // #5417
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 247936+
+
+ // #5418
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 247952
+
+ // #5419
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 247984
+
+ // #5420
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 248000
+
+ // #5421
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 248048+
+
+ // #5422
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 248128+
+
+ // #5423
+ "128"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 248144
+
+ // #5424
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248176
+
+ // #5425
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248224+
+
+ // #5426
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 248304+
+
+ // #5427
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 248384+
+
+ // #5428
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248400
+
+ // #5429
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248432
+
+ // #5430
+ "\377\376\375"
+ "MinSize"
+ "\377\376\375\374\373\372" // 248448
+
+ // #5431
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 248496+
+
+ // #5432
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 248576+
+
+ // #5433
+ "\377\376\375\374\373\372\371\370"
+ "256"
+ "\377\376\375\374\373" // 248592
+
+ // #5434
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248624
+
+ // #5435
+ "\377\376\375"
+ "MaxSize"
+ "\377\376\375\374\373\372" // 248640
+
+ // #5436
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 248688+
+
+ // #5437
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 248768+
+
+ // #5438
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 248784
+
+ // #5439
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248816
+
+ // #5440
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 248864+
+
+ // #5441
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 248944+
+
+ // #5442
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 249024+
+
+ // #5443
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 249040
+
+ // #5444
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249072
+
+ // #5445
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249120+
+
+ // #5446
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 249200+
+
+ // #5447
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 249280+
+
+ // #5448
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 249296
+
+ // #5449
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249328
+
+ // #5450
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249376+
+
+ // #5451
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 249456+
+
+ // #5452
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 249536+
+
+ // #5453
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 249552
+
+ // #5454
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249584
+
+ // #5455
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249632+
+
+ // #5456
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 249712+
+
+ // #5457
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 249792+
+
+ // #5458
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 249808
+
+ // #5459
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249840
+
+ // #5460
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 249888+
+
+ // #5461
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 249968+
+
+ // #5462
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 250048+
+
+ // #5463
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 250064
+
+ // #5464
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250096
+
+ // #5465
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250144+
+
+ // #5466
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 250224+
+
+ // #5467
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 250304+
+
+ // #5468
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 250320
+
+ // #5469
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250352
+
+ // #5470
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250400+
+
+ // #5471
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 250480+
+
+ // #5472
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 250560+
+
+ // #5473
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 250576
+
+ // #5474
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250608
+
+ // #5475
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250656+
+
+ // #5476
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 250736+
+
+ // #5477
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 250816+
+
+ // #5478
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 250832
+
+ // #5479
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250864
+
+ // #5480
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 250912+
+
+ // #5481
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 250992+
+
+ // #5482
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 251072+
+
+ // #5483
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 251088
+
+ // #5484
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251120
+
+ // #5485
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251168+
+
+ // #5486
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 251248+
+
+ // #5487
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 251328+
+
+ // #5488
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 251344
+
+ // #5489
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251376
+
+ // #5490
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251424+
+
+ // #5491
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 251504+
+
+ // #5492
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 251584+
+
+ // #5493
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 251600
+
+ // #5494
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251632
+
+ // #5495
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251680+
+
+ // #5496
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 251760+
+
+ // #5497
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 251840+
+
+ // #5498
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 251856
+
+ // #5499
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251888
+
+ // #5500
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 251936+
+
+ // #5501
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 252016+
+
+ // #5502
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 252096+
+
+ // #5503
+ "24"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 252112
+
+ // #5504
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252144
+
+ // #5505
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252192+
+
+ // #5506
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 252272+
+
+ // #5507
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 252352+
+
+ // #5508
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 252368
+
+ // #5509
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252400
+
+ // #5510
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252448+
+
+ // #5511
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 252528+
+
+ // #5512
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 252608+
+
+ // #5513
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 252624
+
+ // #5514
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252656
+
+ // #5515
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252704+
+
+ // #5516
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 252784+
+
+ // #5517
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 252864+
+
+ // #5518
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 252880
+
+ // #5519
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252912
+
+ // #5520
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 252960+
+
+ // #5521
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 253040+
+
+ // #5522
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 253120+
+
+ // #5523
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 253136
+
+ // #5524
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253168
+
+ // #5525
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253216+
+
+ // #5526
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 253296+
+
+ // #5527
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 253376+
+
+ // #5528
+ "24"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 253392
+
+ // #5529
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253424
+
+ // #5530
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253472+
+
+ // #5531
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 253552+
+
+ // #5532
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 253632+
+
+ // #5533
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 253648
+
+ // #5534
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253680
+
+ // #5535
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253728+
+
+ // #5536
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 253808+
+
+ // #5537
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 253888+
+
+ // #5538
+ "24"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 253904
+
+ // #5539
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253936
+
+ // #5540
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 253984+
+
+ // #5541
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 254064+
+
+ // #5542
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 254144+
+
+ // #5543
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 254160
+
+ // #5544
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254192
+
+ // #5545
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254240+
+
+ // #5546
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 254320+
+
+ // #5547
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 254400+
+
+ // #5548
+ "24"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 254416
+
+ // #5549
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254448
+
+ // #5550
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254496+
+
+ // #5551
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 254576+
+
+ // #5552
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 254656+
+
+ // #5553
+ "\377\376\375\374\373\372\371\370"
+ "24"
+ "\377\376\375\374\373\372" // 254672
+
+ // #5554
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254704
+
+ // #5555
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254752+
+
+ // #5556
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 254832+
+
+ // #5557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 254912+
+
+ // #5558
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 254928
+
+ // #5559
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 254960
+
+ // #5560
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255008+
+
+ // #5561
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 255088+
+
+ // #5562
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 255168+
+
+ // #5563
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 255184
+
+ // #5564
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255216
+
+ // #5565
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255264+
+
+ // #5566
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 255344+
+
+ // #5567
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 255424+
+
+ // #5568
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 255440
+
+ // #5569
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255472
+
+ // #5570
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255520+
+
+ // #5571
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 255600+
+
+ // #5572
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 255680+
+
+ // #5573
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 255696
+
+ // #5574
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255728
+
+ // #5575
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255776+
+
+ // #5576
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 255856+
+
+ // #5577
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 255936+
+
+ // #5578
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 255952
+
+ // #5579
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 255984
+
+ // #5580
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256032+
+
+ // #5581
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 256112+
+
+ // #5582
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 256192+
+
+ // #5583
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 256208
+
+ // #5584
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256240
+
+ // #5585
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256288+
+
+ // #5586
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 256368+
+
+ // #5587
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 256448+
+
+ // #5588
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 256464
+
+ // #5589
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256496
+
+ // #5590
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256544+
+
+ // #5591
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 256624+
+
+ // #5592
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 256704+
+
+ // #5593
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 256720
+
+ // #5594
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256752
+
+ // #5595
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 256800+
+
+ // #5596
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 256880+
+
+ // #5597
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 256960+
+
+ // #5598
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 256976
+
+ // #5599
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257008
+
+ // #5600
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257056+
+
+ // #5601
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 257136+
+
+ // #5602
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 257216+
+
+ // #5603
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 257232
+
+ // #5604
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257264
+
+ // #5605
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257312+
+
+ // #5606
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 257392+
+
+ // #5607
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 257472+
+
+ // #5608
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 257488
+
+ // #5609
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257520
+
+ // #5610
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257568+
+
+ // #5611
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 257648+
+
+ // #5612
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 257728+
+
+ // #5613
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 257744
+
+ // #5614
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257776
+
+ // #5615
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 257824+
+
+ // #5616
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 257904+
+
+ // #5617
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 257984+
+
+ // #5618
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 258000
+
+ // #5619
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258032
+
+ // #5620
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258080+
+
+ // #5621
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 258160+
+
+ // #5622
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 258240+
+
+ // #5623
+ "36"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 258256
+
+ // #5624
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258288
+
+ // #5625
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258336+
+
+ // #5626
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 258416+
+
+ // #5627
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 258496+
+
+ // #5628
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 258512
+
+ // #5629
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258544
+
+ // #5630
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258592+
+
+ // #5631
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 258672+
+
+ // #5632
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 258752+
+
+ // #5633
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 258768
+
+ // #5634
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258800
+
+ // #5635
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 258848+
+
+ // #5636
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 258928+
+
+ // #5637
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 259008+
+
+ // #5638
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 259024
+
+ // #5639
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259056
+
+ // #5640
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259104+
+
+ // #5641
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 259184+
+
+ // #5642
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 259264+
+
+ // #5643
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 259280
+
+ // #5644
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259312
+
+ // #5645
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259360+
+
+ // #5646
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 259440+
+
+ // #5647
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 259520+
+
+ // #5648
+ "36"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 259536
+
+ // #5649
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259568
+
+ // #5650
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259616+
+
+ // #5651
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 259696+
+
+ // #5652
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 259776+
+
+ // #5653
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 259792
+
+ // #5654
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259824
+
+ // #5655
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 259872+
+
+ // #5656
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 259952+
+
+ // #5657
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 260032+
+
+ // #5658
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 260048
+
+ // #5659
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260080
+
+ // #5660
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260128+
+
+ // #5661
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 260208+
+
+ // #5662
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 260288+
+
+ // #5663
+ "36"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 260304
+
+ // #5664
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260336
+
+ // #5665
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260384+
+
+ // #5666
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 260464+
+
+ // #5667
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 260544+
+
+ // #5668
+ "\377\376\375\374\373\372\371\370"
+ "36"
+ "\377\376\375\374\373\372" // 260560
+
+ // #5669
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260592
+
+ // #5670
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260640+
+
+ // #5671
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 260720+
+
+ // #5672
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 260800+
+
+ // #5673
+ "36"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 260816
+
+ // #5674
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260848
+
+ // #5675
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 260896+
+
+ // #5676
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 260976+
+
+ // #5677
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 261056+
+
+ // #5678
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 261072
+
+ // #5679
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261104
+
+ // #5680
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261152+
+
+ // #5681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 261232+
+
+ // #5682
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 261312+
+
+ // #5683
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 261328
+
+ // #5684
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261360
+
+ // #5685
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261408+
+
+ // #5686
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 261488+
+
+ // #5687
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 261568+
+
+ // #5688
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 261584
+
+ // #5689
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261616
+
+ // #5690
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261664+
+
+ // #5691
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 261744+
+
+ // #5692
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 261824+
+
+ // #5693
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 261840
+
+ // #5694
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261872
+
+ // #5695
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 261920+
+
+ // #5696
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 262000+
+
+ // #5697
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 262080+
+
+ // #5698
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 262096
+
+ // #5699
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262128
+
+ // #5700
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262176+
+
+ // #5701
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 262256+
+
+ // #5702
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 262336+
+
+ // #5703
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 262352
+
+ // #5704
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262384
+
+ // #5705
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262432+
+
+ // #5706
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 262512+
+
+ // #5707
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 262592+
+
+ // #5708
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 262608
+
+ // #5709
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262640
+
+ // #5710
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262688+
+
+ // #5711
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 262768+
+
+ // #5712
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 262848+
+
+ // #5713
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 262864
+
+ // #5714
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262896
+
+ // #5715
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 262944+
+
+ // #5716
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 263024+
+
+ // #5717
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 263104+
+
+ // #5718
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 263120
+
+ // #5719
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263152
+
+ // #5720
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263200+
+
+ // #5721
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 263280+
+
+ // #5722
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 263360+
+
+ // #5723
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 263376
+
+ // #5724
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263408
+
+ // #5725
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263456+
+
+ // #5726
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 263536+
+
+ // #5727
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 263616+
+
+ // #5728
+ "48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 263632
+
+ // #5729
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263664
+
+ // #5730
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263712+
+
+ // #5731
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 263792+
+
+ // #5732
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 263872+
+
+ // #5733
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 263888
+
+ // #5734
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263920
+
+ // #5735
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 263968+
+
+ // #5736
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 264048+
+
+ // #5737
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 264128+
+
+ // #5738
+ "\377\376\375\374"
+ "Desktop"
+ "\377\376\375\374\373" // 264144
+
+ // #5739
+ "\377\376"
+ "Toolbar"
+ "\377\376\375\374\373\372\371" // 264160
+
+ // #5740
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MainToolbar"
+ "\377\376\375\374\373\372\371\370\367" // 264192
+
+ // #5741
+ "\377\376\375\374\373\372\371\370"
+ "Small"
+ "\377\376\375" // 264208
+
+ // #5742
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Panel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 264240
+
+ // #5743
+ "\377\376\375"
+ "Dialog"
+ "\377\376\375\374\373\372\371" // 264256
+
+ // #5744
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 264272
+
+ // #5745
+ "\377\376\375\374\373\372\371\370"
+ "32"
+ "\377\376\375\374\373\372" // 264288
+
+ // #5746
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 264320
+
+ // #5747
+ "DesktopDefault"
+ "\377\376" // 264336
+
+ // #5748
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 264432+
+
+ // #5749
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 264512+
+
+ // #5750
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 264528
+
+ // #5751
+ "\377\376\375\374\373\372\371\370"
+ "16,32,48,64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 264560
+
+ // #5752
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 264592
+
+ // #5753
+ "DesktopSizes"
+ "\377\376\375\374" // 264608
+
+ // #5754
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 264688+
+
+ // #5755
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 264768+
+
+ // #5756
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 264784
+
+ // #5757
+ "22"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 264800
+
+ // #5758
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 264832
+
+ // #5759
+ "ToolbarDefault"
+ "\377\376" // 264848
+
+ // #5760
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 264944+
+
+ // #5761
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 265024+
+
+ // #5762
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 265040
+
+ // #5763
+ "16,22,32"
+ "\377\376\375\374\373\372\371\370" // 265056
+
+ // #5764
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 265088
+
+ // #5765
+ "ToolbarSizes"
+ "\377\376\375\374" // 265104
+
+ // #5766
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 265200+
+
+ // #5767
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 265280+
+
+ // #5768
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 265296
+
+ // #5769
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 265312
+
+ // #5770
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 265344
+
+ // #5771
+ "MainToolbarDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 265376
+
+ // #5772
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 265456+
+
+ // #5773
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 265536+
+
+ // #5774
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 265552
+
+ // #5775
+ "16,22,32"
+ "\377\376\375\374\373\372\371\370" // 265568
+
+ // #5776
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 265600
+
+ // #5777
+ "MainToolbarSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 265632
+
+ // #5778
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 265712+
+
+ // #5779
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 265792+
+
+ // #5780
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 265808
+
+ // #5781
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 265824
+
+ // #5782
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 265856
+
+ // #5783
+ "\377\376\375\374\373\372\371\370"
+ "SmallDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 265888
+
+ // #5784
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 265968+
+
+ // #5785
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 266048+
+
+ // #5786
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 266064
+
+ // #5787
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 266080
+
+ // #5788
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 266112
+
+ // #5789
+ "SmallSizes"
+ "\377\376\375\374\373\372" // 266128
+
+ // #5790
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 266224+
+
+ // #5791
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 266304+
+
+ // #5792
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 266320
+
+ // #5793
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 266336
+
+ // #5794
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 266368
+
+ // #5795
+ "\377\376\375\374\373\372\371\370"
+ "PanelDefault"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 266400
+
+ // #5796
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 266480+
+
+ // #5797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 266560+
+
+ // #5798
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 266576
+
+ // #5799
+ "16,22,32,48"
+ "\377\376\375\374\373" // 266592
+
+ // #5800
+ "\377\376\375\374\373"
+ "QVariantList"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 266624
+
+ // #5801
+ "\377\376\375\374\373\372\371\370"
+ "PanelSizes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 266656+
+
+ // #5802
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 266736+
+
+ // #5803
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 266816+
+
+ // #5804
+ "Default"
+ "\377\376\375\374\373\372\371\370\367" // 266832
+
+ // #5805
+ "Sizes"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 266848
+
+ // #5806
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "/pics/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 266880
+
+ // #5807
+ "\377\376\375\374\373\372\371\370"
+ "data"
+ "\377\376\375\374" // 266896
+
+ // #5808
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "/toolbar/"
+ "\377\376\375\374\373\372\371\370\367\366" // 266928
+
+ // #5809
+ "\377\376\375\374\373\372\371\370"
+ "data"
+ "\377\376\375\374" // 266944
+
+ // #5810
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 266960
+
+ // #5811
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 266976
+
+ // #5812
+ "\377\376\375\374"
+ "/usr/share/pixmaps"
+ "\377\376\375\374\373\372\371\370\367\366" // 267008
+
+ // #5813
+ "\377\376\375\374"
+ "Desktop"
+ "\377\376\375\374\373" // 267024
+
+ // #5814
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 267040
+
+ // #5815
+ "\377\376\375\374\373\372\371\370"
+ "48"
+ "\377\376\375\374\373\372" // 267056
+
+ // #5816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 267088
+
+ // #5817
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 267168+
+
+ // #5818
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 267248+
+
+ // #5819
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 267328+
+
+ // #5820
+ "\377\376"
+ "Toolbar"
+ "\377\376\375\374\373\372\371" // 267344
+
+ // #5821
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 267360
+
+ // #5822
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 267376
+
+ // #5823
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 267408
+
+ // #5824
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 267488+
+
+ // #5825
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 267568+
+
+ // #5826
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 267648+
+
+ // #5827
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "MainToolbar"
+ "\377\376\375\374\373\372\371\370\367" // 267680
+
+ // #5828
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 267696
+
+ // #5829
+ "\377\376\375\374\373\372\371\370"
+ "22"
+ "\377\376\375\374\373\372" // 267712
+
+ // #5830
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 267744
+
+ // #5831
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 267808+
+
+ // #5832
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 267888+
+
+ // #5833
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 267968+
+
+ // #5834
+ "\377\376\375\374\373\372\371\370"
+ "Small"
+ "\377\376\375" // 267984
+
+ // #5835
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 268000
+
+ // #5836
+ "\377\376\375\374\373\372\371\370"
+ "16"
+ "\377\376\375\374\373\372" // 268016
+
+ // #5837
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 268048
+
+ // #5838
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 268128+
+
+ // #5839
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 268208+
+
+ // #5840
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 268288+
+
+ // #5841
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Panel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 268320
+
+ // #5842
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 268336
+
+ // #5843
+ "32"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 268352
+
+ // #5844
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 268384
+
+ // #5845
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323"
+ "Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 268448+
+
+ // #5846
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 268528+
+
+ // #5847
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 268608+
+
+ // #5848
+ "\377\376\375"
+ "Dialog"
+ "\377\376\375\374\373\372\371" // 268624
+
+ // #5849
+ "\377\376\375\374\373\372\371\370\367"
+ "Icons"
+ "\377\376" // 268640
+
+ // #5850
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 268656
+
+ // #5851
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 268672
+
+ // #5852
+ "\377"
+ "/imageformats"
+ "\377\376" // 268688
+
+ // #5853
+ "Trolltech"
+ "\377\376\375\374\373\372\371" // 268704
+
+ // #5854
+ "\377\376\375\374\373\372\371\370\367"
+ ".conf"
+ "\377\376" // 268720
+
+ // #5855
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351"
+ "No such file or directory"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 268784+
+
+ // #5856
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 268800
+
+ // #5857
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 268816
+
+ // #5858
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 268832
+
+ // #5859
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 268848
+
+ // #5860
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 268864
+
+ // #5861
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 268880
+
+ // #5862
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 268912
+
+ // #5863
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 268992+
+
+ // #5864
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 269040
+
+ // #5865
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 269088
+
+ // #5866
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 269104
+
+ // #5867
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 269120
+
+ // #5868
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 269152
+
+ // #5869
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 269248+
+
+ // #5870
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 269296
+
+ // #5871
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 269344
+
+ // #5872
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 269360
+
+ // #5873
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 269376
+
+ // #5874
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 269408
+
+ // #5875
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 269504+
+
+ // #5876
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 269552
+
+ // #5877
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 269600
+
+ // #5878
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 269616
+
+ // #5879
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 269632
+
+ // #5880
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 269664
+
+ // #5881
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 269760+
+
+ // #5882
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 269808
+
+ // #5883
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 269856
+
+ // #5884
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 269872
+
+ // #5885
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 269888
+
+ // #5886
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 269920
+
+ // #5887
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 270016+
+
+ // #5888
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 270064
+
+ // #5889
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 270112
+
+ // #5890
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 270128
+
+ // #5891
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 270144
+
+ // #5892
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 270176
+
+ // #5893
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 270272+
+
+ // #5894
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 270320
+
+ // #5895
+ "The shared library was not found."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 270368
+
+ // #5896
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 270384
+
+ // #5897
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 270400
+
+ // #5898
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 270416
+
+ // #5899
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 270432
+
+ // #5900
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 270448
+
+ // #5901
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 270464
+
+ // #5902
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 270496
+
+ // #5903
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 270592+
+
+ // #5904
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 270640
+
+ // #5905
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 270656
+
+ // #5906
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 270672
+
+ // #5907
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 270704
+
+ // #5908
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 270784+
+
+ // #5909
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 270832
+
+ // #5910
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 270848
+
+ // #5911
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 270864
+
+ // #5912
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 270896
+
+ // #5913
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 270976+
+
+ // #5914
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 271024
+
+ // #5915
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 271040
+
+ // #5916
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 271056
+
+ // #5917
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 271088
+
+ // #5918
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 271168+
+
+ // #5919
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 271216
+
+ // #5920
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 271232
+
+ // #5921
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 271248
+
+ // #5922
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 271280
+
+ // #5923
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 271360+
+
+ // #5924
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 271408
+
+ // #5925
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 271424
+
+ // #5926
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 271440
+
+ // #5927
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 271472
+
+ // #5928
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 271552+
+
+ // #5929
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 271600
+
+ // #5930
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 271616
+
+ // #5931
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 271632
+
+ // #5932
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 271648
+
+ // #5933
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 271664
+
+ // #5934
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 271680
+
+ // #5935
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 271696
+
+ // #5936
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 271728
+
+ // #5937
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 271808+
+
+ // #5938
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 271856
+
+ // #5939
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 271872
+
+ // #5940
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 271888
+
+ // #5941
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 271920
+
+ // #5942
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 272000+
+
+ // #5943
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 272048
+
+ // #5944
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 272064
+
+ // #5945
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 272080
+
+ // #5946
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 272112
+
+ // #5947
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 272192+
+
+ // #5948
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 272240
+
+ // #5949
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 272256
+
+ // #5950
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 272272
+
+ // #5951
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 272304
+
+ // #5952
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 272384+
+
+ // #5953
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 272432
+
+ // #5954
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 272448
+
+ // #5955
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 272464
+
+ // #5956
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 272496
+
+ // #5957
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 272576+
+
+ // #5958
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 272624
+
+ // #5959
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 272640
+
+ // #5960
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 272656
+
+ // #5961
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 272688
+
+ // #5962
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 272768+
+
+ // #5963
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 272816
+
+ // #5964
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 272832
+
+ // #5965
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 272848
+
+ // #5966
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 272880
+
+ // #5967
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 272960+
+
+ // #5968
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 273008
+
+ // #5969
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 273024
+
+ // #5970
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 273040
+
+ // #5971
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 273072
+
+ // #5972
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 273152+
+
+ // #5973
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 273200
+
+ // #5974
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 273216
+
+ // #5975
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 273232
+
+ // #5976
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 273264
+
+ // #5977
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 273344+
+
+ // #5978
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 273392
+
+ // #5979
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 273408
+
+ // #5980
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 273424
+
+ // #5981
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 273456
+
+ // #5982
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 273536+
+
+ // #5983
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 273584
+
+ // #5984
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 273600
+
+ // #5985
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 273616
+
+ // #5986
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 273648
+
+ // #5987
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 273728+
+
+ // #5988
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 273776
+
+ // #5989
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 273792
+
+ // #5990
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 273808
+
+ // #5991
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 273840
+
+ // #5992
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 273920+
+
+ // #5993
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 273968
+
+ // #5994
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 273984
+
+ // #5995
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 274000
+
+ // #5996
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 274016
+
+ // #5997
+ "\377\376\375\374\373\372"
+ "*"
+ "\377\376\375\374\373\372\371\370\367" // 274032
+
+ // #5998
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 274048
+
+ // #5999
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 274064
+
+ // #6000
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 274096
+
+ // #6001
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 274176+
+
+ // #6002
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 274224
+
+ // #6003
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 274240
+
+ // #6004
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 274256
+
+ // #6005
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 274288
+
+ // #6006
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 274368+
+
+ // #6007
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 274416
+
+ // #6008
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 274432
+
+ // #6009
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 274448
+
+ // #6010
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 274480
+
+ // #6011
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 274560+
+
+ // #6012
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 274608
+
+ // #6013
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 274624
+
+ // #6014
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 274640
+
+ // #6015
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 274672
+
+ // #6016
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 274752+
+
+ // #6017
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 274800
+
+ // #6018
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 274816
+
+ // #6019
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 274832
+
+ // #6020
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 274864
+
+ // #6021
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 274944+
+
+ // #6022
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 274992
+
+ // #6023
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 275008
+
+ // #6024
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 275024
+
+ // #6025
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 275056
+
+ // #6026
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 275136+
+
+ // #6027
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 275184
+
+ // #6028
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 275200
+
+ // #6029
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 275216
+
+ // #6030
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 275248
+
+ // #6031
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 275328+
+
+ // #6032
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 275376
+
+ // #6033
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 275392
+
+ // #6034
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 275408
+
+ // #6035
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 275440
+
+ // #6036
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 275520+
+
+ // #6037
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 275568
+
+ // #6038
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 275584
+
+ // #6039
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 275600
+
+ // #6040
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 275632
+
+ // #6041
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 275712+
+
+ // #6042
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 275760
+
+ // #6043
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 275776
+
+ // #6044
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 275792
+
+ // #6045
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 275824
+
+ // #6046
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 275904+
+
+ // #6047
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 275952
+
+ // #6048
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 275968
+
+ // #6049
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 275984
+
+ // #6050
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 276016
+
+ // #6051
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 276096+
+
+ // #6052
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 276144
+
+ // #6053
+ "\377"
+ "%1:%2:%3"
+ "\377\376\375\374\373\372\371" // 276160
+
+ // #6054
+ "\377\376\375"
+ "debug"
+ "\377\376\375\374\373\372\371\370" // 276176
+
+ // #6055
+ "\377\376"
+ "Qt Plugin Cache %1.%2.%3/%4"
+ "\377\376\375" // 276208
+
+ // #6056
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "com.trolltech.Qt.QImageIOHandlerFactoryInterface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 276288+
+
+ // #6057
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Qt Factory Cache %1.%2/%3:/%4"
+ "\377\376\375\374\373" // 276336
+
+ // #6058
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 276352
+
+ // #6059
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 276368
+
+ // #6060
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276384
+
+ // #6061
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276400
+
+ // #6062
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276416
+
+ // #6063
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276432
+
+ // #6064
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276448
+
+ // #6065
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276464
+
+ // #6066
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276480
+
+ // #6067
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276496
+
+ // #6068
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276512
+
+ // #6069
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276528
+
+ // #6070
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276544
+
+ // #6071
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276560
+
+ // #6072
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276576
+
+ // #6073
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276592
+
+ // #6074
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276608
+
+ // #6075
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276624
+
+ // #6076
+ "Software"
+ "\377\376\375\374\373\372\371\370" // 276640
+
+ // #6077
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "www.inkscape.org"
+ "\377\376\375\374\373\372\371\370" // 276704+
+
+ // #6078
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 276720
+
+ // #6079
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276736
+
+ // #6080
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276752
+
+ // #6081
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276768
+
+ // #6082
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276784
+
+ // #6083
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276800
+
+ // #6084
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276816
+
+ // #6085
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276832
+
+ // #6086
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276848
+
+ // #6087
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276864
+
+ // #6088
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276880
+
+ // #6089
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276896
+
+ // #6090
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276912
+
+ // #6091
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276928
+
+ // #6092
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 276944
+
+ // #6093
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 276960
+
+ // #6094
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 276976
+
+ // #6095
+ "Software"
+ "\377\376\375\374\373\372\371\370" // 276992
+
+ // #6096
+ "\377\376\375\374\373\372\371\370"
+ "www.inkscape.org"
+ "\377\376\375\374\373\372\371\370" // 277024+
+
+ // #6097
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 277040
+
+ // #6098
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277056
+
+ // #6099
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 277072
+
+ // #6100
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277088
+
+ // #6101
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277104
+
+ // #6102
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277120
+
+ // #6103
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277136
+
+ // #6104
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277152
+
+ // #6105
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277168
+
+ // #6106
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277184
+
+ // #6107
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277200
+
+ // #6108
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277216
+
+ // #6109
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 277232
+
+ // #6110
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277248
+
+ // #6111
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277264
+
+ // #6112
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277280
+
+ // #6113
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 277296
+
+ // #6114
+ "Software"
+ "\377\376\375\374\373\372\371\370" // 277312
+
+ // #6115
+ "\377\376\375\374\373\372\371\370"
+ "www.inkscape.org"
+ "\377\376\375\374\373\372\371\370" // 277344+
+
+ // #6116
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 277360
+
+ // #6117
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277376
+
+ // #6118
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277392
+
+ // #6119
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277408
+
+ // #6120
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 277424
+
+ // #6121
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277440
+
+ // #6122
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277456
+
+ // #6123
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277472
+
+ // #6124
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 277488
+
+ // #6125
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277504
+
+ // #6126
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277520
+
+ // #6127
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277536
+
+ // #6128
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277552
+
+ // #6129
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277568
+
+ // #6130
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 277584
+
+ // #6131
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 277600
+
+ // #6132
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 277616
+
+ // #6133
+ "Software"
+ "\377\376\375\374\373\372\371\370" // 277632
+
+ // #6134
+ "\377\376\375\374\373\372\371\370"
+ "www.inkscape.org"
+ "\377\376\375\374\373\372\371\370" // 277664+
+
+ // #6135
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 277680
+
+ // #6136
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 277696
+
+ // #6137
+ "\377\376\375\374\373\372\371\370"
+ "/home/tmacieir/KDE4/lib/kde4/libexec/drkonqi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 277760+
+
+ // #6138
+ "\377\376\375\374"
+ "--nocrashhandler"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 277792
+
+ // #6139
+ "\377\376\375\374"
+ "--nocrashhandler"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 277824
+
+ // #6140
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "notifyChange"
+ "\377\376\375\374\373\372\371\370" // 277856
+
+ // #6141
+ "\377\376\375\374\373\372\371\370\367"
+ "org.kde.KGlobalSettings"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 277904
+
+ // #6142
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317"
+ "/KGlobalSettings"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 277984+
+
+ // #6143
+ "\377"
+ "type='signal',"
+ "\377" // 278000
+
+ // #6144
+ "%1='%2',"
+ "\377\376\375\374\373\372\371\370" // 278016
+
+ // #6145
+ "path"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 278032
+
+ // #6146
+ "\377\376\375\374\373"
+ "interface"
+ "\377\376" // 278048
+
+ // #6147
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "member"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 278080
+
+ // #6148
+ "\377\376\375\374\373\372"
+ "RequestName"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 278112+
+
+ // #6149
+ "\377"
+ "/MainApplication"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 278144
+
+ // #6150
+ "\377\376\375\374\373\372"
+ "Locale"
+ "\377\376\375\374" // 278160
+
+ // #6151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Country"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 278192
+
+ // #6152
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "l10n/*/entry.desktop"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 278256+
+
+ // #6153
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 278272
+
+ // #6154
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 278288
+
+ // #6155
+ "C"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 278304
+
+ // #6156
+ "C"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 278320
+
+ // #6157
+ "\377"
+ "Language"
+ "\377\376\375\374\373\372\371" // 278336
+
+ // #6158
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 278368
+
+ // #6159
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 278400
+
+ // #6160
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 278432
+
+ // #6161
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "kdelibs4"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 278464
+
+ // #6162
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 278496
+
+ // #6163
+ "\377\376"
+ "Alt"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 278512
+
+ // #6164
+ "\377\376\375\374\373\372\371\370"
+ "AltGr"
+ "\377\376\375" // 278528
+
+ // #6165
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Backspace"
+ "\377\376\375\374\373\372\371\370\367" // 278560
+
+ // #6166
+ "\377\376\375\374\373\372\371\370"
+ "CapsLock"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 278592
+
+ // #6167
+ "\377"
+ "Control"
+ "\377\376\375\374\373\372\371\370" // 278608
+
+ // #6168
+ "\377\376\375\374\373\372\371\370\367"
+ "Ctrl"
+ "\377\376\375" // 278624
+
+ // #6169
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Del"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 278656
+
+ // #6170
+ "\377\376"
+ "Delete"
+ "\377\376\375\374\373\372\371\370" // 278672
+
+ // #6171
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "Down"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 278752+
+
+ // #6172
+ "\377\376\375\374\373\372\371\370\367"
+ "End"
+ "\377\376\375\374" // 278768
+
+ // #6173
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Enter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 278816+
+
+ // #6174
+ "\377\376\375"
+ "Esc"
+ "\377\376\375\374\373\372\371\370\367\366" // 278832
+
+ // #6175
+ "\377\376\375\374\373\372\371"
+ "Escape"
+ "\377\376\375" // 278848
+
+ // #6176
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Home"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 278880
+
+ // #6177
+ "\377\376\375"
+ "Hyper"
+ "\377\376\375\374\373\372\371\370" // 278896
+
+ // #6178
+ "\377\376\375\374\373\372\371\370\367"
+ "Ins"
+ "\377\376\375\374" // 278912
+
+ // #6179
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Insert"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 278944
+
+ // #6180
+ "\377\376\375\374"
+ "Left"
+ "\377\376\375\374\373\372\371\370" // 278960
+
+ // #6181
+ "\377\376\375\374\373\372\371\370\367"
+ "Menu"
+ "\377\376\375" // 278976
+
+ // #6182
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Meta"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 279008
+
+ // #6183
+ "\377\376\375"
+ "NumLock"
+ "\377\376\375\374\373\372" // 279024
+
+ // #6184
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "PageDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 279072+
+
+ // #6185
+ "\377\376\375\374"
+ "PageUp"
+ "\377\376\375\374\373\372" // 279088
+
+ // #6186
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "PgDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 279120
+
+ // #6187
+ "\377\376"
+ "PgUp"
+ "\377\376\375\374\373\372\371\370\367\366" // 279136
+
+ // #6188
+ "\377\376\375\374\373\372\371"
+ "PauseBreak"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 279168
+
+ // #6189
+ "\377\376"
+ "PrintScreen"
+ "\377\376\375" // 279184
+
+ // #6190
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "PrtScr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 279216
+
+ // #6191
+ "\377\376\375\374\373"
+ "Return"
+ "\377\376\375\374\373" // 279232
+
+ // #6192
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Right"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 279264+
+
+ // #6193
+ "\377\376"
+ "ScrollLock"
+ "\377\376\375\374" // 279280
+
+ // #6194
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Shift"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 279312
+
+ // #6195
+ "\377\376\375"
+ "Space"
+ "\377\376\375\374\373\372\371\370" // 279328
+
+ // #6196
+ "\377\376\375\374\373\372\371\370\367"
+ "Super"
+ "\377\376" // 279344
+
+ // #6197
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "SysReq"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 279376
+
+ // #6198
+ "\377\376\375\374\373\372"
+ "Tab"
+ "\377\376\375\374\373\372\371" // 279392
+
+ // #6199
+ "\377\376\375\374\373\372\371\370"
+ "Up"
+ "\377\376\375\374\373\372" // 279408
+
+ // #6200
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Win"
+ "\377\376\375" // 279424
+
+ // #6201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "F%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 279456
+
+ // #6202
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "kdelibs4"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 279488
+
+ // #6203
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 279520
+
+ // #6204
+ "\377\376"
+ "Alt"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 279536
+
+ // #6205
+ "\377\376\375\374\373\372\371\370"
+ "AltGr"
+ "\377\376\375" // 279552
+
+ // #6206
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Backspace"
+ "\377\376\375\374\373\372\371\370\367" // 279584
+
+ // #6207
+ "\377\376\375\374\373\372\371\370"
+ "CapsLock"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 279616
+
+ // #6208
+ "\377"
+ "Control"
+ "\377\376\375\374\373\372\371\370" // 279632
+
+ // #6209
+ "\377\376\375\374\373\372\371\370\367"
+ "Ctrl"
+ "\377\376\375" // 279648
+
+ // #6210
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Del"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 279680
+
+ // #6211
+ "\377\376"
+ "Delete"
+ "\377\376\375\374\373\372\371\370" // 279696
+
+ // #6212
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "Down"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 279776+
+
+ // #6213
+ "\377\376\375\374\373\372\371\370\367"
+ "End"
+ "\377\376\375\374" // 279792
+
+ // #6214
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Enter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 279840+
+
+ // #6215
+ "\377\376\375"
+ "Esc"
+ "\377\376\375\374\373\372\371\370\367\366" // 279856
+
+ // #6216
+ "\377\376\375\374\373\372\371"
+ "Escape"
+ "\377\376\375" // 279872
+
+ // #6217
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Home"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 279904
+
+ // #6218
+ "\377\376\375"
+ "Hyper"
+ "\377\376\375\374\373\372\371\370" // 279920
+
+ // #6219
+ "\377\376\375\374\373\372\371\370\367"
+ "Ins"
+ "\377\376\375\374" // 279936
+
+ // #6220
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Insert"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 279968
+
+ // #6221
+ "\377\376\375\374"
+ "Left"
+ "\377\376\375\374\373\372\371\370" // 279984
+
+ // #6222
+ "\377\376\375\374\373\372\371\370\367"
+ "Menu"
+ "\377\376\375" // 280000
+
+ // #6223
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Meta"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 280032
+
+ // #6224
+ "\377\376\375"
+ "NumLock"
+ "\377\376\375\374\373\372" // 280048
+
+ // #6225
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "PageDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 280096+
+
+ // #6226
+ "\377\376\375\374"
+ "PageUp"
+ "\377\376\375\374\373\372" // 280112
+
+ // #6227
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "PgDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 280144
+
+ // #6228
+ "\377\376"
+ "PgUp"
+ "\377\376\375\374\373\372\371\370\367\366" // 280160
+
+ // #6229
+ "\377\376\375\374\373\372\371"
+ "PauseBreak"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 280192
+
+ // #6230
+ "\377\376"
+ "PrintScreen"
+ "\377\376\375" // 280208
+
+ // #6231
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "PrtScr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 280240
+
+ // #6232
+ "\377\376\375\374\373"
+ "Return"
+ "\377\376\375\374\373" // 280256
+
+ // #6233
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Right"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 280288+
+
+ // #6234
+ "\377\376"
+ "ScrollLock"
+ "\377\376\375\374" // 280304
+
+ // #6235
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Shift"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 280336
+
+ // #6236
+ "\377\376\375"
+ "Space"
+ "\377\376\375\374\373\372\371\370" // 280352
+
+ // #6237
+ "\377\376\375\374\373\372\371\370\367"
+ "Super"
+ "\377\376" // 280368
+
+ // #6238
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "SysReq"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 280400
+
+ // #6239
+ "\377\376\375\374\373\372"
+ "Tab"
+ "\377\376\375\374\373\372\371" // 280416
+
+ // #6240
+ "\377\376\375\374\373\372\371\370"
+ "Up"
+ "\377\376\375\374\373\372" // 280432
+
+ // #6241
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Win"
+ "\377\376\375" // 280448
+
+ // #6242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "F%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 280480
+
+ // #6243
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 280496
+
+ // #6244
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 280528
+
+ // #6245
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 280544
+
+ // #6246
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 280560
+
+ // #6247
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 280576
+
+ // #6248
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 280592
+
+ // #6249
+ "\377\376\375\374"
+ "ps"
+ "\377\376\375\374\373\372\371\370\367\366" // 280608
+
+ // #6250
+ "\377\376\375\374\373\372"
+ "ar"
+ "\377\376\375\374\373\372\371\370" // 280624
+
+ // #6251
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "as"
+ "\377\376\375" // 280640
+
+ // #6252
+ "\377\376\375\374\373\372\371"
+ "bn"
+ "\377\376\375\374\373\372\371" // 280656
+
+ // #6253
+ "\377\376\375\374\373\372"
+ "ne"
+ "\377\376\375\374\373\372\371\370" // 280672
+
+ // #6254
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "hi"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 280704
+
+ // #6255
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ur"
+ "\377" // 280720
+
+ // #6256
+ "\377\376\375\374\373\372\371\370\367\366"
+ "fa"
+ "\377\376\375\374" // 280736
+
+ // #6257
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "gu"
+ "\377" // 280752
+
+ // #6258
+ "\377\376\375\374\373\372\371\370"
+ "pa"
+ "\377\376\375\374\373\372" // 280768
+
+ // #6259
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "kn"
+ "\377" // 280784
+
+ // #6260
+ "km"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 280800
+
+ // #6261
+ "\377\376\375"
+ "ml"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 280816
+
+ // #6262
+ "\377\376\375\374\373\372\371\370"
+ "or"
+ "\377\376\375\374\373\372" // 280832
+
+ // #6263
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "ta"
+ "\377" // 280848
+
+ // #6264
+ "te"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 280864
+
+ // #6265
+ "\377\376\375\374\373"
+ "th"
+ "\377\376\375\374\373\372\371\370\367" // 280880
+
+ // #6266
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "libphonon"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 280912
+
+ // #6267
+ "\377\376\375\374\373\372"
+ "kio4"
+ "\377\376\375\374\373\372" // 280928
+
+ // #6268
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "kdelibs4"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 280960
+
+ // #6269
+ "\377\376\375\374"
+ "kdeqt"
+ "\377\376\375\374\373\372\371" // 280976
+
+ // #6270
+ "\377\376\375\374\373\372\371\370\367\366"
+ "solid_qt"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281008
+
+ // #6271
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355"
+ "kdecalendarsystems"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 281056+
+
+ // #6272
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281088
+
+ // #6273
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281120
+
+ // #6274
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281152
+
+ // #6275
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281184
+
+ // #6276
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281216
+
+ // #6277
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281248
+
+ // #6278
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281280
+
+ // #6279
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281312
+
+ // #6280
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281344
+
+ // #6281
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281376
+
+ // #6282
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281408
+
+ // #6283
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281440
+
+ // #6284
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281472
+
+ // #6285
+ "\377\376\375\374\373\372\371\370\367"
+ "%1/LC_MESSAGES/%2.mo"
+ "\377\376\375" // 281504
+
+ // #6286
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281536
+
+ // #6287
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281568
+
+ // #6288
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281600
+
+ // #6289
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281632
+
+ // #6290
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281664
+
+ // #6291
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281696
+
+ // #6292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281728
+
+ // #6293
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281760
+
+ // #6294
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281792
+
+ // #6295
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281824
+
+ // #6296
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281856
+
+ // #6297
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281888
+
+ // #6298
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281920
+
+ // #6299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ".js"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 281952
+
+ // #6300
+ "\377\376\375\374\373\372\371"
+ "l10n/%1/entry.desktop"
+ "\377\376\375\374" // 281984
+
+ // #6301
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282000
+
+ // #6302
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 282016
+
+ // #6303
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282032
+
+ // #6304
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282048
+
+ // #6305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 282080
+
+ // #6306
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282096
+
+ // #6307
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282112
+
+ // #6308
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282128
+
+ // #6309
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282144
+
+ // #6310
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 282160
+
+ // #6311
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282176
+
+ // #6312
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 282208
+
+ // #6313
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282224
+
+ // #6314
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282240
+
+ // #6315
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282256
+
+ // #6316
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282272
+
+ // #6317
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 282288
+
+ // #6318
+ "\377\376"
+ "$0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 282304
+
+ // #6319
+ "\377\376\375\374\373\372\371\370\367\366"
+ "currency/%1.desktop"
+ "\377\376\375" // 282336
+
+ // #6320
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282352
+
+ // #6321
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 282368
+
+ // #6322
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282384
+
+ // #6323
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282400
+
+ // #6324
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 282432
+
+ // #6325
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282448
+
+ // #6326
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282464
+
+ // #6327
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282480
+
+ // #6328
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282496
+
+ // #6329
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 282512
+
+ // #6330
+ "1914,08,02"
+ "\377\376\375\374\373\372" // 282528
+
+ // #6331
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "QDate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 282560
+
+ // #6332
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "CurrencyIntroducedDate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 282608
+
+ // #6333
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 282672+
+
+ // #6334
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 282752+
+
+ // #6335
+ "\377\376\375\374\373\372\371\370\367\366"
+ "currency/%1.desktop"
+ "\377\376\375" // 282784
+
+ // #6336
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282800
+
+ // #6337
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 282816
+
+ // #6338
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282832
+
+ // #6339
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282848
+
+ // #6340
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 282880
+
+ // #6341
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282896
+
+ // #6342
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282912
+
+ // #6343
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282928
+
+ // #6344
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 282944
+
+ // #6345
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 282960
+
+ // #6346
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 282976
+
+ // #6347
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 283008
+
+ // #6348
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 283024
+
+ // #6349
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 283040
+
+ // #6350
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 283056
+
+ // #6351
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 283072
+
+ // #6352
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 283088
+
+ // #6353
+ "1914,08,02"
+ "\377\376\375\374\373\372" // 283104
+
+ // #6354
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "QDate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 283136
+
+ // #6355
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "CurrencyIntroducedDate"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 283184
+
+ // #6356
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 283248+
+
+ // #6357
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 283328+
+
+ // #6358
+ "\377\376"
+ "$0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 283344
+
+ // #6359
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 283360
+
+ // #6360
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 283376
+
+ // #6361
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "PositivePrefixCurrencySymbol"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 283440+
+
+ // #6362
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 283504+
+
+ // #6363
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 283584+
+
+ // #6364
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 283600
+
+ // #6365
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 283616
+
+ // #6366
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "PositivePrefixCurrencySymbol"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 283696+
+
+ // #6367
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 283760+
+
+ // #6368
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 283840+
+
+ // #6369
+ "\377\376\375\374\373\372\371\370"
+ "true"
+ "\377\376\375\374" // 283856
+
+ // #6370
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 283872
+
+ // #6371
+ "\377\376\375\374\373"
+ "NegativePrefixCurrencySymbol"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 283920
+
+ // #6372
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 284016+
+
+ // #6373
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 284096+
+
+ // #6374
+ "false"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 284112
+
+ // #6375
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 284128
+
+ // #6376
+ "\377\376\375\374\373"
+ "NegativePrefixCurrencySymbol"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 284176
+
+ // #6377
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 284272+
+
+ // #6378
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 284352+
+
+ // #6379
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 284368
+
+ // #6380
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 284400
+
+ // #6381
+ "\377\376"
+ "PositiveMonetarySignPosition"
+ "\377\376" // 284432
+
+ // #6382
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 284528+
+
+ // #6383
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 284608+
+
+ // #6384
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 284624
+
+ // #6385
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 284656
+
+ // #6386
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "NegativeMonetarySignPosition"
+ "\377\376\375\374\373" // 284720+
+
+ // #6387
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 284784+
+
+ // #6388
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 284864+
+
+ // #6389
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 284880
+
+ // #6390
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 284912
+
+ // #6391
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "BinaryUnitDialect"
+ "\377\376" // 284944
+
+ // #6392
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 285040+
+
+ // #6393
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 285120+
+
+ // #6394
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 285136
+
+ // #6395
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 285168
+
+ // #6396
+ "\377"
+ "WeekStartDay"
+ "\377\376\375" // 285184
+
+ // #6397
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 285232+
+
+ // #6398
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 285312+
+
+ // #6399
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 285328
+
+ // #6400
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 285360
+
+ // #6401
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "PageSize"
+ "\377\376\375\374\373\372\371\370\367" // 285408+
+
+ // #6402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 285488+
+
+ // #6403
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 285568+
+
+ // #6404
+ "0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 285584
+
+ // #6405
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 285616
+
+ // #6406
+ "\377\376\375\374\373\372\371\370"
+ "MeasureSystem"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 285648
+
+ // #6407
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 285744+
+
+ // #6408
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 285824+
+
+ // #6409
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "%1/entry.desktop"
+ "\377\376\375\374" // 285856
+
+ // #6410
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 285872
+
+ // #6411
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 285888
+
+ // #6412
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 285904
+
+ // #6413
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 285920
+
+ // #6414
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 285952
+
+ // #6415
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 285968
+
+ // #6416
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 285984
+
+ // #6417
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 286000
+
+ // #6418
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 286016
+
+ // #6419
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 286032
+
+ // #6420
+ "\377\376\375\374\373\372\371"
+ "DayPeriod1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 286064
+
+ // #6421
+ "\377\376"
+ "kuit"
+ "\377\376\375\374\373\372\371\370\367\366" // 286080
+
+ // #6422
+ "\377\376"
+ "kuit"
+ "\377\376\375\374\373\372\371\370\367\366" // 286096
+
+ // #6423
+ "\377\376\375\374\373\372\371"
+ "kuil"
+ "\377\376\375\374\373" // 286112
+
+ // #6424
+ "\377\376\375\374\373\372\371"
+ "kuil"
+ "\377\376\375\374\373" // 286128
+
+ // #6425
+ "\377"
+ "title"
+ "\377\376\375\374\373\372\371\370\367\366" // 286144
+
+ // #6426
+ "\377"
+ "title"
+ "\377\376\375\374\373\372\371\370\367\366" // 286160
+
+ // #6427
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "subtitle"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 286192
+
+ // #6428
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "subtitle"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 286224
+
+ // #6429
+ "\377\376\375\374"
+ "para"
+ "\377\376\375\374\373\372\371\370" // 286240
+
+ // #6430
+ "\377\376\375\374"
+ "para"
+ "\377\376\375\374\373\372\371\370" // 286256
+
+ // #6431
+ "list"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 286272
+
+ // #6432
+ "list"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 286288
+
+ // #6433
+ "\377\376\375\374\373\372\371\370"
+ "item"
+ "\377\376\375\374" // 286304
+
+ // #6434
+ "\377\376\375\374\373\372\371\370"
+ "item"
+ "\377\376\375\374" // 286320
+
+ // #6435
+ "\377\376\375\374\373"
+ "note"
+ "\377\376\375\374\373\372\371" // 286336
+
+ // #6436
+ "\377\376\375\374\373"
+ "note"
+ "\377\376\375\374\373\372\371" // 286352
+
+ // #6437
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306"
+ "warning"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 286432+
+
+ // #6438
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "warning"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 286496+
+
+ // #6439
+ "\377\376"
+ "filename"
+ "\377\376\375\374\373\372" // 286512
+
+ // #6440
+ "\377\376"
+ "filename"
+ "\377\376\375\374\373\372" // 286528
+
+ // #6441
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "link"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 286560
+
+ // #6442
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "link"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 286592
+
+ // #6443
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "application"
+ "\377\376\375\374\373\372\371\370\367\366" // 286624
+
+ // #6444
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "application"
+ "\377\376\375\374\373\372\371\370\367\366" // 286656
+
+ // #6445
+ "\377\376\375\374\373\372\371"
+ "command"
+ "\377\376" // 286672
+
+ // #6446
+ "\377\376\375\374\373\372\371"
+ "command"
+ "\377\376" // 286688
+
+ // #6447
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "resource"
+ "\377\376\375\374\373\372\371\370\367" // 286720
+
+ // #6448
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "resource"
+ "\377\376\375\374\373\372\371\370\367" // 286752
+
+ // #6449
+ "\377\376\375\374\373\372"
+ "icode"
+ "\377\376\375\374\373" // 286768
+
+ // #6450
+ "\377\376\375\374\373\372"
+ "icode"
+ "\377\376\375\374\373" // 286784
+
+ // #6451
+ "\377\376\375\374\373\372\371\370"
+ "bcode"
+ "\377\376\375" // 286800
+
+ // #6452
+ "\377\376\375\374\373\372\371\370"
+ "bcode"
+ "\377\376\375" // 286816
+
+ // #6453
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "shortcut"
+ "\377\376\375\374\373\372\371\370\367\366" // 286848
+
+ // #6454
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "shortcut"
+ "\377\376\375\374\373\372\371\370\367\366" // 286880
+
+ // #6455
+ "\377\376\375\374\373\372\371"
+ "interface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 286912
+
+ // #6456
+ "\377\376\375\374\373\372\371"
+ "interface"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 286944
+
+ // #6457
+ "\377"
+ "emphasis"
+ "\377\376\375\374\373\372\371" // 286960
+
+ // #6458
+ "\377"
+ "emphasis"
+ "\377\376\375\374\373\372\371" // 286976
+
+ // #6459
+ "\377\376\375\374\373\372\371\370\367\366"
+ "placeholder"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 287008
+
+ // #6460
+ "\377\376\375\374\373\372\371\370\367\366"
+ "placeholder"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 287040
+
+ // #6461
+ "\377\376\375\374\373\372"
+ "email"
+ "\377\376\375\374\373" // 287056
+
+ // #6462
+ "\377\376\375\374\373\372"
+ "email"
+ "\377\376\375\374\373" // 287072
+
+ // #6463
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "envar"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 287104
+
+ // #6464
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "envar"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 287136
+
+ // #6465
+ "\377\376"
+ "message"
+ "\377\376\375\374\373\372\371" // 287152
+
+ // #6466
+ "\377\376"
+ "message"
+ "\377\376\375\374\373\372\371" // 287168
+
+ // #6467
+ "\377\376\375\374\373\372\371\370\367\366"
+ "numid"
+ "\377" // 287184
+
+ // #6468
+ "\377\376\375\374\373\372\371\370\367\366"
+ "numid"
+ "\377" // 287200
+
+ // #6469
+ "nl"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 287216
+
+ // #6470
+ "nl"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 287232
+
+ // #6471
+ "\377\376\375\374\373\372\371"
+ "numintg"
+ "\377\376" // 287248
+
+ // #6472
+ "\377\376\375\374\373\372\371"
+ "numintg"
+ "\377\376" // 287264
+
+ // #6473
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "numreal"
+ "\377\376\375\374\373\372\371\370\367\366" // 287296
+
+ // #6474
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "numreal"
+ "\377\376\375\374\373\372\371\370\367\366" // 287328
+
+ // #6475
+ "\377\376\375"
+ "ctx"
+ "\377\376\375\374\373\372\371\370\367\366" // 287344
+
+ // #6476
+ "\377\376\375\374\373\372\371"
+ "url"
+ "\377\376\375\374\373\372" // 287360
+
+ // #6477
+ "\377\376\375\374\373"
+ "address"
+ "\377\376\375\374" // 287376
+
+ // #6478
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "section"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 287456+
+
+ // #6479
+ "\377\376\375"
+ "label"
+ "\377\376\375\374\373\372\371\370" // 287472
+
+ // #6480
+ "\377\376\375\374\373\372\371\370\367"
+ "strong"
+ "\377" // 287488
+
+ // #6481
+ "width"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 287504
+
+ // #6482
+ "\377\376\375\374\373\372"
+ "fill"
+ "\377\376\375\374\373\372" // 287520
+
+ // #6483
+ "\377\376\375\374\373\372\371\370"
+ "plain"
+ "\377\376\375" // 287536
+
+ // #6484
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "rich"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 287568
+
+ // #6485
+ "\377\376\375\374"
+ "term"
+ "\377\376\375\374\373\372\371\370" // 287584
+
+ // #6486
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "action"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 287616
+
+ // #6487
+ "\377"
+ "title"
+ "\377\376\375\374\373\372\371\370\367\366" // 287632
+
+ // #6488
+ "\377\376\375"
+ "label"
+ "\377\376\375\374\373\372\371\370" // 287648
+
+ // #6489
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "option"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 287680
+
+ // #6490
+ "\377\376\375\374\373\372\371\370"
+ "item"
+ "\377\376\375\374" // 287696
+
+ // #6491
+ "\377\376\375\374\373\372"
+ "info"
+ "\377\376\375\374\373\372" // 287712
+
+ // #6492
+ "\377\376"
+ "button"
+ "\377\376\375\374\373\372\371\370" // 287728
+
+ // #6493
+ "\377\376\375\374\373\372\371\370\367"
+ "inmenu"
+ "\377" // 287744
+
+ // #6494
+ "intoolbar"
+ "\377\376\375\374\373\372\371" // 287760
+
+ // #6495
+ "\377\376\375\374\373\372\371\370\367\366"
+ "window"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 287792
+
+ // #6496
+ "\377\376\375\374"
+ "menu"
+ "\377\376\375\374\373\372\371\370" // 287808
+
+ // #6497
+ "\377\376"
+ "tab"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 287824
+
+ // #6498
+ "\377\376\375"
+ "group"
+ "\377\376\375\374\373\372\371\370" // 287840
+
+ // #6499
+ "\377"
+ "column"
+ "\377\376\375\374\373\372\371\370\367" // 287856
+
+ // #6500
+ "\377\376\375\374\373\372\371\370"
+ "row"
+ "\377\376\375\374\373" // 287872
+
+ // #6501
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "slider"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 287904
+
+ // #6502
+ "\377\376\375"
+ "spinbox"
+ "\377\376\375\374\373\372" // 287920
+
+ // #6503
+ "\377\376\375"
+ "listbox"
+ "\377\376\375\374\373\372" // 287936
+
+ // #6504
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "textbox"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 287968
+
+ // #6505
+ "\377\376\375"
+ "chooser"
+ "\377\376\375\374\373\372" // 287984
+
+ // #6506
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "check"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288016
+
+ // #6507
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "radio"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 288048
+
+ // #6508
+ "\377"
+ "inlistbox"
+ "\377\376\375\374\373\372" // 288064
+
+ // #6509
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "intable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288096+
+
+ // #6510
+ "\377\376\375"
+ "inrange"
+ "\377\376\375\374\373\372" // 288112
+
+ // #6511
+ "\377"
+ "intext"
+ "\377\376\375\374\373\372\371\370\367" // 288128
+
+ // #6512
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288160
+
+ // #6513
+ "\377\376\375"
+ "whatsthis"
+ "\377\376\375\374" // 288176
+
+ // #6514
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "status"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 288208
+
+ // #6515
+ "\377\376\375\374"
+ "progress"
+ "\377\376\375\374" // 288224
+
+ // #6516
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "tipoftheday"
+ "\377\376\375\374\373\372\371\370" // 288256
+
+ // #6517
+ "\377\376\375\374\373\372\371\370\367"
+ "credit"
+ "\377" // 288272
+
+ // #6518
+ "shell"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 288288
+
+ // #6519
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "var"
+ "\377" // 288304
+
+ // #6520
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ul"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 288336
+
+ // #6521
+ "\377\376\375"
+ "u"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 288352
+
+ // #6522
+ "\377\376\375\374\373\372"
+ "tt"
+ "\377\376\375\374\373\372\371\370" // 288368
+
+ // #6523
+ "\377\376\375\374\373\372\371\370\367"
+ "tr"
+ "\377\376\375\374\373" // 288384
+
+ // #6524
+ "\377"
+ "title"
+ "\377\376\375\374\373\372\371\370\367\366" // 288400
+
+ // #6525
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "thead"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 288432
+
+ // #6526
+ "\377\376\375\374\373"
+ "th"
+ "\377\376\375\374\373\372\371\370\367" // 288448
+
+ // #6527
+ "\377\376"
+ "tfoot"
+ "\377\376\375\374\373\372\371\370\367" // 288464
+
+ // #6528
+ "\377\376\375\374\373\372\371\370"
+ "td"
+ "\377\376\375\374\373\372" // 288480
+
+ // #6529
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "tbody"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 288512
+
+ // #6530
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "table"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288544+
+
+ // #6531
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "sub"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288576
+
+ // #6532
+ "\377\376\375\374\373\372\371\370\367\366"
+ "sup"
+ "\377\376\375" // 288592
+
+ // #6533
+ "\377\376\375\374\373\372\371\370\367"
+ "strong"
+ "\377" // 288608
+
+ // #6534
+ "\377"
+ "span"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 288624
+
+ // #6535
+ "\377\376\375\374\373\372"
+ "small"
+ "\377\376\375\374\373" // 288640
+
+ // #6536
+ "\377\376\375\374\373\372"
+ "samp"
+ "\377\376\375\374\373\372" // 288656
+
+ // #6537
+ "\377\376\375\374"
+ "s"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 288672
+
+ // #6538
+ "qt"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288688
+
+ // #6539
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "pre"
+ "\377\376" // 288704
+
+ // #6540
+ "\377\376\375\374\373\372\371\370\367\366"
+ "p"
+ "\377\376\375\374\373" // 288720
+
+ // #6541
+ "\377\376\375\374\373\372\371\370\367\366"
+ "ol"
+ "\377\376\375\374" // 288736
+
+ // #6542
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "nobr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 288768
+
+ // #6543
+ "li"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 288784
+
+ // #6544
+ "\377\376\375\374"
+ "meta"
+ "\377\376\375\374\373\372\371\370" // 288800
+
+ // #6545
+ "\377\376\375\374\373\372\371\370\367"
+ "kbd"
+ "\377\376\375\374" // 288816
+
+ // #6546
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "img"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 288848
+
+ // #6547
+ "i"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 288864
+
+ // #6548
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "html"
+ "\377" // 288880
+
+ // #6549
+ "\377\376\375\374\373"
+ "hr"
+ "\377\376\375\374\373\372\371\370\367" // 288896
+
+ // #6550
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "head"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 288928
+
+ // #6551
+ "\377"
+ "h6"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 288944
+
+ // #6552
+ "\377\376\375\374"
+ "h5"
+ "\377\376\375\374\373\372\371\370\367\366" // 288960
+
+ // #6553
+ "\377\376\375\374\373\372\371"
+ "h4"
+ "\377\376\375\374\373\372\371" // 288976
+
+ // #6554
+ "\377\376\375\374\373\372\371\370\367\366"
+ "h3"
+ "\377\376\375\374" // 288992
+
+ // #6555
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "h2"
+ "\377" // 289008
+
+ // #6556
+ "h1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 289024
+
+ // #6557
+ "\377\376\375\374\373"
+ "font"
+ "\377\376\375\374\373\372\371" // 289040
+
+ // #6558
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "em"
+ "\377" // 289056
+
+ // #6559
+ "\377\376\375"
+ "dt"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 289072
+
+ // #6560
+ "\377\376\375\374\373\372"
+ "dl"
+ "\377\376\375\374\373\372\371\370" // 289088
+
+ // #6561
+ "\377\376\375\374\373\372\371\370\367"
+ "div"
+ "\377\376\375\374" // 289104
+
+ // #6562
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "dfn"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 289136
+
+ // #6563
+ "\377\376"
+ "dd"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 289152
+
+ // #6564
+ "\377\376\375\374\373\372\371\370\367"
+ "code"
+ "\377\376\375" // 289168
+
+ // #6565
+ "\377"
+ "cita"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 289184
+
+ // #6566
+ "\377\376\375\374"
+ "center"
+ "\377\376\375\374\373\372" // 289200
+
+ // #6567
+ "\377"
+ "br"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289216
+
+ // #6568
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "body"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 289248
+
+ // #6569
+ "\377\376\375\374\373\372"
+ "blockquote"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 289280
+
+ // #6570
+ "\377"
+ "big"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 289296
+
+ // #6571
+ "\377\376\375\374\373\372"
+ "b"
+ "\377\376\375\374\373\372\371\370\367" // 289312
+
+ // #6572
+ "\377\376\375\374\373"
+ "address"
+ "\377\376\375\374" // 289328
+
+ // #6573
+ "\377\376\375\374\373\372\371\370\367"
+ "a"
+ "\377\376\375\374\373\372" // 289344
+
+ // #6574
+ "\377\376\375"
+ "lt"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 289360
+
+ // #6575
+ "\377\376"
+ "gt"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 289376
+
+ // #6576
+ "\377\376\375\374\373\372\371"
+ "amp"
+ "\377\376\375\374\373\372" // 289392
+
+ // #6577
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "apos"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 289424
+
+ // #6578
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "quot"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 289456
+
+ // #6579
+ "\377\376\375"
+ "lt"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 289472
+
+ // #6580
+ "\377\376"
+ "gt"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 289488
+
+ // #6581
+ "\377\376\375\374\373\372\371"
+ "amp"
+ "\377\376\375\374\373\372" // 289504
+
+ // #6582
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "apos"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 289536
+
+ // #6583
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "quot"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 289568
+
+ // #6584
+ "\377\376\375\374\373\372\371\370"
+ "&([a-z]+|#[0-9]+|#x[0-9a-fA-F]+);"
+ "\377\376\375\374\373\372\371" // 289616
+
+ // #6585
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "kdetranslator"
+ "\377\376\375\374\373\372\371\370" // 289648
+
+ // #6586
+ "\377"
+ "/.krcdirs"
+ "\377\376\375\374\373\372" // 289664
+
+ // #6587
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ".kde"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 289696
+
+ // #6588
+ "\377"
+ "/.config/"
+ "\377\376\375\374\373\372" // 289712
+
+ // #6589
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289744
+
+ // #6590
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289776
+
+ // #6591
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289808
+
+ // #6592
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289840
+
+ // #6593
+ "\377\376\375\374\373"
+ "/.local/share/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289872
+
+ // #6594
+ "\377\376"
+ "lib/"
+ "\377\376\375\374\373\372\371\370\367\366" // 289888
+
+ // #6595
+ "\377\376\375\374\373"
+ "share/apps"
+ "\377" // 289904
+
+ // #6596
+ "\377\376\375\374\373"
+ "share/doc/HTML"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 289936
+
+ // #6597
+ "\377\376\375\374\373\372\371\370\367"
+ "share/icons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 289968
+
+ // #6598
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ "share/config"
+ "\377\376\375\374\373\372\371\370" // 290016+
+
+ // #6599
+ "share/pixmaps"
+ "\377\376\375" // 290032
+
+ // #6600
+ "\377\376\375"
+ "share/applnk"
+ "\377" // 290048
+
+ // #6601
+ "\377\376\375\374\373\372"
+ "share/sounds"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 290080+
+
+ // #6602
+ "\377\376\375\374\373\372\371\370\367\366"
+ "share/locale"
+ "\377\376\375\374\373\372\371\370\367\366" // 290112
+
+ // #6603
+ "share/kde4/services"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 290144
+
+ // #6604
+ "\377"
+ "share/kde4/servicetypes"
+ "\377\376\375\374\373\372\371\370" // 290176
+
+ // #6605
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "share/mimelnk"
+ "\377\376\375\374\373" // 290208
+
+ // #6606
+ "cgi-bin"
+ "\377\376\375\374\373\372\371\370\367" // 290224
+
+ // #6607
+ "\377\376"
+ "share/wallpapers"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 290256
+
+ // #6608
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "share/templates"
+ "\377\376\375\374" // 290288
+
+ // #6609
+ "\377"
+ "bin"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 290304
+
+ // #6610
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "%lib/kde4"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 290336+
+
+ // #6611
+ "%lib/kde4/plugins"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 290368
+
+ // #6612
+ "\377\376\375\374\373\372\371"
+ "share/config.kcfg"
+ "\377\376\375\374\373\372\371\370" // 290400
+
+ // #6613
+ "\377\376\375"
+ "share/emoticons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 290432
+
+ // #6614
+ "applications"
+ "\377\376\375\374" // 290448
+
+ // #6615
+ "\377\376\375\374\373\372\371\370\367\366"
+ "icons"
+ "\377" // 290464
+
+ // #6616
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "pixmaps"
+ "\377\376\375\374\373\372\371\370\367\366" // 290496
+
+ // #6617
+ "\377\376\375\374"
+ "desktop-directories"
+ "\377\376\375\374\373\372\371\370\367" // 290528
+
+ // #6618
+ "\377\376\375\374\373\372\371\370\367"
+ "mime"
+ "\377\376\375" // 290544
+
+ // #6619
+ "\377\376"
+ "menus"
+ "\377\376\375\374\373\372\371\370\367" // 290560
+
+ // #6620
+ "\377\376\375\374\373\372\371\370\367\366"
+ "autostart"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 290592
+
+ // #6621
+ "\377\376\375\374"
+ "kde4/libexec"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 290624
+
+ // #6622
+ "\377\376\375\374\373\372\371\370"
+ "lib"
+ "\377\376\375\374\373" // 290640
+
+ // #6623
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 290656
+
+ // #6624
+ "\377\376\375\374\373\372"
+ "xdgconf-autostart"
+ "\377\376\375\374\373\372\371\370\367" // 290688
+
+ // #6625
+ "\377\376\375\374\373\372\371\370"
+ "share/autostart"
+ "\377\376\375\374\373\372\371\370\367" // 290720
+
+ // #6626
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "data"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 290752
+
+ // #6627
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 290768
+
+ // #6628
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 290784
+
+ // #6629
+ "\377\376\375\374"
+ "rc"
+ "\377\376\375\374\373\372\371\370\367\366" // 290800
+
+ // #6630
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 290816
+
+ // #6631
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 290832
+
+ // #6632
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 290848
+
+ // #6633
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 290864
+
+ // #6634
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 290896
+
+ // #6635
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 290912
+
+ // #6636
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 290928
+
+ // #6637
+ "\377\376\375\374\373\372\371\370"
+ "Directories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 290960
+
+ // #6638
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306"
+ "default"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 291040+
+
+ // #6639
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335"
+ "Directories-%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 291104+
+
+ // #6640
+ "\377\376\375\374\373\372\371\370"
+ "/etc/xdg"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 291136
+
+ // #6641
+ "\377\376\375\374\373\372\371"
+ "/share"
+ "\377\376\375" // 291152
+
+ // #6642
+ "\377\376\375\374\373\372\371\370"
+ "/etc/xdg"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 291184
+
+ // #6643
+ "\377\376\375\374\373\372\371"
+ "/share"
+ "\377\376\375" // 291200
+
+ // #6644
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 291216
+
+ // #6645
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 291232
+
+ // #6646
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 291248
+
+ // #6647
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 291280
+
+ // #6648
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 291296
+
+ // #6649
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 291312
+
+ // #6650
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 291328
+
+ // #6651
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 291344
+
+ // #6652
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "warn_unwritable_config"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 291440+
+
+ // #6653
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "notifyChange"
+ "\377\376\375\374\373\372\371\370" // 291472
+
+ // #6654
+ "\377\376\375\374\373\372\371\370\367"
+ "org.kde.KGlobalSettings"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 291520
+
+ // #6655
+ "\377"
+ "/KGlobalSettings"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 291552+
+
+ // #6656
+ "\377"
+ "type='signal',"
+ "\377" // 291568
+
+ // #6657
+ "%1='%2',"
+ "\377\376\375\374\373\372\371\370" // 291584
+
+ // #6658
+ "path"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 291600
+
+ // #6659
+ "\377\376\375\374\373"
+ "interface"
+ "\377\376" // 291616
+
+ // #6660
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "member"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 291648
+
+ // #6661
+ "\377\376\375"
+ "oxygen"
+ "\377\376\375\374\373\372\371" // 291664
+
+ // #6662
+ "Sans Serif"
+ "\377\376\375\374\373\372" // 291680
+
+ // #6663
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Sans Serif,10,-1,5,50,0,0,0,0,0"
+ "\377\376\375\374\373\372\371\370\367" // 291760+
+
+ // #6664
+ "\377\376"
+ "QFont"
+ "\377\376\375\374\373\372\371\370\367" // 291776
+
+ // #6665
+ "\377\376\375\374\373\372\371\370"
+ "font"
+ "\377\376\375\374" // 291792
+
+ // #6666
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 291888+
+
+ // #6667
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 291968+
+
+ // #6668
+ "Sans Serif"
+ "\377\376\375\374\373\372" // 291984
+
+ // #6669
+ "\377\376\375\374\373\372\371\370"
+ "Sans Serif,10,-1,5,50,0,0,0,0,0"
+ "\377\376\375\374\373\372\371\370\367" // 292032
+
+ // #6670
+ "\377\376"
+ "QFont"
+ "\377\376\375\374\373\372\371\370\367" // 292048
+
+ // #6671
+ "\377\376\375\374"
+ "menuFont"
+ "\377\376\375\374" // 292064
+
+ // #6672
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 292144+
+
+ // #6673
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 292224+
+
+ // #6674
+ "Sans Serif"
+ "\377\376\375\374\373\372" // 292240
+
+ // #6675
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Sans Serif,8,-1,5,50,0,0,0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366" // 292336+
+
+ // #6676
+ "\377\376"
+ "QFont"
+ "\377\376\375\374\373\372\371\370\367" // 292352
+
+ // #6677
+ "\377\376\375\374\373\372\371\370"
+ "toolBarFont"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 292384
+
+ // #6678
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 292464+
+
+ // #6679
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 292544+
+
+ // #6680
+ "400"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 292560
+
+ // #6681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 292592
+
+ // #6682
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "DoubleClickInterval"
+ "\377\376" // 292624
+
+ // #6683
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 292720+
+
+ // #6684
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 292800+
+
+ // #6685
+ "500"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 292816
+
+ // #6686
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 292848
+
+ // #6687
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "StartDragTime"
+ "\377\376\375\374" // 292896+
+
+ // #6688
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 292976+
+
+ // #6689
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 293056+
+
+ // #6690
+ "4"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 293072
+
+ // #6691
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 293104
+
+ // #6692
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "StartDragDist"
+ "\377\376\375\374\373\372\371\370\367" // 293152+
+
+ // #6693
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 293232+
+
+ // #6694
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 293312+
+
+ // #6695
+ "3"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 293328
+
+ // #6696
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 293360
+
+ // #6697
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "WheelScrollLines"
+ "\377\376\375" // 293392
+
+ // #6698
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 293488+
+
+ // #6699
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 293568+
+
+ // #6700
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 293584
+
+ // #6701
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 293600
+
+ // #6702
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "ShowIconsInMenuItems"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 293648
+
+ // #6703
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 293744+
+
+ // #6704
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 293824+
+
+ // #6705
+ "\377\376\375\374"
+ "kapp_accel_filter"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 293856
+
+ // #6706
+ "\377\376\375"
+ "Linux"
+ "\377\376\375\374\373\372\371\370" // 293872
+
+ // #6707
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "lsb_release"
+ "\377\376\375\374\373\372\371\370" // 293904
+
+ // #6708
+ "\377\376\375\374\373\372\371\370"
+ "kdebug.areas"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 293936
+
+ // #6709
+ "\377\376\375"
+ "/l10n"
+ "\377\376\375\374\373\372\371\370" // 293952
+
+ // #6710
+ "InfoOutput"
+ "\377\376\375\374\373\372" // 293968
+
+ // #6711
+ "2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 293984
+
+ // #6712
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 294016
+
+ // #6713
+ "\377\376\375\374\373\372\371\370"
+ "InfoOutput"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 294048
+
+ // #6714
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 294128+
+
+ // #6715
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 294208+
+
+ // #6716
+ "drkonqi"
+ "\377\376\375\374\373\372\371\370\367" // 294224
+
+ // #6717
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "("
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 294256
+
+ // #6718
+ "\377"
+ ")"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 294272
+
+ // #6719
+ "\377\376"
+ " "
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 294288
+
+ // #6720
+ "\377\376\375\374\373"
+ "SystemInformation::runLsbRelease"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 294336
+
+ // #6721
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ ":"
+ "\377\376\375" // 294352
+
+ // #6722
+ "\377\376\375\374\373\372\371"
+ "found lsb_release"
+ "\377\376\375\374\373\372\371\370" // 294384
+
+ // #6723
+ "C"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 294400
+
+ // #6724
+ "\377\376\375\374\373\372"
+ "LC_ALL"
+ "\377\376\375\374" // 294416
+
+ // #6725
+ "\377\376\375"
+ "_KPROCESS_DUMMY_="
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 294448
+
+ // #6726
+ "\377\376\375\374\373\372\371\370\367"
+ "-sd"
+ "\377\376\375\374" // 294464
+
+ // #6727
+ "2.0"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 294480
+
+ // #6728
+ "\377\376\375\374\373\372\371\370"
+ "submit@bugs.kde.org"
+ "\377\376\375\374\373" // 294512
+
+ // #6729
+ "\377\376\375\374\373\372\371"
+ "https://bugs.kde.org"
+ "\377\376\375\374\373" // 294544
+
+ // #6730
+ "\377\376\375\374\373\372\371"
+ "/proc/%1/exe"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 294576
+
+ // #6731
+ "drkonqi"
+ "\377\376\375\374\373\372\371\370\367" // 294592
+
+ // #6732
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "("
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 294624
+
+ // #6733
+ "\377"
+ ")"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 294640
+
+ // #6734
+ "\377\376"
+ " "
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 294656
+
+ // #6735
+ "\377\376\375\374"
+ "KCrashBackend::constructCrashedApplication"
+ "\377\376" // 294704
+
+ // #6736
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ ":"
+ "\377\376\375" // 294720
+
+ // #6737
+ "\377\376\375\374"
+ "Using /proc to determine executable path"
+ "\377\376\375\374" // 294768+
+
+ // #6738
+ "\377\376\375\374\373\372\371"
+ "/proc/%1/exe"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 294800
+
+ // #6739
+ "drkonqi"
+ "\377\376\375\374\373\372\371\370\367" // 294816
+
+ // #6740
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "("
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 294848
+
+ // #6741
+ "\377"
+ ")"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 294864
+
+ // #6742
+ "\377\376"
+ " "
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 294880
+
+ // #6743
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334"
+ "KCrashBackend::constructCrashedApplication"
+ "\377\376" // 294960+
+
+ // #6744
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ ":"
+ "\377\376\375" // 294976
+
+ // #6745
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Executable is:"
+ "\377\376\375\374\373" // 295008
+
+ // #6746
+ "drkonqi"
+ "\377\376\375\374\373\372\371\370\367" // 295024
+
+ // #6747
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "("
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 295056
+
+ // #6748
+ "\377"
+ ")"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 295072
+
+ // #6749
+ "\377\376"
+ " "
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 295088
+
+ // #6750
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354"
+ "KCrashBackend::constructCrashedApplication"
+ "\377\376" // 295152+
+
+ // #6751
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ ":"
+ "\377\376\375" // 295168
+
+ // #6752
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Executable exists:"
+ "\377\376" // 295200
+
+ // #6753
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "true"
+ "\377" // 295216
+
+ // #6754
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "KCrash"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 295248
+
+ // #6755
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304"
+ "debuggers/internal/*"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 295344+
+
+ // #6756
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295360
+
+ // #6757
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "*"
+ "\377\376\375" // 295376
+
+ // #6758
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295392
+
+ // #6759
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295408
+
+ // #6760
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295424
+
+ // #6761
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295440
+
+ // #6762
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295456
+
+ // #6763
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295472
+
+ // #6764
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295488
+
+ // #6765
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295504
+
+ // #6766
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295520
+
+ // #6767
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295536
+
+ // #6768
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295552
+
+ // #6769
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295568
+
+ // #6770
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295584
+
+ // #6771
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295600
+
+ // #6772
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295616
+
+ // #6773
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295632
+
+ // #6774
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 295648
+
+ // #6775
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 295664
+
+ // #6776
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 295680
+
+ // #6777
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 295696
+
+ // #6778
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295712
+
+ // #6779
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 295728
+
+ // #6780
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 295760
+
+ // #6781
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295776
+
+ // #6782
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295792
+
+ // #6783
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295808
+
+ // #6784
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295824
+
+ // #6785
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 295840
+
+ // #6786
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 295856
+
+ // #6787
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 295872
+
+ // #6788
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295888
+
+ // #6789
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 295904
+
+ // #6790
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 295936
+
+ // #6791
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295952
+
+ // #6792
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295968
+
+ // #6793
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 295984
+
+ // #6794
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296000
+
+ // #6795
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 296016
+
+ // #6796
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 296032
+
+ // #6797
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 296048
+
+ // #6798
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296064
+
+ // #6799
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 296080
+
+ // #6800
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 296112
+
+ // #6801
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296128
+
+ // #6802
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296144
+
+ // #6803
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296160
+
+ // #6804
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296176
+
+ // #6805
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 296192
+
+ // #6806
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "gdb"
+ "\377" // 296208
+
+ // #6807
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "KCrash"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 296240
+
+ // #6808
+ "\377\376\375\374\373\372\371"
+ "debuggers/external/*"
+ "\377\376\375\374\373" // 296272
+
+ // #6809
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296288
+
+ // #6810
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296304
+
+ // #6811
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 296320
+
+ // #6812
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296336
+
+ // #6813
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 296352
+
+ // #6814
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296368
+
+ // #6815
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 296384
+
+ // #6816
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296400
+
+ // #6817
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296416
+
+ // #6818
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 296432
+
+ // #6819
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296448
+
+ // #6820
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 296464
+
+ // #6821
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 296480
+
+ // #6822
+ "\377\376\375\374\373"
+ ".."
+ "\377\376\375\374\373\372\371\370\367" // 296496
+
+ // #6823
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 296512
+
+ // #6824
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 296528
+
+ // #6825
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296544
+
+ // #6826
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 296560
+
+ // #6827
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 296592
+
+ // #6828
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296608
+
+ // #6829
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296624
+
+ // #6830
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296640
+
+ // #6831
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296656
+
+ // #6832
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 296672
+
+ // #6833
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 296688
+
+ // #6834
+ "\377\376"
+ "/etc/kde4rc"
+ "\377\376\375" // 296704
+
+ // #6835
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296720
+
+ // #6836
+ "\377\376\375\374"
+ "kdeglobals"
+ "\377\376" // 296736
+
+ // #6837
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "system.kdeglobals"
+ "\377\376" // 296768
+
+ // #6838
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296784
+
+ // #6839
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296800
+
+ // #6840
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296816
+
+ // #6841
+ "\377\376\375\374\373\372\371\370"
+ "INI"
+ "\377\376\375\374\373" // 296832
+
+ // #6842
+ "\377\376\375"
+ "/"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 296848
+
+ // #6843
+ "\377\376\375\374\373\372"
+ "/krashinfo"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 296880
+
+ // #6844
+ "drkonqi"
+ "\377\376\375\374\373\372\371\370\367" // 296896
+
+ // #6845
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "("
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 296928
+
+ // #6846
+ "\377"
+ ")"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 296944
+
+ // #6847
+ "\377\376"
+ " "
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 296960
+
+ // #6848
+ "\377\376\375\374"
+ "DrKonqi::init"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 296992
+
+ // #6849
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ ":"
+ "\377\376\375" // 297008
+
+ // #6850
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Enabling drkonqi crash catching"
+ "\377\376\375\374\373" // 297056
+
+ // #6851
+ "\377\376\375\374"
+ "drkonqi"
+ "\377\376\375\374\373" // 297072
+
+ // #6852
+ "\377\376\375\374\373\372\371\370"
+ "dialog-ok"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 297104
+
+ // #6853
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 297120
+
+ // #6854
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 297136
+
+ // #6855
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "ShowIconsOnPushButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 297200+
+
+ // #6856
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 297264+
+
+ // #6857
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 297344+
+
+ // #6858
+ "\377\376\375\374\373\372\371\370\367"
+ "dialog-cancel"
+ "\377\376\375\374\373\372\371\370\367\366" // 297376
+
+ // #6859
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297392
+
+ // #6860
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297408
+
+ // #6861
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297424
+
+ // #6862
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297440
+
+ // #6863
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297456
+
+ // #6864
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "Document/application separator in titlebar"
+ "\377\376\375\374\373\372" // 297520+
+
+ // #6865
+ "\377\376\375\374\373\372\371\370"
+ "tools-report-bug"
+ "\377\376\375\374\373\372\371\370" // 297552
+
+ // #6866
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297568
+
+ // #6867
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297584
+
+ // #6868
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297600
+
+ // #6869
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297616
+
+ // #6870
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 297632
+
+ // #6871
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325"
+ "qt_tabwidget_stackedwidget"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 297712+
+
+ // #6872
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "qt_tabwidget_tabbar"
+ "\377\376\375\374\373" // 297760+
+
+ // #6873
+ "QObject::connect: Connecting from "
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 297808
+
+ // #6874
+ "\377\376\375\374"
+ "::"
+ "\377\376\375\374\373\372\371\370\367\366" // 297824
+
+ // #6875
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ " to COMPAT slot ("
+ "\377\376\375\374\373\372\371" // 297888+
+
+ // #6876
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "::"
+ "\377\376\375" // 297904
+
+ // #6877
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ ")"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 297936
+
+ // #6878
+ "\377\376\375"
+ "tabbar"
+ "\377\376\375\374\373\372\371" // 297952
+
+ // #6879
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 297968
+
+ // #6880
+ "@info"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 297984
+
+ // #6881
+ "\377\376\375\374"
+ "\134""s"
+ "\377\376\375\374\373\372\371\370\367\366" // 298000
+
+ // #6882
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "^\134""s*<\134""s*(\134""w+)[^>]*>"
+ "\377\376" // 298032
+
+ // #6883
+ "\377\376\375\374\373\372\371\370"
+ "</"
+ "\377\376\375\374\373\372" // 298048
+
+ // #6884
+ "\377\376\375\374\373\372"
+ "xml"
+ "\377\376\375\374\373\372\371" // 298064
+
+ // #6885
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "http://www.w3.org/XML/1998/namespace"
+ "\377\376\375\374" // 298160+
+
+ // #6886
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<"
+ "\377\376\375\374" // 298176
+
+ // #6887
+ "\377\376\375\374\373\372"
+ "lt"
+ "\377\376\375\374\373\372\371\370" // 298192
+
+ // #6888
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ">"
+ "\377\376" // 298208
+
+ // #6889
+ "\377\376\375\374\373\372\371\370\367"
+ "gt"
+ "\377\376\375\374\373" // 298224
+
+ // #6890
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 298256
+
+ // #6891
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "amp"
+ "\377" // 298272
+
+ // #6892
+ "\377\376\375"
+ "'"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 298288
+
+ // #6893
+ "apos"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 298304
+
+ // #6894
+ "\377\376\375\374\373"
+ "\42"""
+ "\377\376\375\374\373\372\371\370\367\366" // 298320
+
+ // #6895
+ "\377\376\375\374\373"
+ "quot"
+ "\377\376\375\374\373\372\371" // 298336
+
+ // #6896
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298352
+
+ // #6897
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298368
+
+ // #6898
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 298400
+
+ // #6899
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 298416
+
+ // #6900
+ "\377\376\375\374"
+ "Serif"
+ "\377\376\375\374\373\372\371" // 298432
+
+ // #6901
+ "Sans Serif"
+ "\377\376\375\374\373\372" // 298448
+
+ // #6902
+ "\377\376\375\374\373\372"
+ "Monospace"
+ "\377" // 298464
+
+ // #6903
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Helvetica"
+ "\377\376\375\374\373\372\371\370\367" // 298528+
+
+ // #6904
+ "\377\376\375\374\373\372\371\370"
+ "@info"
+ "\377\376\375" // 298544
+
+ // #6905
+ "\377\376\375\374\373\372\371\370"
+ "</"
+ "\377\376\375\374\373\372" // 298560
+
+ // #6906
+ "\377\376\375\374\373\372"
+ "xml"
+ "\377\376\375\374\373\372\371" // 298576
+
+ // #6907
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "http://www.w3.org/XML/1998/namespace"
+ "\377\376\375\374" // 298672+
+
+ // #6908
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<"
+ "\377\376\375\374" // 298688
+
+ // #6909
+ "\377\376\375\374\373\372"
+ "lt"
+ "\377\376\375\374\373\372\371\370" // 298704
+
+ // #6910
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ">"
+ "\377\376" // 298720
+
+ // #6911
+ "\377\376\375\374\373\372\371\370\367"
+ "gt"
+ "\377\376\375\374\373" // 298736
+
+ // #6912
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 298768
+
+ // #6913
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "amp"
+ "\377" // 298784
+
+ // #6914
+ "\377\376\375"
+ "'"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 298800
+
+ // #6915
+ "apos"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 298816
+
+ // #6916
+ "\377\376\375\374\373"
+ "\42"""
+ "\377\376\375\374\373\372\371\370\367\366" // 298832
+
+ // #6917
+ "\377\376\375\374\373"
+ "quot"
+ "\377\376\375\374\373\372\371" // 298848
+
+ // #6918
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298864
+
+ // #6919
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298880
+
+ // #6920
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298896
+
+ // #6921
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298912
+
+ // #6922
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 298928
+
+ // #6923
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 298960
+
+ // #6924
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 298976
+
+ // #6925
+ "\377\376\375\374\373\372\371\370\367"
+ "pics/crash.png"
+ "\377\376\375\374\373\372\371\370\367" // 299008
+
+ // #6926
+ "\377\376\375"
+ "/l10n"
+ "\377\376\375\374\373\372\371\370" // 299024
+
+ // #6927
+ "png"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 299040
+
+ // #6928
+ "\377\376\375\374\373\372\371\370"
+ "Software"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 299072
+
+ // #6929
+ "www.inkscape.org"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 299104
+
+ // #6930
+ "@label"
+ "\377\376\375\374\373\372\371\370\367\366" // 299120
+
+ // #6931
+ "\377\376\375\374\373"
+ "<strong>%1</strong>"
+ "\377\376\375\374\373\372\371\370" // 299152
+
+ // #6932
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299168
+
+ // #6933
+ "\377\376\375\374\373\372\371"
+ "numintg"
+ "\377\376" // 299184
+
+ // #6934
+ "\377\376\375\374\373\372\371\370\367\366"
+ "<%1>"
+ "\377\376" // 299200
+
+ // #6935
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "</%1>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 299232
+
+ // #6936
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299248
+
+ // #6937
+ "\377\376\375\374\373\372\371"
+ "numintg"
+ "\377\376" // 299264
+
+ // #6938
+ "\377\376\375\374\373\372\371\370\367\366"
+ "<%1>"
+ "\377\376" // 299280
+
+ // #6939
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "</%1>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 299312
+
+ // #6940
+ "\377\376\375\374\373\372\371\370"
+ "@info"
+ "\377\376\375" // 299328
+
+ // #6941
+ "\377\376\375\374\373\372\371\370"
+ "</"
+ "\377\376\375\374\373\372" // 299344
+
+ // #6942
+ "\377\376\375\374\373\372"
+ "xml"
+ "\377\376\375\374\373\372\371" // 299360
+
+ // #6943
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "http://www.w3.org/XML/1998/namespace"
+ "\377\376\375\374" // 299440+
+
+ // #6944
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<"
+ "\377\376\375\374" // 299456
+
+ // #6945
+ "\377\376\375\374\373\372"
+ "lt"
+ "\377\376\375\374\373\372\371\370" // 299472
+
+ // #6946
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ">"
+ "\377\376" // 299488
+
+ // #6947
+ "\377\376\375\374\373\372\371\370\367"
+ "gt"
+ "\377\376\375\374\373" // 299504
+
+ // #6948
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 299536
+
+ // #6949
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "amp"
+ "\377" // 299552
+
+ // #6950
+ "\377\376\375"
+ "'"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 299568
+
+ // #6951
+ "apos"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 299584
+
+ // #6952
+ "\377\376\375\374\373"
+ "\42"""
+ "\377\376\375\374\373\372\371\370\367\366" // 299600
+
+ // #6953
+ "\377\376\375\374\373"
+ "quot"
+ "\377\376\375\374\373\372\371" // 299616
+
+ // #6954
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299632
+
+ // #6955
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299648
+
+ // #6956
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299664
+
+ // #6957
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299680
+
+ // #6958
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299696
+
+ // #6959
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 299712
+
+ // #6960
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 299744
+
+ // #6961
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 299760
+
+ // #6962
+ "@title:tab general information"
+ "\377\376" // 299792
+
+ // #6963
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 299824
+
+ // #6964
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 299856
+
+ // #6965
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 299888
+
+ // #6966
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 299920
+
+ // #6967
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 299952
+
+ // #6968
+ "\377\376\375\374\373\372\371\370"
+ "1"
+ "\377\376\375\374\373\372\371" // 299968
+
+ // #6969
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300000
+
+ // #6970
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300032
+
+ // #6971
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300064
+
+ // #6972
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "Helvetica"
+ "\377\376\375\374\373\372\371\370\367" // 300128+
+
+ // #6973
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300160
+
+ // #6974
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Helvetica"
+ "\377\376\375\374\373\372\371\370\367" // 300192+
+
+ // #6975
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300224
+
+ // #6976
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300256
+
+ // #6977
+ "\377\376\375\374\373\372\371\370\367\366"
+ "process-working"
+ "\377\376\375\374\373\372\371" // 300288
+
+ // #6978
+ "\377\376\375\374\373"
+ ".png"
+ "\377\376\375\374\373\372\371" // 300304
+
+ // #6979
+ "\377\376\375"
+ "/l10n"
+ "\377\376\375\374\373\372\371\370" // 300320
+
+ // #6980
+ "png"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 300336
+
+ // #6981
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "process-working"
+ "\377\376" // 300368
+
+ // #6982
+ "\377\376\375\374\373"
+ ".png"
+ "\377\376\375\374\373\372\371" // 300384
+
+ // #6983
+ "\377\376\375"
+ "/l10n"
+ "\377\376\375\374\373\372\371\370" // 300400
+
+ // #6984
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ "qt_scrollarea_viewport"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 300464+
+
+ // #6985
+ "\377\376\375"
+ "qt_scrollarea_hcontainer"
+ "\377\376\375\374\373" // 300496
+
+ // #6986
+ "\377\376\375\374\373\372\371\370"
+ "qt_scrollarea_vcontainer"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 300544
+
+ // #6987
+ "qt_abstractscrollarea_filter"
+ "\377\376\375\374" // 300576
+
+ // #6988
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "installdbgsymbols.sh"
+ "\377\376" // 300640+
+
+ // #6989
+ " margin: 5px; "
+ "\377\376" // 300656
+
+ // #6990
+ "\377\376\375\374\373\372\371"
+ "QLineEdit"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 300688
+
+ // #6991
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 300720
+
+ // #6992
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 300736
+
+ // #6993
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "-qt-style-features"
+ "\377\376" // 300768
+
+ // #6994
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "background-color"
+ "\377" // 300800
+
+ // #6995
+ "\377\376\375\374\373\372\371"
+ "QLineEdit"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 300832
+
+ // #6996
+ "no-frame"
+ "\377\376\375\374\373\372\371\370" // 300848
+
+ // #6997
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 300864
+
+ // #6998
+ "\377\376\375\374\373\372\371\370\367"
+ "QFrame"
+ "\377" // 300880
+
+ // #6999
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 300896
+
+ // #7000
+ "QLabel"
+ "\377\376\375\374\373\372\371\370\367\366" // 300912
+
+ // #7001
+ "\377\376\375\374\373\372\371"
+ "QToolBox"
+ "\377" // 300928
+
+ // #7002
+ "background"
+ "\377\376\375\374\373\372" // 300944
+
+ // #7003
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "border-image"
+ "\377\376\375\374\373\372\371\370\367" // 300976
+
+ // #7004
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "QGroupBox"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 301024+
+
+ // #7005
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 301040
+
+ // #7006
+ "\377\376"
+ "QToolTip"
+ "\377\376\375\374\373\372" // 301056
+
+ // #7007
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301088
+
+ // #7008
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 301104
+
+ // #7009
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "QPushButton"
+ "\377\376\375\374\373\372\371\370\367\366" // 301136
+
+ // #7010
+ "\377\376\375\374\373\372\371"
+ "QToolButton"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 301168
+
+ // #7011
+ "\377\376\375"
+ "border-style"
+ "\377" // 301184
+
+ // #7012
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "-qt-style-features"
+ "\377\376" // 301216
+
+ // #7013
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "background-color"
+ "\377" // 301248
+
+ // #7014
+ "QComboBox"
+ "\377\376\375\374\373\372\371" // 301264
+
+ // #7015
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 301280
+
+ // #7016
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "-qt-style-features"
+ "\377\376" // 301312
+
+ // #7017
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "background-color"
+ "\377" // 301344
+
+ // #7018
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "background-gradient"
+ "\377\376\375" // 301408+
+
+ // #7019
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301440
+
+ // #7020
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "QAbstractSpinBox"
+ "\377\376\375" // 301472+
+
+ // #7021
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 301488
+
+ // #7022
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "-qt-style-features"
+ "\377\376" // 301520
+
+ // #7023
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "background-color"
+ "\377" // 301552
+
+ // #7024
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301584
+
+ // #7025
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "QMenu"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 301616
+
+ // #7026
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301648
+
+ // #7027
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "QMenu"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 301680
+
+ // #7028
+ "\377\376\375\374"
+ "item"
+ "\377\376\375\374\373\372\371\370" // 301696
+
+ // #7029
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "-qt-style-features"
+ "\377\376" // 301728
+
+ // #7030
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "background-color"
+ "\377" // 301760
+
+ // #7031
+ "\377\376\375\374\373\372\371\370\367"
+ "QHeaderView"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301792
+
+ // #7032
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301824
+
+ // #7033
+ "\377\376\375\374\373"
+ "QTableCornerButton"
+ "\377\376\375\374\373\372\371\370\367" // 301856
+
+ // #7034
+ "\377\376\375\374\373\372\371\370"
+ "section"
+ "\377" // 301872
+
+ // #7035
+ "\377\376\375\374\373\372\371\370\367"
+ "QHeaderView"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301904
+
+ // #7036
+ "\377\376\375\374\373\372\371\370"
+ "section"
+ "\377" // 301920
+
+ // #7037
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 301952
+
+ // #7038
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "-qt-style-features"
+ "\377\376" // 301984
+
+ // #7039
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "background-color"
+ "\377" // 302016
+
+ // #7040
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 302032
+
+ // #7041
+ "QProgressBar"
+ "\377\376\375\374" // 302048
+
+ // #7042
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 302080
+
+ // #7043
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "QScrollBar"
+ "\377\376\375\374\373\372\371\370\367" // 302112
+
+ // #7044
+ "\377"
+ "-qt-background-role"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 302144
+
+ // #7045
+ "\377\376\375\374\373\372\371\370"
+ "QDockWidget"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 302176
+
+ // #7046
+ "\377\376\375\374\373"
+ "border"
+ "\377\376\375\374\373" // 302192
+
+ // #7047
+ "QLabel"
+ "\377\376\375\374\373\372\371\370\367\366" // 302208
+
+ // #7048
+ "QFrame"
+ "\377\376\375\374\373\372\371\370\367\366" // 302224
+
+ // #7049
+ "QWidget"
+ "\377\376\375\374\373\372\371\370\367" // 302240
+
+ // #7050
+ "QObject"
+ "\377\376\375\374\373\372\371\370\367" // 302256
+
+ // #7051
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "@info:tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 302304+
+
+ // #7052
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 302336
+
+ // #7053
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 302352
+
+ // #7054
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "view-refresh"
+ "\377\376\375\374\373" // 302432+
+
+ // #7055
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "@action:button"
+ "\377\376\375\374\373\372\371\370\367\366" // 302496+
+
+ // #7056
+ "\377\376\375\374\373\372\371\370"
+ "@info:tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 302528
+
+ // #7057
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 302560
+
+ // #7058
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 302576
+
+ // #7059
+ "\377\376\375"
+ "system-software-update"
+ "\377\376\375\374\373\372\371" // 302608
+
+ // #7060
+ "\377\376\375\374\373\372\371\370"
+ "@action:button"
+ "\377\376\375\374\373\372\371\370\367\366" // 302640
+
+ // #7061
+ "\377\376\375\374\373\372\371\370"
+ "@info:tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 302672
+
+ // #7062
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 302704
+
+ // #7063
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 302720
+
+ // #7064
+ "\377\376\375\374\373\372\371\370\367"
+ "edit-copy"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 302752
+
+ // #7065
+ "\377\376\375\374\373\372\371\370"
+ "@info:tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 302784
+
+ // #7066
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 302816
+
+ // #7067
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 302832
+
+ // #7068
+ "\377\376\375\374"
+ "document-save"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 302864
+
+ // #7069
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "favorites"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 302944+
+
+ // #7070
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 302960
+
+ // #7071
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 302976
+
+ // #7072
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 302992
+
+ // #7073
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303008
+
+ // #7074
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303024
+
+ // #7075
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303040
+
+ // #7076
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303056
+
+ // #7077
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303072
+
+ // #7078
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303088
+
+ // #7079
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303104
+
+ // #7080
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303120
+
+ // #7081
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303136
+
+ // #7082
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303152
+
+ // #7083
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303168
+
+ // #7084
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303184
+
+ // #7085
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303200
+
+ // #7086
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303216
+
+ // #7087
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "favorites"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 303264+
+
+ // #7088
+ "1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 303280
+
+ // #7089
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 303296
+
+ // #7090
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303312
+
+ // #7091
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303328
+
+ // #7092
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303344
+
+ // #7093
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303360
+
+ // #7094
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303376
+
+ // #7095
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303392
+
+ // #7096
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303408
+
+ // #7097
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303424
+
+ // #7098
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303440
+
+ // #7099
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303456
+
+ // #7100
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303472
+
+ // #7101
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303488
+
+ // #7102
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303504
+
+ // #7103
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303520
+
+ // #7104
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303536
+
+ // #7105
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303552
+
+ // #7106
+ "\377\376"
+ "dialog-error"
+ "\377\376" // 303568
+
+ // #7107
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 303584
+
+ // #7108
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303600
+
+ // #7109
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303616
+
+ // #7110
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303632
+
+ // #7111
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303648
+
+ // #7112
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303664
+
+ // #7113
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303680
+
+ // #7114
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303696
+
+ // #7115
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303712
+
+ // #7116
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303728
+
+ // #7117
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303744
+
+ // #7118
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303760
+
+ // #7119
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 303776
+
+ // #7120
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303792
+
+ // #7121
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303808
+
+ // #7122
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 303824
+
+ // #7123
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 303840
+
+ // #7124
+ "Software"
+ "\377\376\375\374\373\372\371\370" // 303856
+
+ // #7125
+ "www.inkscape.org"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 303888
+
+ // #7126
+ "\377\376\375\374\373"
+ "Monospace"
+ "\377\376" // 303904
+
+ // #7127
+ "\377\376\375\374\373\372\371\370"
+ "Monospace,10,-1,5,50,0,0,0,0,0"
+ "\377\376\375\374\373\372\371\370\367\366" // 303952
+
+ // #7128
+ "\377\376"
+ "QFont"
+ "\377\376\375\374\373\372\371\370\367" // 303968
+
+ // #7129
+ "\377\376\375\374\373\372\371\370\367\366"
+ "fixed"
+ "\377" // 303984
+
+ // #7130
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 304048+
+
+ // #7131
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 304128+
+
+ // #7132
+ "\377\376\375\374\373\372\371\370"
+ "@title:tab"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 304160
+
+ // #7133
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "window-close"
+ "\377\376\375\374\373\372\371" // 304192
+
+ // #7134
+ "\377\376\375\374\373\372\371\370"
+ "@info:tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 304224
+
+ // #7135
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 304256
+
+ // #7136
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 304272
+
+ // #7137
+ "\377\376\375\374\373\372\371\370"
+ "tools-report-bug"
+ "\377\376\375\374\373\372\371\370" // 304304
+
+ // #7138
+ "\377\376\375\374\373\372\371\370"
+ "@action:button"
+ "\377\376\375\374\373\372\371\370\367\366" // 304336
+
+ // #7139
+ "\377\376\375\374\373\372\371\370"
+ "@info:tooltip"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 304368
+
+ // #7140
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 304400
+
+ // #7141
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 304416
+
+ // #7142
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "applications-development"
+ "\377\376\375\374\373\372\371\370" // 304480+
+
+ // #7143
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "@action:button this is the debug menu button label which contains the debugging applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 304624+
+
+ // #7144
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "applications-development"
+ "\377\376\375\374\373\372\371\370" // 304672+
+
+ // #7145
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 304688
+
+ // #7146
+ "@action:inmenu 1 is the debugger name"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 304736
+
+ // #7147
+ "\377\376\375\374\373\372\371\370"
+ "</"
+ "\377\376\375\374\373\372" // 304752
+
+ // #7148
+ "\377\376\375\374\373\372"
+ "xml"
+ "\377\376\375\374\373\372\371" // 304768
+
+ // #7149
+ "\377\376\375\374\373\372\371\370"
+ "http://www.w3.org/XML/1998/namespace"
+ "\377\376\375\374" // 304816+
+
+ // #7150
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<"
+ "\377\376\375\374" // 304832
+
+ // #7151
+ "\377\376\375\374\373\372"
+ "lt"
+ "\377\376\375\374\373\372\371\370" // 304848
+
+ // #7152
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ ">"
+ "\377\376" // 304864
+
+ // #7153
+ "\377\376\375\374\373\372\371\370\367"
+ "gt"
+ "\377\376\375\374\373" // 304880
+
+ // #7154
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 304912
+
+ // #7155
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "amp"
+ "\377" // 304928
+
+ // #7156
+ "\377\376\375"
+ "'"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 304944
+
+ // #7157
+ "apos"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 304960
+
+ // #7158
+ "\377\376\375\374\373"
+ "\42"""
+ "\377\376\375\374\373\372\371\370\367\366" // 304976
+
+ // #7159
+ "\377\376\375\374\373"
+ "quot"
+ "\377\376\375\374\373\372\371" // 304992
+
+ // #7160
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 305008
+
+ // #7161
+ "@info:tooltip"
+ "\377\376\375" // 305024
+
+ // #7162
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 305056
+
+ // #7163
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 305072
+
+ // #7164
+ "\377"
+ "system-reboot"
+ "\377\376" // 305088
+
+ // #7165
+ "@action:button"
+ "\377\376" // 305104
+
+ // #7166
+ "@info:tooltip"
+ "\377\376\375" // 305120
+
+ // #7167
+ "\377\376\375\374\373\372\371\370\367"
+ "</html>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 305152
+
+ // #7168
+ "\377"
+ "<html>"
+ "\377\376\375\374\373\372\371\370\367" // 305168
+
+ // #7169
+ "QLabel"
+ "\377\376\375\374\373\372\371\370\367\366" // 305184
+
+ // #7170
+ "QFrame"
+ "\377\376\375\374\373\372\371\370\367\366" // 305200
+
+ // #7171
+ "QWidget"
+ "\377\376\375\374\373\372\371\370\367" // 305216
+
+ // #7172
+ "QObject"
+ "\377\376\375\374\373\372\371\370\367" // 305232
+
+ // #7173
+ "Oxygen::TransitionWidget"
+ "\377\376\375\374\373\372\371\370" // 305264
+
+ // #7174
+ "QWidget"
+ "\377\376\375\374\373\372\371\370\367" // 305280
+
+ // #7175
+ "QObject"
+ "\377\376\375\374\373\372\371\370\367" // 305296
+
+ // #7176
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "XXXX"
+ "\377" // 305312
+
+ // #7177
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "XXXX"
+ "\377" // 305328
+
+ // #7178
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 305344
+
+ // #7179
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 305360
+
+ // #7180
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "ShowIconsOnPushButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 305456+
+
+ // #7181
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 305520+
+
+ // #7182
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 305600+
+
+ // #7183
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 305616
+
+ // #7184
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 305632
+
+ // #7185
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325"
+ "ShowIconsOnPushButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 305712+
+
+ // #7186
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 305776+
+
+ // #7187
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 305856+
+
+ // #7188
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 305872
+
+ // #7189
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 305888
+
+ // #7190
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325"
+ "ShowIconsOnPushButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 305968+
+
+ // #7191
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 306032+
+
+ // #7192
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 306112+
+
+ // #7193
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Width %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 306144
+
+ // #7194
+ "902"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 306160
+
+ // #7195
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 306192
+
+ // #7196
+ "Width 1680"
+ "\377\376\375\374\373\372" // 306208
+
+ // #7197
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 306288+
+
+ // #7198
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 306368+
+
+ // #7199
+ "\377\376\375"
+ "Height %1"
+ "\377\376\375\374" // 306384
+
+ // #7200
+ "\377\376\375\374\373\372\371\370"
+ "706"
+ "\377\376\375\374\373" // 306400
+
+ // #7201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "int"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 306432
+
+ // #7202
+ "\377\376\375\374\373\372\371\370"
+ "Height 1050"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 306464
+
+ // #7203
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 306544+
+
+ // #7204
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 306624+
+
+ // #7205
+ "suse"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 306640
+
+ // #7206
+ "\377\376\375\374\373"
+ "ubuntu"
+ "\377\376\375\374\373" // 306656
+
+ // #7207
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "fedora"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 306688
+
+ // #7208
+ "\377\376\375"
+ "redhat"
+ "\377\376\375\374\373\372\371" // 306704
+
+ // #7209
+ "\377\376\375\374\373\372\371\370\367\366"
+ "mandriva"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 306736
+
+ // #7210
+ "\377\376\375\374"
+ "Mandriva RPMs"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 306768
+
+ // #7211
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 306784
+
+ // #7212
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306800
+
+ // #7213
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 306816
+
+ // #7214
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306832
+
+ // #7215
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 306848
+
+ // #7216
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306864
+
+ // #7217
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 306880
+
+ // #7218
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306896
+
+ // #7219
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 306912
+
+ // #7220
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306928
+
+ // #7221
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 306944
+
+ // #7222
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306960
+
+ // #7223
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 306976
+
+ // #7224
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 306992
+
+ // #7225
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307008
+
+ // #7226
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307024
+
+ // #7227
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307040
+
+ // #7228
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307056
+
+ // #7229
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307072
+
+ // #7230
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307088
+
+ // #7231
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307104
+
+ // #7232
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307120
+
+ // #7233
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307136
+
+ // #7234
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307152
+
+ // #7235
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307168
+
+ // #7236
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307184
+
+ // #7237
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307200
+
+ // #7238
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307216
+
+ // #7239
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307232
+
+ // #7240
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307248
+
+ // #7241
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307264
+
+ // #7242
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307280
+
+ // #7243
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307296
+
+ // #7244
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307312
+
+ // #7245
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307328
+
+ // #7246
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307344
+
+ // #7247
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307360
+
+ // #7248
+ "7"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 307376
+
+ // #7249
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307392
+
+ // #7250
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307408
+
+ // #7251
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307424
+
+ // #7252
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307440
+
+ // #7253
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307456
+
+ // #7254
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307472
+
+ // #7255
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307488
+
+ // #7256
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307504
+
+ // #7257
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307520
+
+ // #7258
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307536
+
+ // #7259
+ "\211""PNG\15""\12"""
+ "\377\376\375\374\373\372\371\370\367\366" // 307552
+
+ // #7260
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307568
+
+ // #7261
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307584
+
+ // #7262
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307600
+
+ // #7263
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307616
+
+ // #7264
+ "\377\376\375\374"
+ "^\1""\332""\1""[\1""\2""]"
+ "\377\376\375\374" // 307632
+
+ // #7265
+ "\377\376\375\374\373\372\371\370"
+ "\211""PNG\15""\12"""
+ "\377\376" // 307648
+
+ // #7266
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307664
+
+ // #7267
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307680
+
+ // #7268
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307696
+
+ // #7269
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 307712
+
+ // #7270
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307744
+
+ // #7271
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 307760
+
+ // #7272
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 307776
+
+ // #7273
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 307792
+
+ // #7274
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 307808
+
+ // #7275
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307840
+
+ // #7276
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 307856
+
+ // #7277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307888
+
+ // #7278
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 307904
+
+ // #7279
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307936
+
+ // #7280
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 307952
+
+ // #7281
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 307984
+
+ // #7282
+ "\377\376\375\374"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 308000
+
+ // #7283
+ "\377\376\375\374"
+ "<tr><td>"
+ "\377\376\375\374" // 308016
+
+ // #7284
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "</td></tr>"
+ "\377\376\375\374\373\372\371\370\367" // 308064+
+
+ // #7285
+ "\377\376\375\374"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 308080
+
+ // #7286
+ "\377\376\375\374"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 308096
+
+ // #7287
+ "\377\376\375\374"
+ "<tr><td>"
+ "\377\376\375\374" // 308112
+
+ // #7288
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "</td></tr>"
+ "\377\376\375\374\373\372\371\370\367" // 308192+
+
+ // #7289
+ "\377\376\375\374"
+ "&"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 308208
+
+ // #7290
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 308224
+
+ // #7291
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 308240
+
+ // #7292
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "ShowIconsOnPushButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 308336+
+
+ // #7293
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 308400+
+
+ // #7294
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 308480+
+
+ // #7295
+ "true"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 308496
+
+ // #7296
+ "\377\376\375\374\373\372\371\370\367"
+ "bool"
+ "\377\376\375" // 308512
+
+ // #7297
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325"
+ "ShowIconsOnPushButtons"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 308592+
+
+ // #7298
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "\42""%1\42"" - conversion from \42""%3\42"" to %2 failed"
+ "\377\376\375\374\373\372\371\370" // 308656+
+
+ // #7299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ " (wrong format: expected '%1' items, read '%2')"
+ "\377\376\375\374\373" // 308736+
+
+ // #7300
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308752
+
+ // #7301
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308768
+
+ // #7302
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308784
+
+ // #7303
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308800
+
+ // #7304
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 308816
+
+ // #7305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308848
+
+ // #7306
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 308864
+
+ // #7307
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308896
+
+ // #7308
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 308912
+
+ // #7309
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308944
+
+ // #7310
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 308960
+
+ // #7311
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 308992
+
+ // #7312
+ "\377\376\375\374\373\372\371\370\367\366"
+ "(!)&"
+ "\377\376" // 309008
+
+ // #7313
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "(&&)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309040
+
+ // #7314
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309056
+
+ // #7315
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309072
+
+ // #7316
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309088
+
+ // #7317
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309104
+
+ // #7318
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309120
+
+ // #7319
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309136
+
+ // #7320
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309152
+
+ // #7321
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309168
+
+ // #7322
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309184
+
+ // #7323
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309200
+
+ // #7324
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309216
+
+ // #7325
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309232
+
+ // #7326
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309248
+
+ // #7327
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309264
+
+ // #7328
+ "\377\376"
+ "_"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 309280
+
+ // #7329
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Width %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 309312
+
+ // #7330
+ "\377\376\375"
+ "Height %1"
+ "\377\376\375\374" // 309328
+
+ // #7331
+ "\377\376\375\374\373\372\371\370"
+ "qt_default_session_bus"
+ "\377\376" // 309360
+
+};
+static const int intData[] = {
+ 29, 10, 10, 1642, 1642, // #0
+ 3, 49, 49, 433, 433, // #1
+ 2, 69, 69, 437, 437, // #2
+ 1, 85, 85, 3797, 3797, // #3
+ 10, 136, 136, 440, 440, // #4
+ 5, 164, 164, 3716, 3716, // #5
+ 7, 178, 178, 898, 898, // #6
+ 7, 194, 194, 2450, 2450, // #7
+ 16, 216, 216, 2024, 2024, // #8
+ 9, 241, 241, 2225, 2225, // #9
+ 4, 269, 269, 2333, 2333, // #10
+ 9, 289, 289, 2401, 2401, // #11
+ 6, 317, 317, 2477, 2477, // #12
+ 6, 349, 349, 2477, 2477, // #13
+ 6, 381, 381, 2477, 2477, // #14
+ 6, 413, 413, 2477, 2477, // #15
+ 14, 437, 437, 2469, 2469, // #16
+ 4, 466, 466, 306, 306, // #17
+ 10, 485, 485, 3333, 3333, // #18
+ 14, 501, 501, 3349, 3349, // #19
+ 11, 537, 537, 3369, 3369, // #20
+ 12, 588, 588, 3388, 3388, // #21
+ 13, 608, 608, 3408, 3408, // #22
+ 12, 627, 627, 3427, 3427, // #23
+ 12, 646, 646, 3446, 3446, // #24
+ 12, 682, 682, 3466, 3466, // #25
+ 19, 704, 704, 3488, 3488, // #26
+ 23, 737, 737, 3521, 3521, // #27
+ 13, 782, 782, 3550, 3550, // #28
+ 7, 800, 800, 3568, 3568, // #29
+ 16, 818, 818, 3586, 3586, // #30
+ 15, 861, 861, 3613, 3613, // #31
+ 3, 881, 881, 3633, 3633, // #32
+ 9, 908, 908, 3644, 3644, // #33
+ 17, 928, 928, 3664, 3664, // #34
+ 17, 967, 967, 3687, 3687, // #35
+ 15, 995, 995, 3715, 3715, // #36
+ 12, 1024, 1024, 3744, 3744, // #37
+ 5, 1050, 1050, 3770, 3770, // #38
+ 7, 1071, 1071, 3791, 3791, // #39
+ 19, 1092, 1092, 3812, 3812, // #40
+ 4, 1129, 1129, 3545, 3545, // #41
+ 5, 1138, 1138, 3858, 3858, // #42
+ 9, 1162, 1162, 3882, 3882, // #43
+ 12, 1188, 1188, 2484, 2484, // #44
+ 3, 1224, 1224, 1432, 1432, // #45
+ 1, 1235, 1235, 2339, 2339, // #46
+ 17, 1254, 1254, 2502, 2502, // #47
+ 15, 1288, 1288, 2520, 2520, // #48
+ 4, 1324, 1324, 3132, 3132, // #49
+ 10, 1348, 1348, 756, 756, // #50
+ 1, 1370, 1370, 1226, 1226, // #51
+ 1, 1388, 1388, 1228, 1228, // #52
+ 1, 1402, 1402, 1226, 1226, // #53
+ 1, 1420, 1420, 1228, 1228, // #54
+ 16, 1425, 1425, 1441, 1441, // #55
+ 11, 1464, 1464, 24, 24, // #56
+ 1, 1500, 1500, 1228, 1228, // #57
+ 119, 1536, 1536, 3520, 3520, // #58
+ 1, 1676, 1676, 1228, 1228, // #59
+ 1, 1692, 1692, 1228, 1228, // #60
+ 1, 1708, 1708, 1228, 1228, // #61
+ 1, 1724, 1724, 1228, 1228, // #62
+ 1, 1740, 1740, 1228, 1228, // #63
+ 1, 1756, 1756, 1228, 1228, // #64
+ 1, 1772, 1772, 1228, 1228, // #65
+ 11, 1778, 1778, 642, 642, // #66
+ 2, 1796, 1796, 3428, 3428, // #67
+ 3, 1816, 1816, 3000, 3000, // #68
+ 10, 1828, 1828, 756, 756, // #69
+ 1, 1850, 1850, 1226, 1226, // #70
+ 1, 1868, 1868, 1228, 1228, // #71
+ 17, 1885, 1885, 749, 749, // #72
+ 3, 1912, 1912, 3000, 3000, // #73
+ 3, 1928, 1928, 3000, 3000, // #74
+ 11, 1944, 1944, 2536, 2536, // #75
+ 7, 1994, 1994, 2618, 2618, // #76
+ 14, 2051, 2051, 2675, 2675, // #77
+ 8, 2088, 2088, 2376, 2376, // #78
+ 6, 2119, 2119, 2663, 2663, // #79
+ 8, 2136, 2136, 2376, 2376, // #80
+ 6, 2167, 2167, 2663, 2663, // #81
+ 1, 2186, 2186, 1226, 1226, // #82
+ 1, 2204, 2204, 1228, 1228, // #83
+ 10, 2212, 2212, 756, 756, // #84
+ 17, 2237, 2237, 749, 749, // #85
+ 3, 2264, 2264, 3000, 3000, // #86
+ 3, 2280, 2280, 3000, 3000, // #87
+ 3, 2296, 2296, 3000, 3000, // #88
+ 3, 2312, 2312, 3000, 3000, // #89
+ 12, 2332, 2332, 540, 540, // #90
+ 1, 2364, 2364, 1228, 1228, // #91
+ 10, 2368, 2368, 1488, 1488, // #92
+ 6, 2395, 2395, 2027, 2027, // #93
+ 8, 2419, 2419, 2035, 2035, // #94
+ 2, 2440, 2440, 1384, 1384, // #95
+ 6, 2459, 2459, 2219, 2219, // #96
+ 3, 2484, 2484, 3620, 3620, // #97
+ 6, 2504, 2504, 3624, 3624, // #98
+ 9, 2527, 2527, 2335, 2335, // #99
+ 3, 2548, 2548, 3620, 3620, // #100
+ 6, 2568, 2568, 3624, 3624, // #101
+ 26, 2627, 2627, 3635, 3635, // #102
+ 9, 2671, 2671, 2335, 2335, // #103
+ 3, 2692, 2692, 3620, 3620, // #104
+ 3, 2719, 2719, 3631, 3631, // #105
+ 9, 2751, 2751, 2335, 2335, // #106
+ 9, 2783, 2783, 2335, 2335, // #107
+ 9, 2815, 2815, 2335, 2335, // #108
+ 7, 2843, 2843, 2411, 2411, // #109
+ 3, 2868, 2868, 3620, 3620, // #110
+ 6, 2888, 2888, 3624, 3624, // #111
+ 8, 2908, 2908, 2444, 2444, // #112
+ 3, 2932, 2932, 3620, 3620, // #113
+ 6, 2952, 2952, 3624, 3624, // #114
+ 5, 2975, 2975, 2527, 2527, // #115
+ 3, 2996, 2996, 3620, 3620, // #116
+ 6, 3016, 3016, 3624, 3624, // #117
+ 26, 3075, 3075, 3635, 3635, // #118
+ 5, 3119, 3119, 2527, 2527, // #119
+ 3, 3140, 3140, 3620, 3620, // #120
+ 3, 3167, 3167, 3631, 3631, // #121
+ 5, 3199, 3199, 2527, 2527, // #122
+ 5, 3231, 3231, 2527, 2527, // #123
+ 5, 3263, 3263, 2527, 2527, // #124
+ 5, 3295, 3295, 2527, 2527, // #125
+ 9, 3314, 3314, 1026, 1026, // #126
+ 5, 3337, 3337, 1433, 1433, // #127
+ 25, 3399, 3399, 631, 631, // #128
+ 2, 3452, 3452, 1036, 1036, // #129
+ 14, 3471, 3471, 1039, 1039, // #130
+ 16, 3502, 3502, 1054, 1054, // #131
+ 16, 3535, 3535, 1071, 1071, // #132
+ 9, 3559, 3559, 151, 151, // #133
+ 1, 3596, 3596, 1228, 1228, // #134
+ 5, 3661, 3661, 2301, 2301, // #135
+ 5, 3683, 3683, 2307, 2307, // #136
+ 6, 3705, 3705, 2313, 2313, // #137
+ 4, 3727, 3727, 1439, 1439, // #138
+ 4, 3747, 3747, 1123, 1123, // #139
+ 1, 3768, 3768, 1128, 1128, // #140
+ 4, 3779, 3779, 1123, 1123, // #141
+ 17, 3802, 3802, 1130, 1130, // #142
+ 5, 3852, 3852, 1148, 1148, // #143
+ 19, 3874, 3874, 1154, 1154, // #144
+ 15, 3910, 3910, 1174, 1174, // #145
+ 16, 3942, 3942, 1190, 1190, // #146
+ 7, 3975, 3975, 1207, 1207, // #147
+ 9, 4047, 4047, 1215, 1215, // #148
+ 4, 4076, 4076, 1244, 1244, // #149
+ 12, 4097, 4097, 1249, 1249, // #150
+ 17, 4126, 4126, 1262, 1262, // #151
+ 18, 4144, 4144, 1280, 1280, // #152
+ 10, 4179, 4179, 1299, 1299, // #153
+ 7, 4206, 4206, 1310, 1310, // #154
+ 11, 4230, 4230, 1318, 1318, // #155
+ 8, 4258, 4258, 1330, 1330, // #156
+ 12, 4299, 4299, 1339, 1339, // #157
+ 14, 4328, 4328, 1352, 1352, // #158
+ 11, 4359, 4359, 1367, 1367, // #159
+ 14, 4387, 4387, 1379, 1379, // #160
+ 16, 4421, 4421, 1413, 1413, // #161
+ 11, 4454, 4454, 1430, 1430, // #162
+ 13, 4482, 4482, 1442, 1442, // #163
+ 3, 4497, 4497, 3697, 3697, // #164
+ 13, 4515, 4515, 3683, 3683, // #165
+ 9, 4544, 4544, 832, 832, // #166
+ 5, 4569, 4569, 1433, 1433, // #167
+ 1, 4586, 4586, 842, 842, // #168
+ 1, 4604, 4604, 1228, 1228, // #169
+ 1, 4620, 4620, 1228, 1228, // #170
+ 1, 4630, 4630, 2390, 2390, // #171
+ 8, 4641, 4641, 577, 577, // #172
+ 5, 4659, 4659, 1747, 1747, // #173
+ 27, 4674, 4674, 2018, 2018, // #174
+ 46, 4744, 4744, 2856, 2856, // #175
+ 29, 4814, 4814, 910, 910, // #176
+ 33, 4848, 4848, 1984, 1984, // #177
+ 1, 4906, 4906, 842, 842, // #178
+ 1, 4924, 4924, 1228, 1228, // #179
+ 1, 4940, 4940, 1228, 1228, // #180
+ 1, 4950, 4950, 2390, 2390, // #181
+ 8, 4961, 4961, 577, 577, // #182
+ 5, 4979, 4979, 1747, 1747, // #183
+ 27, 4994, 4994, 2018, 2018, // #184
+ 46, 5064, 5064, 2856, 2856, // #185
+ 29, 5134, 5134, 910, 910, // #186
+ 1, 5178, 5178, 842, 842, // #187
+ 1, 5196, 5196, 1228, 1228, // #188
+ 1, 5210, 5210, 842, 842, // #189
+ 1, 5228, 5228, 1228, 1228, // #190
+ 1, 5242, 5242, 842, 842, // #191
+ 1, 5260, 5260, 1228, 1228, // #192
+ 3, 5275, 5275, 1499, 1499, // #193
+ 18, 5295, 5295, 1503, 1503, // #194
+ 77, 5384, 5384, 1048, 1048, // #195
+ 7, 5476, 5476, 3076, 3076, // #196
+ 9, 5488, 5488, 832, 832, // #197
+ 5, 5513, 5513, 1433, 1433, // #198
+ 25, 5575, 5575, 631, 631, // #199
+ 1, 5626, 5626, 842, 842, // #200
+ 1, 5644, 5644, 1228, 1228, // #201
+ 1, 5658, 5658, 842, 842, // #202
+ 1, 5676, 5676, 1228, 1228, // #203
+ 1, 5692, 5692, 1228, 1228, // #204
+ 1, 5702, 5702, 2390, 2390, // #205
+ 8, 5713, 5713, 577, 577, // #206
+ 5, 5731, 5731, 1747, 1747, // #207
+ 27, 5746, 5746, 2018, 2018, // #208
+ 39, 5824, 5824, 4000, 4000, // #209
+ 29, 5886, 5886, 910, 910, // #210
+ 1, 5930, 5930, 842, 842, // #211
+ 1, 5948, 5948, 1228, 1228, // #212
+ 1, 5964, 5964, 1228, 1228, // #213
+ 1, 5974, 5974, 2390, 2390, // #214
+ 8, 5985, 5985, 577, 577, // #215
+ 5, 6003, 6003, 1747, 1747, // #216
+ 27, 6018, 6018, 2018, 2018, // #217
+ 39, 6080, 6080, 4000, 4000, // #218
+ 29, 6142, 6142, 910, 910, // #219
+ 8, 6177, 6177, 577, 577, // #220
+ 5, 6195, 6195, 1747, 1747, // #221
+ 27, 6210, 6210, 2018, 2018, // #222
+ 39, 6272, 6272, 4000, 4000, // #223
+ 29, 6334, 6334, 910, 910, // #224
+ 1, 6378, 6378, 842, 842, // #225
+ 1, 6396, 6396, 1228, 1228, // #226
+ 1, 6412, 6412, 1228, 1228, // #227
+ 1, 6422, 6422, 2390, 2390, // #228
+ 8, 6433, 6433, 577, 577, // #229
+ 5, 6451, 6451, 1747, 1747, // #230
+ 27, 6466, 6466, 2018, 2018, // #231
+ 39, 6528, 6528, 4000, 4000, // #232
+ 29, 6590, 6590, 910, 910, // #233
+ 8, 6625, 6625, 577, 577, // #234
+ 5, 6643, 6643, 1747, 1747, // #235
+ 27, 6658, 6658, 2018, 2018, // #236
+ 39, 6720, 6720, 4000, 4000, // #237
+ 29, 6782, 6782, 910, 910, // #238
+ 1, 6826, 6826, 842, 842, // #239
+ 1, 6844, 6844, 1228, 1228, // #240
+ 4, 6861, 6861, 3053, 3053, // #241
+ 16, 6914, 6914, 3058, 3058, // #242
+ 14, 6947, 6947, 3075, 3075, // #243
+ 10, 6978, 6978, 3090, 3090, // #244
+ 10, 6992, 6992, 3104, 3104, // #245
+ 13, 7021, 7021, 3101, 3101, // #246
+ 18, 7051, 7051, 3115, 3115, // #247
+ 15, 7118, 7118, 3134, 3134, // #248
+ 10, 7150, 7150, 3150, 3150, // #249
+ 14, 7177, 7177, 3161, 3161, // #250
+ 16, 7208, 7208, 3176, 3176, // #251
+ 4, 7245, 7245, 3053, 3053, // #252
+ 16, 7298, 7298, 3058, 3058, // #253
+ 14, 7331, 7331, 3075, 3075, // #254
+ 10, 7362, 7362, 3090, 3090, // #255
+ 10, 7376, 7376, 3104, 3104, // #256
+ 13, 7405, 7405, 3101, 3101, // #257
+ 18, 7435, 7435, 3115, 3115, // #258
+ 15, 7502, 7502, 3134, 3134, // #259
+ 10, 7534, 7534, 3150, 3150, // #260
+ 14, 7561, 7561, 3161, 3161, // #261
+ 16, 7592, 7592, 3176, 3176, // #262
+ 7, 7618, 7618, 898, 898, // #263
+ 7, 7634, 7634, 2450, 2450, // #264
+ 9, 7649, 7649, 2225, 2225, // #265
+ 4, 7677, 7677, 2333, 2333, // #266
+ 9, 7697, 7697, 2401, 2401, // #267
+ 6, 7725, 7725, 2477, 2477, // #268
+ 6, 7757, 7757, 2477, 2477, // #269
+ 6, 7789, 7789, 2477, 2477, // #270
+ 6, 7821, 7821, 2477, 2477, // #271
+ 14, 7845, 7845, 2469, 2469, // #272
+ 4, 7874, 7874, 306, 306, // #273
+ 10, 7893, 7893, 3333, 3333, // #274
+ 14, 7909, 7909, 3349, 3349, // #275
+ 11, 7945, 7945, 3369, 3369, // #276
+ 12, 8012, 8012, 3388, 3388, // #277
+ 13, 8032, 8032, 3408, 3408, // #278
+ 12, 8051, 8051, 3427, 3427, // #279
+ 12, 8070, 8070, 3446, 3446, // #280
+ 12, 8106, 8106, 3466, 3466, // #281
+ 19, 8128, 8128, 3488, 3488, // #282
+ 23, 8161, 8161, 3521, 3521, // #283
+ 13, 8206, 8206, 3550, 3550, // #284
+ 7, 8224, 8224, 3568, 3568, // #285
+ 16, 8242, 8242, 3586, 3586, // #286
+ 15, 8285, 8285, 3613, 3613, // #287
+ 3, 8305, 8305, 3633, 3633, // #288
+ 9, 8332, 8332, 3644, 3644, // #289
+ 17, 8352, 8352, 3664, 3664, // #290
+ 17, 8391, 8391, 3687, 3687, // #291
+ 15, 8419, 8419, 3715, 3715, // #292
+ 12, 8448, 8448, 3744, 3744, // #293
+ 5, 8474, 8474, 3770, 3770, // #294
+ 7, 8495, 8495, 3791, 3791, // #295
+ 19, 8516, 8516, 3812, 3812, // #296
+ 4, 8553, 8553, 3545, 3545, // #297
+ 5, 8562, 8562, 3858, 3858, // #298
+ 9, 8586, 8586, 3882, 3882, // #299
+ 12, 8612, 8612, 2484, 2484, // #300
+ 3, 8648, 8648, 1432, 1432, // #301
+ 1, 8659, 8659, 2339, 2339, // #302
+ 17, 8678, 8678, 2502, 2502, // #303
+ 15, 8712, 8712, 2520, 2520, // #304
+ 4, 8748, 8748, 3132, 3132, // #305
+ 10, 8772, 8772, 756, 756, // #306
+ 11, 8786, 8786, 642, 642, // #307
+ 2, 8804, 8804, 3428, 3428, // #308
+ 3, 8824, 8824, 3000, 3000, // #309
+ 10, 8836, 8836, 756, 756, // #310
+ 1, 8858, 8858, 1226, 1226, // #311
+ 1, 8876, 8876, 1228, 1228, // #312
+ 17, 8893, 8893, 749, 749, // #313
+ 3, 8920, 8920, 3000, 3000, // #314
+ 3, 8936, 8936, 3000, 3000, // #315
+ 11, 8952, 8952, 2536, 2536, // #316
+ 7, 9034, 9034, 2618, 2618, // #317
+ 14, 9091, 9091, 2675, 2675, // #318
+ 8, 9128, 9128, 2376, 2376, // #319
+ 6, 9159, 9159, 2663, 2663, // #320
+ 8, 9176, 9176, 2376, 2376, // #321
+ 6, 9207, 9207, 2663, 2663, // #322
+ 1, 9226, 9226, 1226, 1226, // #323
+ 1, 9244, 9244, 1228, 1228, // #324
+ 10, 9252, 9252, 756, 756, // #325
+ 17, 9277, 9277, 749, 749, // #326
+ 3, 9304, 9304, 3000, 3000, // #327
+ 3, 9320, 9320, 3000, 3000, // #328
+ 3, 9336, 9336, 3000, 3000, // #329
+ 3, 9352, 9352, 3000, 3000, // #330
+ 1, 9368, 9368, 632, 632, // #331
+ 3, 9390, 9390, 2734, 2734, // #332
+ 8, 9408, 9408, 320, 320, // #333
+ 40, 9472, 9472, 3376, 3376, // #334
+ 47, 9548, 9548, 3420, 3420, // #335
+ 8, 9612, 9612, 2796, 2796, // #336
+ 10, 9636, 9636, 756, 756, // #337
+ 11, 9650, 9650, 642, 642, // #338
+ 3, 9672, 9672, 3000, 3000, // #339
+ 3, 9688, 9688, 3000, 3000, // #340
+ 3, 9704, 9704, 3000, 3000, // #341
+ 3, 9720, 9720, 3000, 3000, // #342
+ 5, 9728, 9728, 1520, 1520, // #343
+ 4, 9753, 9753, 2729, 2729, // #344
+ 10, 9765, 9765, 2805, 2805, // #345
+ 40, 9792, 9792, 3376, 3376, // #346
+ 47, 9868, 9868, 3420, 3420, // #347
+ 10, 9920, 9920, 2816, 2816, // #348
+ 5, 9999, 9999, 2751, 2751, // #349
+ 5, 10026, 10026, 2762, 2762, // #350
+ 9, 10032, 10032, 2736, 2736, // #351
+ 10, 10058, 10058, 2746, 2746, // #352
+ 10, 10085, 10085, 2757, 2757, // #353
+ 9, 10100, 10100, 2644, 2644, // #354
+ 16, 10112, 10112, 2608, 2608, // #355
+ 18, 10145, 10145, 2625, 2625, // #356
+ 7, 10176, 10176, 2768, 2768, // #357
+ 8, 10200, 10200, 2776, 2776, // #358
+ 14, 10227, 10227, 3491, 3491, // #359
+ 3, 10258, 10258, 3506, 3506, // #360
+ 22, 10280, 10280, 3400, 3400, // #361
+ 6, 10308, 10308, 3636, 3636, // #362
+ 3, 10324, 10324, 3620, 3620, // #363
+ 6, 10344, 10344, 3624, 3624, // #364
+ 20, 10361, 10361, 665, 665, // #365
+ 33, 10444, 10444, 3068, 3068, // #366
+ 29, 10481, 10481, 3137, 3137, // #367
+ 21, 10521, 10521, 3545, 3545, // #368
+ 20, 10575, 10575, 3567, 3567, // #369
+ 20, 10639, 10639, 3567, 3567, // #370
+ 16, 10674, 10674, 1218, 1218, // #371
+ 20, 10707, 10707, 1235, 1235, // #372
+ 20, 10739, 10739, 1235, 1235, // #373
+ 14, 10769, 10769, 1569, 1569, // #374
+ 8, 10784, 10784, 1584, 1584, // #375
+ 6, 10809, 10809, 1593, 1593, // #376
+ 9, 10821, 10821, 1605, 1605, // #377
+ 6, 10847, 10847, 1615, 1615, // #378
+ 11, 10870, 10870, 1622, 1622, // #379
+ 20, 10950, 10950, 3510, 3510, // #380
+ 20, 10987, 10987, 3531, 3531, // #381
+ 12, 11008, 11008, 3552, 3552, // #382
+ 14, 11025, 11025, 1569, 1569, // #383
+ 8, 11040, 11040, 1584, 1584, // #384
+ 4, 11056, 11056, 1600, 1600, // #385
+ 9, 11077, 11077, 1605, 1605, // #386
+ 6, 11103, 11103, 1615, 1615, // #387
+ 12, 11133, 11133, 3565, 3565, // #388
+ 23, 11210, 11210, 3578, 3578, // #389
+ 16, 11250, 11250, 3602, 3602, // #390
+ 14, 11281, 11281, 1569, 1569, // #391
+ 8, 11296, 11296, 1584, 1584, // #392
+ 4, 11312, 11312, 1600, 1600, // #393
+ 9, 11333, 11333, 1605, 1605, // #394
+ 6, 11359, 11359, 1615, 1615, // #395
+ 10, 11380, 11380, 756, 756, // #396
+ 17, 11405, 11405, 749, 749, // #397
+ 3, 11432, 11432, 3000, 3000, // #398
+ 3, 11448, 11448, 3000, 3000, // #399
+ 3, 11464, 11464, 3000, 3000, // #400
+ 3, 11480, 11480, 3000, 3000, // #401
+ 1, 11488, 11488, 1856, 1856, // #402
+ 3, 11518, 11518, 2734, 2734, // #403
+ 8, 11536, 11536, 320, 320, // #404
+ 40, 11584, 11584, 3376, 3376, // #405
+ 47, 11660, 11660, 3420, 3420, // #406
+ 1, 11712, 11712, 1856, 1856, // #407
+ 3, 11742, 11742, 2734, 2734, // #408
+ 8, 11760, 11760, 320, 320, // #409
+ 40, 11776, 11776, 3376, 3376, // #410
+ 47, 11852, 11852, 3420, 3420, // #411
+ 11, 11904, 11904, 528, 528, // #412
+ 6, 11927, 11927, 2999, 2999, // #413
+ 16, 11983, 11983, 1023, 1023, // #414
+ 40, 12032, 12032, 3376, 3376, // #415
+ 47, 12108, 12108, 3420, 3420, // #416
+ 11, 12168, 12168, 3640, 3640, // #417
+ 6, 12199, 12199, 2999, 2999, // #418
+ 19, 12208, 12208, 1040, 1040, // #419
+ 40, 12288, 12288, 3376, 3376, // #420
+ 47, 12364, 12364, 3420, 3420, // #421
+ 8, 12416, 12416, 144, 144, // #422
+ 6, 12439, 12439, 2999, 2999, // #423
+ 16, 12449, 12449, 849, 849, // #424
+ 40, 12480, 12480, 3376, 3376, // #425
+ 47, 12556, 12556, 3420, 3420, // #426
+ 11, 12616, 12616, 1176, 1176, // #427
+ 6, 12647, 12647, 2999, 2999, // #428
+ 18, 12658, 12658, 866, 866, // #429
+ 40, 12736, 12736, 3376, 3376, // #430
+ 47, 12812, 12812, 3420, 3420, // #431
+ 11, 12864, 12864, 64, 64, // #432
+ 6, 12887, 12887, 2999, 2999, // #433
+ 16, 12933, 12933, 885, 885, // #434
+ 40, 12992, 12992, 3376, 3376, // #435
+ 47, 13068, 13068, 3420, 3420, // #436
+ 8, 13128, 13128, 104, 104, // #437
+ 6, 13159, 13159, 2999, 2999, // #438
+ 14, 13174, 13174, 902, 902, // #439
+ 40, 13248, 13248, 3376, 3376, // #440
+ 47, 13324, 13324, 3420, 3420, // #441
+ 9, 13384, 13384, 184, 184, // #442
+ 6, 13415, 13415, 2999, 2999, // #443
+ 17, 13429, 13429, 917, 917, // #444
+ 40, 13504, 13504, 3376, 3376, // #445
+ 47, 13580, 13580, 3420, 3420, // #446
+ 7, 13640, 13640, 1496, 1496, // #447
+ 6, 13655, 13655, 2999, 2999, // #448
+ 18, 13671, 13671, 935, 935, // #449
+ 40, 13696, 13696, 3376, 3376, // #450
+ 47, 13772, 13772, 3420, 3420, // #451
+ 9, 13832, 13832, 1656, 1656, // #452
+ 6, 13863, 13863, 2999, 2999, // #453
+ 17, 13898, 13898, 954, 954, // #454
+ 40, 13952, 13952, 3376, 3376, // #455
+ 47, 14028, 14028, 3420, 3420, // #456
+ 8, 14088, 14088, 3832, 3832, // #457
+ 6, 14119, 14119, 2999, 2999, // #458
+ 18, 14140, 14140, 972, 972, // #459
+ 40, 14208, 14208, 3376, 3376, // #460
+ 47, 14284, 14284, 3420, 3420, // #461
+ 11, 14344, 14344, 24, 24, // #462
+ 6, 14375, 14375, 2999, 2999, // #463
+ 15, 14399, 14399, 991, 991, // #464
+ 40, 14464, 14464, 3376, 3376, // #465
+ 47, 14540, 14540, 3420, 3420, // #466
+ 10, 14592, 14592, 4080, 4080, // #467
+ 6, 14615, 14615, 2999, 2999, // #468
+ 15, 14639, 14639, 1007, 1007, // #469
+ 40, 14656, 14656, 3376, 3376, // #470
+ 47, 14732, 14732, 3420, 3420, // #471
+ 1, 14784, 14784, 1856, 1856, // #472
+ 3, 14814, 14814, 2734, 2734, // #473
+ 8, 14832, 14832, 320, 320, // #474
+ 40, 14848, 14848, 3376, 3376, // #475
+ 47, 14924, 14924, 3420, 3420, // #476
+ 11, 14976, 14976, 528, 528, // #477
+ 6, 14999, 14999, 2999, 2999, // #478
+ 16, 15055, 15055, 1023, 1023, // #479
+ 40, 15104, 15104, 3376, 3376, // #480
+ 47, 15180, 15180, 3420, 3420, // #481
+ 11, 15240, 15240, 3640, 3640, // #482
+ 6, 15271, 15271, 2999, 2999, // #483
+ 19, 15280, 15280, 1040, 1040, // #484
+ 40, 15360, 15360, 3376, 3376, // #485
+ 47, 15436, 15436, 3420, 3420, // #486
+ 8, 15488, 15488, 144, 144, // #487
+ 6, 15511, 15511, 2999, 2999, // #488
+ 16, 15521, 15521, 849, 849, // #489
+ 40, 15552, 15552, 3376, 3376, // #490
+ 47, 15628, 15628, 3420, 3420, // #491
+ 11, 15688, 15688, 1176, 1176, // #492
+ 6, 15719, 15719, 2999, 2999, // #493
+ 18, 15730, 15730, 866, 866, // #494
+ 40, 15808, 15808, 3376, 3376, // #495
+ 47, 15884, 15884, 3420, 3420, // #496
+ 11, 15936, 15936, 64, 64, // #497
+ 6, 15959, 15959, 2999, 2999, // #498
+ 16, 16005, 16005, 885, 885, // #499
+ 40, 16064, 16064, 3376, 3376, // #500
+ 47, 16140, 16140, 3420, 3420, // #501
+ 8, 16200, 16200, 104, 104, // #502
+ 6, 16231, 16231, 2999, 2999, // #503
+ 14, 16246, 16246, 902, 902, // #504
+ 40, 16320, 16320, 3376, 3376, // #505
+ 47, 16396, 16396, 3420, 3420, // #506
+ 9, 16456, 16456, 184, 184, // #507
+ 6, 16487, 16487, 2999, 2999, // #508
+ 17, 16501, 16501, 917, 917, // #509
+ 40, 16576, 16576, 3376, 3376, // #510
+ 47, 16652, 16652, 3420, 3420, // #511
+ 7, 16712, 16712, 1496, 1496, // #512
+ 6, 16727, 16727, 2999, 2999, // #513
+ 18, 16743, 16743, 935, 935, // #514
+ 40, 16768, 16768, 3376, 3376, // #515
+ 47, 16844, 16844, 3420, 3420, // #516
+ 9, 16904, 16904, 1656, 1656, // #517
+ 6, 16935, 16935, 2999, 2999, // #518
+ 17, 16970, 16970, 954, 954, // #519
+ 40, 17024, 17024, 3376, 3376, // #520
+ 47, 17100, 17100, 3420, 3420, // #521
+ 8, 17160, 17160, 3832, 3832, // #522
+ 6, 17191, 17191, 2999, 2999, // #523
+ 18, 17212, 17212, 972, 972, // #524
+ 40, 17280, 17280, 3376, 3376, // #525
+ 47, 17356, 17356, 3420, 3420, // #526
+ 11, 17416, 17416, 24, 24, // #527
+ 6, 17447, 17447, 2999, 2999, // #528
+ 15, 17471, 17471, 991, 991, // #529
+ 40, 17536, 17536, 3376, 3376, // #530
+ 47, 17612, 17612, 3420, 3420, // #531
+ 10, 17664, 17664, 4080, 4080, // #532
+ 6, 17687, 17687, 2999, 2999, // #533
+ 15, 17711, 17711, 1007, 1007, // #534
+ 40, 17728, 17728, 3376, 3376, // #535
+ 47, 17804, 17804, 3420, 3420, // #536
+ 21, 17864, 17864, 712, 712, // #537
+ 1, 17888, 17888, 976, 976, // #538
+ 3, 17918, 17918, 2734, 2734, // #539
+ 15, 17995, 17995, 763, 763, // #540
+ 40, 18048, 18048, 3376, 3376, // #541
+ 47, 18124, 18124, 3420, 3420, // #542
+ 1, 18184, 18184, 3192, 3192, // #543
+ 3, 18206, 18206, 2734, 2734, // #544
+ 11, 18235, 18235, 779, 779, // #545
+ 40, 18304, 18304, 3376, 3376, // #546
+ 47, 18380, 18380, 3420, 3420, // #547
+ 1, 18440, 18440, 3496, 3496, // #548
+ 3, 18462, 18462, 2734, 2734, // #549
+ 14, 18487, 18487, 791, 791, // #550
+ 40, 18560, 18560, 3376, 3376, // #551
+ 47, 18636, 18636, 3420, 3420, // #552
+ 3, 18696, 18696, 824, 824, // #553
+ 6, 18716, 18716, 2764, 2764, // #554
+ 15, 18742, 18742, 806, 806, // #555
+ 40, 18816, 18816, 3376, 3376, // #556
+ 47, 18892, 18892, 3420, 3420, // #557
+ 1, 18944, 18944, 3040, 3040, // #558
+ 6, 18972, 18972, 2764, 2764, // #559
+ 11, 19014, 19014, 822, 822, // #560
+ 40, 19072, 19072, 3376, 3376, // #561
+ 47, 19148, 19148, 3420, 3420, // #562
+ 4, 19200, 19200, 3344, 3344, // #563
+ 6, 19228, 19228, 2764, 2764, // #564
+ 14, 19250, 19250, 834, 834, // #565
+ 40, 19328, 19328, 3376, 3376, // #566
+ 47, 19404, 19404, 3420, 3420, // #567
+ 1, 19456, 19456, 1856, 1856, // #568
+ 3, 19486, 19486, 2734, 2734, // #569
+ 8, 19504, 19504, 320, 320, // #570
+ 40, 19520, 19520, 3376, 3376, // #571
+ 47, 19596, 19596, 3420, 3420, // #572
+ 11, 19648, 19648, 528, 528, // #573
+ 6, 19671, 19671, 2999, 2999, // #574
+ 16, 19727, 19727, 1023, 1023, // #575
+ 40, 19776, 19776, 3376, 3376, // #576
+ 47, 19852, 19852, 3420, 3420, // #577
+ 11, 19912, 19912, 3640, 3640, // #578
+ 6, 19943, 19943, 2999, 2999, // #579
+ 19, 19952, 19952, 1040, 1040, // #580
+ 40, 20032, 20032, 3376, 3376, // #581
+ 47, 20108, 20108, 3420, 3420, // #582
+ 8, 20160, 20160, 144, 144, // #583
+ 6, 20183, 20183, 2999, 2999, // #584
+ 16, 20193, 20193, 849, 849, // #585
+ 40, 20224, 20224, 3376, 3376, // #586
+ 47, 20300, 20300, 3420, 3420, // #587
+ 11, 20360, 20360, 1176, 1176, // #588
+ 6, 20391, 20391, 2999, 2999, // #589
+ 18, 20402, 20402, 866, 866, // #590
+ 40, 20480, 20480, 3376, 3376, // #591
+ 47, 20556, 20556, 3420, 3420, // #592
+ 11, 20608, 20608, 64, 64, // #593
+ 6, 20631, 20631, 2999, 2999, // #594
+ 16, 20677, 20677, 885, 885, // #595
+ 40, 20736, 20736, 3376, 3376, // #596
+ 47, 20812, 20812, 3420, 3420, // #597
+ 8, 20872, 20872, 104, 104, // #598
+ 6, 20903, 20903, 2999, 2999, // #599
+ 14, 20918, 20918, 902, 902, // #600
+ 40, 20992, 20992, 3376, 3376, // #601
+ 47, 21068, 21068, 3420, 3420, // #602
+ 9, 21128, 21128, 184, 184, // #603
+ 6, 21159, 21159, 2999, 2999, // #604
+ 17, 21173, 21173, 917, 917, // #605
+ 40, 21248, 21248, 3376, 3376, // #606
+ 47, 21324, 21324, 3420, 3420, // #607
+ 7, 21384, 21384, 1496, 1496, // #608
+ 6, 21399, 21399, 2999, 2999, // #609
+ 18, 21415, 21415, 935, 935, // #610
+ 40, 21440, 21440, 3376, 3376, // #611
+ 47, 21516, 21516, 3420, 3420, // #612
+ 9, 21576, 21576, 1656, 1656, // #613
+ 6, 21607, 21607, 2999, 2999, // #614
+ 17, 21642, 21642, 954, 954, // #615
+ 40, 21696, 21696, 3376, 3376, // #616
+ 47, 21772, 21772, 3420, 3420, // #617
+ 8, 21832, 21832, 3832, 3832, // #618
+ 6, 21863, 21863, 2999, 2999, // #619
+ 18, 21884, 21884, 972, 972, // #620
+ 40, 21952, 21952, 3376, 3376, // #621
+ 47, 22028, 22028, 3420, 3420, // #622
+ 11, 22088, 22088, 24, 24, // #623
+ 6, 22119, 22119, 2999, 2999, // #624
+ 15, 22143, 22143, 991, 991, // #625
+ 40, 22208, 22208, 3376, 3376, // #626
+ 47, 22284, 22284, 3420, 3420, // #627
+ 10, 22336, 22336, 4080, 4080, // #628
+ 6, 22359, 22359, 2999, 2999, // #629
+ 15, 22383, 22383, 1007, 1007, // #630
+ 40, 22400, 22400, 3376, 3376, // #631
+ 47, 22476, 22476, 3420, 3420, // #632
+ 21, 22542, 22542, 734, 734, // #633
+ 4, 22584, 22584, 648, 648, // #634
+ 4, 22601, 22601, 2729, 2729, // #635
+ 6, 22612, 22612, 756, 756, // #636
+ 40, 22656, 22656, 3376, 3376, // #637
+ 47, 22732, 22732, 3420, 3420, // #638
+ 1, 22792, 22792, 472, 472, // #639
+ 3, 22814, 22814, 2734, 2734, // #640
+ 15, 22859, 22859, 763, 763, // #641
+ 40, 22912, 22912, 3376, 3376, // #642
+ 47, 22988, 22988, 3420, 3420, // #643
+ 1, 23040, 23040, 192, 192, // #644
+ 3, 23070, 23070, 2734, 2734, // #645
+ 11, 23099, 23099, 779, 779, // #646
+ 40, 23168, 23168, 3376, 3376, // #647
+ 47, 23244, 23244, 3420, 3420, // #648
+ 1, 23296, 23296, 496, 496, // #649
+ 3, 23326, 23326, 2734, 2734, // #650
+ 14, 23351, 23351, 791, 791, // #651
+ 40, 23424, 23424, 3376, 3376, // #652
+ 47, 23500, 23500, 3420, 3420, // #653
+ 1, 23552, 23552, 320, 320, // #654
+ 6, 23580, 23580, 2764, 2764, // #655
+ 15, 23606, 23606, 806, 806, // #656
+ 40, 23680, 23680, 3376, 3376, // #657
+ 47, 23756, 23756, 3420, 3420, // #658
+ 5, 23816, 23816, 40, 40, // #659
+ 6, 23836, 23836, 2764, 2764, // #660
+ 11, 23878, 23878, 822, 822, // #661
+ 40, 23936, 23936, 3376, 3376, // #662
+ 47, 24012, 24012, 3420, 3420, // #663
+ 3, 24072, 24072, 344, 344, // #664
+ 6, 24092, 24092, 2764, 2764, // #665
+ 14, 24114, 24114, 834, 834, // #666
+ 40, 24192, 24192, 3376, 3376, // #667
+ 47, 24268, 24268, 3420, 3420, // #668
+ 11, 24328, 24328, 1384, 1384, // #669
+ 6, 24359, 24359, 2999, 2999, // #670
+ 5, 24383, 24383, 2735, 2735, // #671
+ 40, 24448, 24448, 3376, 3376, // #672
+ 47, 24524, 24524, 3420, 3420, // #673
+ 1, 24576, 24576, 1856, 1856, // #674
+ 3, 24606, 24606, 2734, 2734, // #675
+ 8, 24624, 24624, 320, 320, // #676
+ 40, 24640, 24640, 3376, 3376, // #677
+ 47, 24716, 24716, 3420, 3420, // #678
+ 11, 24768, 24768, 528, 528, // #679
+ 6, 24791, 24791, 2999, 2999, // #680
+ 16, 24847, 24847, 1023, 1023, // #681
+ 40, 24896, 24896, 3376, 3376, // #682
+ 47, 24972, 24972, 3420, 3420, // #683
+ 11, 25032, 25032, 3640, 3640, // #684
+ 6, 25063, 25063, 2999, 2999, // #685
+ 19, 25072, 25072, 1040, 1040, // #686
+ 40, 25152, 25152, 3376, 3376, // #687
+ 47, 25228, 25228, 3420, 3420, // #688
+ 8, 25280, 25280, 144, 144, // #689
+ 6, 25303, 25303, 2999, 2999, // #690
+ 16, 25313, 25313, 849, 849, // #691
+ 40, 25344, 25344, 3376, 3376, // #692
+ 47, 25420, 25420, 3420, 3420, // #693
+ 11, 25480, 25480, 1176, 1176, // #694
+ 6, 25511, 25511, 2999, 2999, // #695
+ 18, 25522, 25522, 866, 866, // #696
+ 40, 25600, 25600, 3376, 3376, // #697
+ 47, 25676, 25676, 3420, 3420, // #698
+ 11, 25728, 25728, 64, 64, // #699
+ 6, 25751, 25751, 2999, 2999, // #700
+ 16, 25797, 25797, 885, 885, // #701
+ 40, 25856, 25856, 3376, 3376, // #702
+ 47, 25932, 25932, 3420, 3420, // #703
+ 8, 25992, 25992, 104, 104, // #704
+ 6, 26023, 26023, 2999, 2999, // #705
+ 14, 26038, 26038, 902, 902, // #706
+ 40, 26112, 26112, 3376, 3376, // #707
+ 47, 26188, 26188, 3420, 3420, // #708
+ 9, 26248, 26248, 184, 184, // #709
+ 6, 26279, 26279, 2999, 2999, // #710
+ 17, 26293, 26293, 917, 917, // #711
+ 40, 26368, 26368, 3376, 3376, // #712
+ 47, 26444, 26444, 3420, 3420, // #713
+ 7, 26504, 26504, 1496, 1496, // #714
+ 6, 26519, 26519, 2999, 2999, // #715
+ 18, 26535, 26535, 935, 935, // #716
+ 40, 26560, 26560, 3376, 3376, // #717
+ 47, 26636, 26636, 3420, 3420, // #718
+ 9, 26696, 26696, 1656, 1656, // #719
+ 6, 26727, 26727, 2999, 2999, // #720
+ 17, 26762, 26762, 954, 954, // #721
+ 40, 26816, 26816, 3376, 3376, // #722
+ 47, 26892, 26892, 3420, 3420, // #723
+ 8, 26952, 26952, 3832, 3832, // #724
+ 6, 26983, 26983, 2999, 2999, // #725
+ 18, 27004, 27004, 972, 972, // #726
+ 40, 27072, 27072, 3376, 3376, // #727
+ 47, 27148, 27148, 3420, 3420, // #728
+ 11, 27208, 27208, 24, 24, // #729
+ 6, 27239, 27239, 2999, 2999, // #730
+ 15, 27263, 27263, 991, 991, // #731
+ 40, 27328, 27328, 3376, 3376, // #732
+ 47, 27404, 27404, 3420, 3420, // #733
+ 10, 27456, 27456, 4080, 4080, // #734
+ 6, 27479, 27479, 2999, 2999, // #735
+ 15, 27503, 27503, 1007, 1007, // #736
+ 40, 27520, 27520, 3376, 3376, // #737
+ 47, 27596, 27596, 3420, 3420, // #738
+ 1, 27648, 27648, 1856, 1856, // #739
+ 3, 27678, 27678, 2734, 2734, // #740
+ 8, 27696, 27696, 320, 320, // #741
+ 40, 27712, 27712, 3376, 3376, // #742
+ 47, 27788, 27788, 3420, 3420, // #743
+ 11, 27840, 27840, 528, 528, // #744
+ 6, 27863, 27863, 2999, 2999, // #745
+ 16, 27919, 27919, 1023, 1023, // #746
+ 40, 27968, 27968, 3376, 3376, // #747
+ 47, 28044, 28044, 3420, 3420, // #748
+ 11, 28104, 28104, 3640, 3640, // #749
+ 6, 28135, 28135, 2999, 2999, // #750
+ 19, 28144, 28144, 1040, 1040, // #751
+ 40, 28224, 28224, 3376, 3376, // #752
+ 47, 28300, 28300, 3420, 3420, // #753
+ 8, 28352, 28352, 144, 144, // #754
+ 6, 28375, 28375, 2999, 2999, // #755
+ 16, 28385, 28385, 849, 849, // #756
+ 40, 28416, 28416, 3376, 3376, // #757
+ 47, 28492, 28492, 3420, 3420, // #758
+ 11, 28552, 28552, 1176, 1176, // #759
+ 6, 28583, 28583, 2999, 2999, // #760
+ 18, 28594, 28594, 866, 866, // #761
+ 40, 28672, 28672, 3376, 3376, // #762
+ 47, 28748, 28748, 3420, 3420, // #763
+ 11, 28800, 28800, 64, 64, // #764
+ 6, 28823, 28823, 2999, 2999, // #765
+ 16, 28869, 28869, 885, 885, // #766
+ 40, 28928, 28928, 3376, 3376, // #767
+ 47, 29004, 29004, 3420, 3420, // #768
+ 8, 29064, 29064, 104, 104, // #769
+ 6, 29095, 29095, 2999, 2999, // #770
+ 14, 29110, 29110, 902, 902, // #771
+ 40, 29184, 29184, 3376, 3376, // #772
+ 47, 29260, 29260, 3420, 3420, // #773
+ 9, 29320, 29320, 184, 184, // #774
+ 6, 29351, 29351, 2999, 2999, // #775
+ 17, 29365, 29365, 917, 917, // #776
+ 40, 29440, 29440, 3376, 3376, // #777
+ 47, 29516, 29516, 3420, 3420, // #778
+ 7, 29576, 29576, 1496, 1496, // #779
+ 6, 29591, 29591, 2999, 2999, // #780
+ 18, 29607, 29607, 935, 935, // #781
+ 40, 29632, 29632, 3376, 3376, // #782
+ 47, 29708, 29708, 3420, 3420, // #783
+ 9, 29768, 29768, 1656, 1656, // #784
+ 6, 29799, 29799, 2999, 2999, // #785
+ 17, 29834, 29834, 954, 954, // #786
+ 40, 29888, 29888, 3376, 3376, // #787
+ 47, 29964, 29964, 3420, 3420, // #788
+ 8, 30024, 30024, 3832, 3832, // #789
+ 6, 30055, 30055, 2999, 2999, // #790
+ 18, 30076, 30076, 972, 972, // #791
+ 40, 30144, 30144, 3376, 3376, // #792
+ 47, 30220, 30220, 3420, 3420, // #793
+ 11, 30280, 30280, 24, 24, // #794
+ 6, 30311, 30311, 2999, 2999, // #795
+ 15, 30335, 30335, 991, 991, // #796
+ 40, 30400, 30400, 3376, 3376, // #797
+ 47, 30476, 30476, 3420, 3420, // #798
+ 10, 30528, 30528, 4080, 4080, // #799
+ 6, 30551, 30551, 2999, 2999, // #800
+ 15, 30575, 30575, 1007, 1007, // #801
+ 40, 30592, 30592, 3376, 3376, // #802
+ 47, 30668, 30668, 3420, 3420, // #803
+ 21, 30728, 30728, 712, 712, // #804
+ 1, 30752, 30752, 976, 976, // #805
+ 3, 30782, 30782, 2734, 2734, // #806
+ 15, 30859, 30859, 763, 763, // #807
+ 40, 30912, 30912, 3376, 3376, // #808
+ 47, 30988, 30988, 3420, 3420, // #809
+ 1, 31048, 31048, 3192, 3192, // #810
+ 3, 31070, 31070, 2734, 2734, // #811
+ 11, 31099, 31099, 779, 779, // #812
+ 40, 31168, 31168, 3376, 3376, // #813
+ 47, 31244, 31244, 3420, 3420, // #814
+ 1, 31304, 31304, 3496, 3496, // #815
+ 3, 31326, 31326, 2734, 2734, // #816
+ 14, 31351, 31351, 791, 791, // #817
+ 40, 31424, 31424, 3376, 3376, // #818
+ 47, 31500, 31500, 3420, 3420, // #819
+ 3, 31560, 31560, 824, 824, // #820
+ 6, 31580, 31580, 2764, 2764, // #821
+ 15, 31606, 31606, 806, 806, // #822
+ 40, 31680, 31680, 3376, 3376, // #823
+ 47, 31756, 31756, 3420, 3420, // #824
+ 1, 31808, 31808, 3040, 3040, // #825
+ 6, 31836, 31836, 2764, 2764, // #826
+ 11, 31878, 31878, 822, 822, // #827
+ 40, 31936, 31936, 3376, 3376, // #828
+ 47, 32012, 32012, 3420, 3420, // #829
+ 4, 32064, 32064, 3344, 3344, // #830
+ 6, 32092, 32092, 2764, 2764, // #831
+ 14, 32114, 32114, 834, 834, // #832
+ 40, 32192, 32192, 3376, 3376, // #833
+ 47, 32268, 32268, 3420, 3420, // #834
+ 1, 32320, 32320, 1856, 1856, // #835
+ 3, 32350, 32350, 2734, 2734, // #836
+ 8, 32368, 32368, 320, 320, // #837
+ 40, 32384, 32384, 3376, 3376, // #838
+ 47, 32460, 32460, 3420, 3420, // #839
+ 11, 32512, 32512, 528, 528, // #840
+ 6, 32535, 32535, 2999, 2999, // #841
+ 16, 32591, 32591, 1023, 1023, // #842
+ 40, 32640, 32640, 3376, 3376, // #843
+ 47, 32716, 32716, 3420, 3420, // #844
+ 11, 32776, 32776, 3640, 3640, // #845
+ 6, 32807, 32807, 2999, 2999, // #846
+ 19, 32816, 32816, 1040, 1040, // #847
+ 40, 32896, 32896, 3376, 3376, // #848
+ 47, 32972, 32972, 3420, 3420, // #849
+ 8, 33024, 33024, 144, 144, // #850
+ 6, 33047, 33047, 2999, 2999, // #851
+ 16, 33057, 33057, 849, 849, // #852
+ 40, 33088, 33088, 3376, 3376, // #853
+ 47, 33164, 33164, 3420, 3420, // #854
+ 11, 33224, 33224, 1176, 1176, // #855
+ 6, 33255, 33255, 2999, 2999, // #856
+ 18, 33266, 33266, 866, 866, // #857
+ 40, 33344, 33344, 3376, 3376, // #858
+ 47, 33420, 33420, 3420, 3420, // #859
+ 11, 33472, 33472, 64, 64, // #860
+ 6, 33495, 33495, 2999, 2999, // #861
+ 16, 33541, 33541, 885, 885, // #862
+ 40, 33600, 33600, 3376, 3376, // #863
+ 47, 33676, 33676, 3420, 3420, // #864
+ 8, 33736, 33736, 104, 104, // #865
+ 6, 33767, 33767, 2999, 2999, // #866
+ 14, 33782, 33782, 902, 902, // #867
+ 40, 33856, 33856, 3376, 3376, // #868
+ 47, 33932, 33932, 3420, 3420, // #869
+ 9, 33992, 33992, 184, 184, // #870
+ 6, 34023, 34023, 2999, 2999, // #871
+ 17, 34037, 34037, 917, 917, // #872
+ 40, 34112, 34112, 3376, 3376, // #873
+ 47, 34188, 34188, 3420, 3420, // #874
+ 7, 34248, 34248, 1496, 1496, // #875
+ 6, 34263, 34263, 2999, 2999, // #876
+ 18, 34279, 34279, 935, 935, // #877
+ 40, 34304, 34304, 3376, 3376, // #878
+ 47, 34380, 34380, 3420, 3420, // #879
+ 9, 34440, 34440, 1656, 1656, // #880
+ 6, 34471, 34471, 2999, 2999, // #881
+ 17, 34506, 34506, 954, 954, // #882
+ 40, 34560, 34560, 3376, 3376, // #883
+ 47, 34636, 34636, 3420, 3420, // #884
+ 8, 34696, 34696, 3832, 3832, // #885
+ 6, 34727, 34727, 2999, 2999, // #886
+ 18, 34748, 34748, 972, 972, // #887
+ 40, 34816, 34816, 3376, 3376, // #888
+ 47, 34892, 34892, 3420, 3420, // #889
+ 11, 34952, 34952, 24, 24, // #890
+ 6, 34983, 34983, 2999, 2999, // #891
+ 15, 35007, 35007, 991, 991, // #892
+ 40, 35072, 35072, 3376, 3376, // #893
+ 47, 35148, 35148, 3420, 3420, // #894
+ 10, 35200, 35200, 4080, 4080, // #895
+ 6, 35223, 35223, 2999, 2999, // #896
+ 15, 35247, 35247, 1007, 1007, // #897
+ 40, 35264, 35264, 3376, 3376, // #898
+ 47, 35340, 35340, 3420, 3420, // #899
+ 21, 35406, 35406, 734, 734, // #900
+ 4, 35448, 35448, 648, 648, // #901
+ 4, 35465, 35465, 2729, 2729, // #902
+ 6, 35476, 35476, 756, 756, // #903
+ 40, 35520, 35520, 3376, 3376, // #904
+ 47, 35596, 35596, 3420, 3420, // #905
+ 1, 35656, 35656, 472, 472, // #906
+ 3, 35678, 35678, 2734, 2734, // #907
+ 15, 35723, 35723, 763, 763, // #908
+ 40, 35776, 35776, 3376, 3376, // #909
+ 47, 35852, 35852, 3420, 3420, // #910
+ 1, 35904, 35904, 192, 192, // #911
+ 3, 35934, 35934, 2734, 2734, // #912
+ 11, 35963, 35963, 779, 779, // #913
+ 40, 36032, 36032, 3376, 3376, // #914
+ 47, 36108, 36108, 3420, 3420, // #915
+ 1, 36160, 36160, 496, 496, // #916
+ 3, 36190, 36190, 2734, 2734, // #917
+ 14, 36215, 36215, 791, 791, // #918
+ 40, 36288, 36288, 3376, 3376, // #919
+ 47, 36364, 36364, 3420, 3420, // #920
+ 1, 36416, 36416, 320, 320, // #921
+ 6, 36444, 36444, 2764, 2764, // #922
+ 15, 36470, 36470, 806, 806, // #923
+ 40, 36544, 36544, 3376, 3376, // #924
+ 47, 36620, 36620, 3420, 3420, // #925
+ 5, 36680, 36680, 40, 40, // #926
+ 6, 36700, 36700, 2764, 2764, // #927
+ 11, 36742, 36742, 822, 822, // #928
+ 40, 36800, 36800, 3376, 3376, // #929
+ 47, 36876, 36876, 3420, 3420, // #930
+ 3, 36936, 36936, 344, 344, // #931
+ 6, 36956, 36956, 2764, 2764, // #932
+ 14, 36978, 36978, 834, 834, // #933
+ 40, 37056, 37056, 3376, 3376, // #934
+ 47, 37132, 37132, 3420, 3420, // #935
+ 11, 37192, 37192, 1384, 1384, // #936
+ 6, 37223, 37223, 2999, 2999, // #937
+ 5, 37247, 37247, 2735, 2735, // #938
+ 40, 37312, 37312, 3376, 3376, // #939
+ 47, 37388, 37388, 3420, 3420, // #940
+ 1, 37440, 37440, 1856, 1856, // #941
+ 3, 37470, 37470, 2734, 2734, // #942
+ 8, 37488, 37488, 320, 320, // #943
+ 40, 37504, 37504, 3376, 3376, // #944
+ 47, 37580, 37580, 3420, 3420, // #945
+ 11, 37632, 37632, 528, 528, // #946
+ 6, 37655, 37655, 2999, 2999, // #947
+ 16, 37711, 37711, 1023, 1023, // #948
+ 40, 37760, 37760, 3376, 3376, // #949
+ 47, 37836, 37836, 3420, 3420, // #950
+ 11, 37896, 37896, 3640, 3640, // #951
+ 6, 37927, 37927, 2999, 2999, // #952
+ 19, 37936, 37936, 1040, 1040, // #953
+ 40, 38016, 38016, 3376, 3376, // #954
+ 47, 38092, 38092, 3420, 3420, // #955
+ 8, 38144, 38144, 144, 144, // #956
+ 6, 38167, 38167, 2999, 2999, // #957
+ 16, 38177, 38177, 849, 849, // #958
+ 40, 38208, 38208, 3376, 3376, // #959
+ 47, 38284, 38284, 3420, 3420, // #960
+ 11, 38344, 38344, 1176, 1176, // #961
+ 6, 38375, 38375, 2999, 2999, // #962
+ 18, 38386, 38386, 866, 866, // #963
+ 40, 38464, 38464, 3376, 3376, // #964
+ 47, 38540, 38540, 3420, 3420, // #965
+ 11, 38592, 38592, 64, 64, // #966
+ 6, 38615, 38615, 2999, 2999, // #967
+ 16, 38661, 38661, 885, 885, // #968
+ 40, 38720, 38720, 3376, 3376, // #969
+ 47, 38796, 38796, 3420, 3420, // #970
+ 8, 38856, 38856, 104, 104, // #971
+ 6, 38887, 38887, 2999, 2999, // #972
+ 14, 38902, 38902, 902, 902, // #973
+ 40, 38976, 38976, 3376, 3376, // #974
+ 47, 39052, 39052, 3420, 3420, // #975
+ 9, 39112, 39112, 184, 184, // #976
+ 6, 39143, 39143, 2999, 2999, // #977
+ 17, 39157, 39157, 917, 917, // #978
+ 40, 39232, 39232, 3376, 3376, // #979
+ 47, 39308, 39308, 3420, 3420, // #980
+ 7, 39368, 39368, 1496, 1496, // #981
+ 6, 39383, 39383, 2999, 2999, // #982
+ 18, 39399, 39399, 935, 935, // #983
+ 40, 39424, 39424, 3376, 3376, // #984
+ 47, 39500, 39500, 3420, 3420, // #985
+ 9, 39560, 39560, 1656, 1656, // #986
+ 6, 39591, 39591, 2999, 2999, // #987
+ 17, 39626, 39626, 954, 954, // #988
+ 40, 39680, 39680, 3376, 3376, // #989
+ 47, 39756, 39756, 3420, 3420, // #990
+ 8, 39816, 39816, 3832, 3832, // #991
+ 6, 39847, 39847, 2999, 2999, // #992
+ 18, 39868, 39868, 972, 972, // #993
+ 40, 39936, 39936, 3376, 3376, // #994
+ 47, 40012, 40012, 3420, 3420, // #995
+ 11, 40072, 40072, 24, 24, // #996
+ 6, 40103, 40103, 2999, 2999, // #997
+ 15, 40127, 40127, 991, 991, // #998
+ 40, 40192, 40192, 3376, 3376, // #999
+ 47, 40268, 40268, 3420, 3420, // #1000
+ 10, 40320, 40320, 4080, 4080, // #1001
+ 6, 40343, 40343, 2999, 2999, // #1002
+ 15, 40367, 40367, 1007, 1007, // #1003
+ 40, 40384, 40384, 3376, 3376, // #1004
+ 47, 40460, 40460, 3420, 3420, // #1005
+ 1, 40512, 40512, 1856, 1856, // #1006
+ 3, 40542, 40542, 2734, 2734, // #1007
+ 8, 40560, 40560, 320, 320, // #1008
+ 40, 40576, 40576, 3376, 3376, // #1009
+ 47, 40652, 40652, 3420, 3420, // #1010
+ 11, 40704, 40704, 528, 528, // #1011
+ 6, 40727, 40727, 2999, 2999, // #1012
+ 16, 40783, 40783, 1023, 1023, // #1013
+ 40, 40832, 40832, 3376, 3376, // #1014
+ 47, 40908, 40908, 3420, 3420, // #1015
+ 11, 40968, 40968, 3640, 3640, // #1016
+ 6, 40999, 40999, 2999, 2999, // #1017
+ 19, 41008, 41008, 1040, 1040, // #1018
+ 40, 41088, 41088, 3376, 3376, // #1019
+ 47, 41164, 41164, 3420, 3420, // #1020
+ 8, 41216, 41216, 144, 144, // #1021
+ 6, 41239, 41239, 2999, 2999, // #1022
+ 16, 41249, 41249, 849, 849, // #1023
+ 40, 41280, 41280, 3376, 3376, // #1024
+ 47, 41356, 41356, 3420, 3420, // #1025
+ 11, 41416, 41416, 1176, 1176, // #1026
+ 6, 41447, 41447, 2999, 2999, // #1027
+ 18, 41458, 41458, 866, 866, // #1028
+ 40, 41536, 41536, 3376, 3376, // #1029
+ 47, 41612, 41612, 3420, 3420, // #1030
+ 11, 41664, 41664, 64, 64, // #1031
+ 6, 41687, 41687, 2999, 2999, // #1032
+ 16, 41733, 41733, 885, 885, // #1033
+ 40, 41792, 41792, 3376, 3376, // #1034
+ 47, 41868, 41868, 3420, 3420, // #1035
+ 8, 41928, 41928, 104, 104, // #1036
+ 6, 41959, 41959, 2999, 2999, // #1037
+ 14, 41974, 41974, 902, 902, // #1038
+ 40, 42048, 42048, 3376, 3376, // #1039
+ 47, 42124, 42124, 3420, 3420, // #1040
+ 9, 42184, 42184, 184, 184, // #1041
+ 6, 42215, 42215, 2999, 2999, // #1042
+ 17, 42229, 42229, 917, 917, // #1043
+ 40, 42304, 42304, 3376, 3376, // #1044
+ 47, 42380, 42380, 3420, 3420, // #1045
+ 7, 42440, 42440, 1496, 1496, // #1046
+ 6, 42455, 42455, 2999, 2999, // #1047
+ 18, 42471, 42471, 935, 935, // #1048
+ 40, 42496, 42496, 3376, 3376, // #1049
+ 47, 42572, 42572, 3420, 3420, // #1050
+ 9, 42632, 42632, 1656, 1656, // #1051
+ 6, 42663, 42663, 2999, 2999, // #1052
+ 17, 42698, 42698, 954, 954, // #1053
+ 40, 42752, 42752, 3376, 3376, // #1054
+ 47, 42828, 42828, 3420, 3420, // #1055
+ 8, 42888, 42888, 3832, 3832, // #1056
+ 6, 42919, 42919, 2999, 2999, // #1057
+ 18, 42940, 42940, 972, 972, // #1058
+ 40, 43008, 43008, 3376, 3376, // #1059
+ 47, 43084, 43084, 3420, 3420, // #1060
+ 11, 43144, 43144, 24, 24, // #1061
+ 6, 43175, 43175, 2999, 2999, // #1062
+ 15, 43199, 43199, 991, 991, // #1063
+ 40, 43264, 43264, 3376, 3376, // #1064
+ 47, 43340, 43340, 3420, 3420, // #1065
+ 10, 43392, 43392, 4080, 4080, // #1066
+ 6, 43415, 43415, 2999, 2999, // #1067
+ 15, 43439, 43439, 1007, 1007, // #1068
+ 40, 43456, 43456, 3376, 3376, // #1069
+ 47, 43532, 43532, 3420, 3420, // #1070
+ 21, 43592, 43592, 712, 712, // #1071
+ 1, 43616, 43616, 976, 976, // #1072
+ 3, 43646, 43646, 2734, 2734, // #1073
+ 15, 43723, 43723, 763, 763, // #1074
+ 40, 43776, 43776, 3376, 3376, // #1075
+ 47, 43852, 43852, 3420, 3420, // #1076
+ 1, 43912, 43912, 3192, 3192, // #1077
+ 3, 43934, 43934, 2734, 2734, // #1078
+ 11, 43963, 43963, 779, 779, // #1079
+ 40, 44032, 44032, 3376, 3376, // #1080
+ 47, 44108, 44108, 3420, 3420, // #1081
+ 1, 44168, 44168, 3496, 3496, // #1082
+ 3, 44190, 44190, 2734, 2734, // #1083
+ 14, 44215, 44215, 791, 791, // #1084
+ 40, 44288, 44288, 3376, 3376, // #1085
+ 47, 44364, 44364, 3420, 3420, // #1086
+ 3, 44424, 44424, 824, 824, // #1087
+ 6, 44444, 44444, 2764, 2764, // #1088
+ 15, 44470, 44470, 806, 806, // #1089
+ 40, 44544, 44544, 3376, 3376, // #1090
+ 47, 44620, 44620, 3420, 3420, // #1091
+ 1, 44672, 44672, 3040, 3040, // #1092
+ 6, 44700, 44700, 2764, 2764, // #1093
+ 11, 44742, 44742, 822, 822, // #1094
+ 40, 44800, 44800, 3376, 3376, // #1095
+ 47, 44876, 44876, 3420, 3420, // #1096
+ 4, 44928, 44928, 3344, 3344, // #1097
+ 6, 44956, 44956, 2764, 2764, // #1098
+ 14, 44978, 44978, 834, 834, // #1099
+ 40, 45056, 45056, 3376, 3376, // #1100
+ 47, 45132, 45132, 3420, 3420, // #1101
+ 1, 45184, 45184, 1856, 1856, // #1102
+ 3, 45214, 45214, 2734, 2734, // #1103
+ 8, 45232, 45232, 320, 320, // #1104
+ 40, 45248, 45248, 3376, 3376, // #1105
+ 47, 45324, 45324, 3420, 3420, // #1106
+ 11, 45376, 45376, 528, 528, // #1107
+ 6, 45399, 45399, 2999, 2999, // #1108
+ 16, 45455, 45455, 1023, 1023, // #1109
+ 40, 45504, 45504, 3376, 3376, // #1110
+ 47, 45580, 45580, 3420, 3420, // #1111
+ 11, 45640, 45640, 3640, 3640, // #1112
+ 6, 45671, 45671, 2999, 2999, // #1113
+ 19, 45680, 45680, 1040, 1040, // #1114
+ 40, 45760, 45760, 3376, 3376, // #1115
+ 47, 45836, 45836, 3420, 3420, // #1116
+ 8, 45888, 45888, 144, 144, // #1117
+ 6, 45911, 45911, 2999, 2999, // #1118
+ 16, 45921, 45921, 849, 849, // #1119
+ 40, 45952, 45952, 3376, 3376, // #1120
+ 47, 46028, 46028, 3420, 3420, // #1121
+ 11, 46088, 46088, 1176, 1176, // #1122
+ 6, 46119, 46119, 2999, 2999, // #1123
+ 18, 46130, 46130, 866, 866, // #1124
+ 40, 46208, 46208, 3376, 3376, // #1125
+ 47, 46284, 46284, 3420, 3420, // #1126
+ 11, 46336, 46336, 64, 64, // #1127
+ 6, 46359, 46359, 2999, 2999, // #1128
+ 16, 46405, 46405, 885, 885, // #1129
+ 40, 46464, 46464, 3376, 3376, // #1130
+ 47, 46540, 46540, 3420, 3420, // #1131
+ 8, 46600, 46600, 104, 104, // #1132
+ 6, 46631, 46631, 2999, 2999, // #1133
+ 14, 46646, 46646, 902, 902, // #1134
+ 40, 46720, 46720, 3376, 3376, // #1135
+ 47, 46796, 46796, 3420, 3420, // #1136
+ 9, 46856, 46856, 184, 184, // #1137
+ 6, 46887, 46887, 2999, 2999, // #1138
+ 17, 46901, 46901, 917, 917, // #1139
+ 40, 46976, 46976, 3376, 3376, // #1140
+ 47, 47052, 47052, 3420, 3420, // #1141
+ 7, 47112, 47112, 1496, 1496, // #1142
+ 6, 47127, 47127, 2999, 2999, // #1143
+ 18, 47143, 47143, 935, 935, // #1144
+ 40, 47168, 47168, 3376, 3376, // #1145
+ 47, 47244, 47244, 3420, 3420, // #1146
+ 9, 47304, 47304, 1656, 1656, // #1147
+ 6, 47335, 47335, 2999, 2999, // #1148
+ 17, 47370, 47370, 954, 954, // #1149
+ 40, 47424, 47424, 3376, 3376, // #1150
+ 47, 47500, 47500, 3420, 3420, // #1151
+ 8, 47560, 47560, 3832, 3832, // #1152
+ 6, 47591, 47591, 2999, 2999, // #1153
+ 18, 47612, 47612, 972, 972, // #1154
+ 40, 47680, 47680, 3376, 3376, // #1155
+ 47, 47756, 47756, 3420, 3420, // #1156
+ 11, 47816, 47816, 24, 24, // #1157
+ 6, 47847, 47847, 2999, 2999, // #1158
+ 15, 47871, 47871, 991, 991, // #1159
+ 40, 47936, 47936, 3376, 3376, // #1160
+ 47, 48012, 48012, 3420, 3420, // #1161
+ 10, 48064, 48064, 4080, 4080, // #1162
+ 6, 48087, 48087, 2999, 2999, // #1163
+ 15, 48111, 48111, 1007, 1007, // #1164
+ 40, 48128, 48128, 3376, 3376, // #1165
+ 47, 48204, 48204, 3420, 3420, // #1166
+ 21, 48270, 48270, 734, 734, // #1167
+ 4, 48312, 48312, 648, 648, // #1168
+ 4, 48329, 48329, 2729, 2729, // #1169
+ 6, 48340, 48340, 756, 756, // #1170
+ 40, 48384, 48384, 3376, 3376, // #1171
+ 47, 48460, 48460, 3420, 3420, // #1172
+ 1, 48520, 48520, 472, 472, // #1173
+ 3, 48542, 48542, 2734, 2734, // #1174
+ 15, 48587, 48587, 763, 763, // #1175
+ 40, 48640, 48640, 3376, 3376, // #1176
+ 47, 48716, 48716, 3420, 3420, // #1177
+ 1, 48768, 48768, 192, 192, // #1178
+ 3, 48798, 48798, 2734, 2734, // #1179
+ 11, 48827, 48827, 779, 779, // #1180
+ 40, 48896, 48896, 3376, 3376, // #1181
+ 47, 48972, 48972, 3420, 3420, // #1182
+ 1, 49024, 49024, 496, 496, // #1183
+ 3, 49054, 49054, 2734, 2734, // #1184
+ 14, 49079, 49079, 791, 791, // #1185
+ 40, 49152, 49152, 3376, 3376, // #1186
+ 47, 49228, 49228, 3420, 3420, // #1187
+ 1, 49280, 49280, 320, 320, // #1188
+ 6, 49308, 49308, 2764, 2764, // #1189
+ 15, 49334, 49334, 806, 806, // #1190
+ 40, 49408, 49408, 3376, 3376, // #1191
+ 47, 49484, 49484, 3420, 3420, // #1192
+ 5, 49544, 49544, 40, 40, // #1193
+ 6, 49564, 49564, 2764, 2764, // #1194
+ 11, 49606, 49606, 822, 822, // #1195
+ 40, 49664, 49664, 3376, 3376, // #1196
+ 47, 49740, 49740, 3420, 3420, // #1197
+ 3, 49800, 49800, 344, 344, // #1198
+ 6, 49820, 49820, 2764, 2764, // #1199
+ 14, 49842, 49842, 834, 834, // #1200
+ 40, 49920, 49920, 3376, 3376, // #1201
+ 47, 49996, 49996, 3420, 3420, // #1202
+ 11, 50056, 50056, 1384, 1384, // #1203
+ 6, 50087, 50087, 2999, 2999, // #1204
+ 5, 50111, 50111, 2735, 2735, // #1205
+ 40, 50176, 50176, 3376, 3376, // #1206
+ 47, 50252, 50252, 3420, 3420, // #1207
+ 8, 50316, 50316, 668, 668, // #1208
+ 8, 50342, 50342, 806, 806, // #1209
+ 10, 50356, 50356, 756, 756, // #1210
+ 11, 50370, 50370, 642, 642, // #1211
+ 3, 50392, 50392, 3000, 3000, // #1212
+ 10, 50404, 50404, 756, 756, // #1213
+ 17, 50429, 50429, 749, 749, // #1214
+ 3, 50456, 50456, 3000, 3000, // #1215
+ 3, 50472, 50472, 3000, 3000, // #1216
+ 3, 50488, 50488, 3000, 3000, // #1217
+ 3, 50504, 50504, 3000, 3000, // #1218
+ 5, 50522, 50522, 3546, 3546, // #1219
+ 12, 50531, 50531, 723, 723, // #1220
+ 12, 50547, 50547, 723, 723, // #1221
+ 12, 50560, 50560, 736, 736, // #1222
+ 12, 50576, 50576, 736, 736, // #1223
+ 14, 50605, 50605, 749, 749, // #1224
+ 14, 50637, 50637, 749, 749, // #1225
+ 13, 50700, 50700, 764, 764, // #1226
+ 13, 50764, 50764, 764, 764, // #1227
+ 18, 50794, 50794, 778, 778, // #1228
+ 18, 50826, 50826, 778, 778, // #1229
+ 23, 50861, 50861, 797, 797, // #1230
+ 23, 50909, 50909, 797, 797, // #1231
+ 24, 50949, 50949, 821, 821, // #1232
+ 24, 51013, 51013, 821, 821, // #1233
+ 26, 51054, 51054, 846, 846, // #1234
+ 26, 51102, 51102, 846, 846, // #1235
+ 7, 51145, 51145, 873, 873, // #1236
+ 8, 51169, 51169, 881, 881, // #1237
+ 9, 51210, 51210, 890, 890, // #1238
+ 26, 51236, 51236, 900, 900, // #1239
+ 26, 51268, 51268, 900, 900, // #1240
+ 22, 51311, 51311, 927, 927, // #1241
+ 22, 51359, 51359, 927, 927, // #1242
+ 23, 51398, 51398, 950, 950, // #1243
+ 23, 51462, 51462, 950, 950, // #1244
+ 14, 51502, 51502, 974, 974, // #1245
+ 14, 51534, 51534, 974, 974, // #1246
+ 23, 51565, 51565, 989, 989, // #1247
+ 23, 51613, 51613, 989, 989, // #1248
+ 23, 51653, 51653, 1013, 1013, // #1249
+ 23, 51717, 51717, 1013, 1013, // #1250
+ 16, 51757, 51757, 1037, 1037, // #1251
+ 16, 51789, 51789, 1037, 1037, // #1252
+ 14, 51822, 51822, 1054, 1054, // #1253
+ 14, 51854, 51854, 1054, 1054, // #1254
+ 8, 51885, 51885, 1069, 1069, // #1255
+ 4, 51910, 51910, 1078, 1078, // #1256
+ 13, 51979, 51979, 1083, 1083, // #1257
+ 13, 52043, 52043, 1083, 1083, // #1258
+ 19, 52073, 52073, 1097, 1097, // #1259
+ 19, 52105, 52105, 1097, 1097, // #1260
+ 7, 52141, 52141, 1117, 1117, // #1261
+ 9, 52165, 52165, 1125, 1125, // #1262
+ 9, 52191, 52191, 1135, 1135, // #1263
+ 17, 52233, 52233, 1145, 1145, // #1264
+ 17, 52297, 52297, 1145, 1145, // #1265
+ 15, 52331, 52331, 1163, 1163, // #1266
+ 15, 52363, 52363, 1163, 1163, // #1267
+ 9, 52395, 52395, 1179, 1179, // #1268
+ 8, 52421, 52421, 1189, 1189, // #1269
+ 8, 52446, 52446, 1198, 1198, // #1270
+ 8, 52478, 52478, 1198, 1198, // #1271
+ 17, 52551, 52551, 1207, 1207, // #1272
+ 17, 52615, 52615, 1207, 1207, // #1273
+ 5, 52640, 52640, 1296, 1296, // #1274
+ 4, 52665, 52665, 2729, 2729, // #1275
+ 17, 52672, 52672, 3424, 3424, // #1276
+ 40, 52736, 52736, 3376, 3376, // #1277
+ 47, 52812, 52812, 3420, 3420, // #1278
+ 10, 52873, 52873, 1225, 1225, // #1279
+ 7, 52900, 52900, 1236, 1236, // #1280
+ 14, 52924, 52924, 1244, 1244, // #1281
+ 14, 52956, 52956, 1244, 1244, // #1282
+ 21, 52987, 52987, 1259, 1259, // #1283
+ 21, 53035, 53035, 1259, 1259, // #1284
+ 15, 53073, 53073, 1281, 1281, // #1285
+ 15, 53105, 53105, 1281, 1281, // #1286
+ 19, 53137, 53137, 1297, 1297, // #1287
+ 19, 53169, 53169, 1297, 1297, // #1288
+ 19, 53205, 53205, 1317, 1317, // #1289
+ 19, 53237, 53237, 1317, 1317, // #1290
+ 15, 53321, 53321, 1337, 1337, // #1291
+ 15, 53385, 53385, 1337, 1337, // #1292
+ 17, 53408, 53408, 1360, 1360, // #1293
+ 17, 53440, 53440, 1360, 1360, // #1294
+ 24, 53481, 53481, 1353, 1353, // #1295
+ 24, 53529, 53529, 1353, 1353, // #1296
+ 7, 53570, 53570, 1378, 1378, // #1297
+ 7, 53594, 53594, 1386, 1386, // #1298
+ 15, 53634, 53634, 1394, 1394, // #1299
+ 20, 53666, 53666, 1410, 1410, // #1300
+ 20, 53698, 53698, 1410, 1410, // #1301
+ 7, 53735, 53735, 1431, 1431, // #1302
+ 7, 53759, 53759, 1439, 1439, // #1303
+ 15, 53783, 53783, 1447, 1447, // #1304
+ 20, 53831, 53831, 1463, 1463, // #1305
+ 20, 53895, 53895, 1463, 1463, // #1306
+ 7, 53932, 53932, 1484, 1484, // #1307
+ 7, 53956, 53956, 1492, 1492, // #1308
+ 15, 53980, 53980, 1500, 1500, // #1309
+ 17, 54012, 54012, 1516, 1516, // #1310
+ 17, 54044, 54044, 1516, 1516, // #1311
+ 28, 54094, 54094, 1534, 1534, // #1312
+ 28, 54158, 54158, 1534, 1534, // #1313
+ 25, 54203, 54203, 1563, 1563, // #1314
+ 25, 54251, 54251, 1563, 1563, // #1315
+ 25, 54341, 54341, 1589, 1589, // #1316
+ 25, 54405, 54405, 1589, 1589, // #1317
+ 25, 54447, 54447, 1615, 1615, // #1318
+ 25, 54495, 54495, 1615, 1615, // #1319
+ 36, 54536, 54536, 2056, 2056, // #1320
+ 36, 54584, 54584, 2056, 2056, // #1321
+ 22, 54633, 54633, 1641, 1641, // #1322
+ 22, 54665, 54665, 1641, 1641, // #1323
+ 33, 54720, 54720, 2096, 2096, // #1324
+ 33, 54784, 54784, 2096, 2096, // #1325
+ 29, 54832, 54832, 1664, 1664, // #1326
+ 29, 54864, 54864, 1664, 1664, // #1327
+ 27, 54910, 54910, 1694, 1694, // #1328
+ 27, 54958, 54958, 1694, 1694, // #1329
+ 31, 54996, 54996, 2132, 2132, // #1330
+ 31, 55044, 55044, 2132, 2132, // #1331
+ 5, 55088, 55088, 1168, 1168, // #1332
+ 4, 55113, 55113, 2729, 2729, // #1333
+ 31, 55128, 55128, 3480, 3480, // #1334
+ 40, 55168, 55168, 3376, 3376, // #1335
+ 47, 55244, 55244, 3420, 3420, // #1336
+ 23, 55306, 55306, 1722, 1722, // #1337
+ 23, 55370, 55370, 1722, 1722, // #1338
+ 5, 55416, 55416, 1048, 1048, // #1339
+ 4, 55433, 55433, 2729, 2729, // #1340
+ 23, 55448, 55448, 3976, 3976, // #1341
+ 40, 55488, 55488, 3376, 3376, // #1342
+ 47, 55564, 55564, 3420, 3420, // #1343
+ 26, 55618, 55618, 1746, 1746, // #1344
+ 26, 55650, 55650, 1746, 1746, // #1345
+ 5, 55680, 55680, 880, 880, // #1346
+ 4, 55705, 55705, 2729, 2729, // #1347
+ 26, 55712, 55712, 608, 608, // #1348
+ 40, 55744, 55744, 3376, 3376, // #1349
+ 47, 55820, 55820, 3420, 3420, // #1350
+ 26, 55885, 55885, 1773, 1773, // #1351
+ 26, 55949, 55949, 1773, 1773, // #1352
+ 32, 56004, 56004, 2164, 2164, // #1353
+ 32, 56068, 56068, 2164, 2164, // #1354
+ 24, 56120, 56120, 1800, 1800, // #1355
+ 24, 56168, 56168, 1800, 1800, // #1356
+ 27, 56209, 56209, 1825, 1825, // #1357
+ 27, 56241, 56241, 1825, 1825, // #1358
+ 27, 56333, 56333, 1853, 1853, // #1359
+ 27, 56397, 56397, 1853, 1853, // #1360
+ 10, 56436, 56436, 756, 756, // #1361
+ 17, 56461, 56461, 749, 749, // #1362
+ 3, 56488, 56488, 3000, 3000, // #1363
+ 3, 56504, 56504, 3000, 3000, // #1364
+ 3, 56520, 56520, 3000, 3000, // #1365
+ 3, 56536, 56536, 3000, 3000, // #1366
+ 5, 56552, 56552, 3256, 3256, // #1367
+ 4, 56569, 56569, 2729, 2729, // #1368
+ 17, 56576, 56576, 1840, 1840, // #1369
+ 40, 56640, 56640, 3376, 3376, // #1370
+ 47, 56716, 56716, 3420, 3420, // #1371
+ 5, 56776, 56776, 3128, 3128, // #1372
+ 4, 56793, 56793, 2729, 2729, // #1373
+ 31, 56840, 56840, 1832, 1832, // #1374
+ 40, 56896, 56896, 3376, 3376, // #1375
+ 47, 56972, 56972, 3420, 3420, // #1376
+ 5, 57024, 57024, 3008, 3008, // #1377
+ 4, 57049, 57049, 2729, 2729, // #1378
+ 23, 57056, 57056, 2080, 2080, // #1379
+ 40, 57088, 57088, 3376, 3376, // #1380
+ 47, 57164, 57164, 3420, 3420, // #1381
+ 5, 57224, 57224, 2840, 2840, // #1382
+ 4, 57241, 57241, 2729, 2729, // #1383
+ 26, 57248, 57248, 2272, 2272, // #1384
+ 40, 57280, 57280, 3376, 3376, // #1385
+ 47, 57356, 57356, 3420, 3420, // #1386
+ 10, 57412, 57412, 756, 756, // #1387
+ 17, 57437, 57437, 749, 749, // #1388
+ 3, 57464, 57464, 3000, 3000, // #1389
+ 3, 57480, 57480, 3000, 3000, // #1390
+ 3, 57496, 57496, 3000, 3000, // #1391
+ 3, 57512, 57512, 3000, 3000, // #1392
+ 5, 57528, 57528, 2344, 2344, // #1393
+ 4, 57545, 57545, 2729, 2729, // #1394
+ 17, 57552, 57552, 3232, 3232, // #1395
+ 40, 57600, 57600, 3376, 3376, // #1396
+ 47, 57676, 57676, 3420, 3420, // #1397
+ 5, 57736, 57736, 2216, 2216, // #1398
+ 4, 57753, 57753, 2729, 2729, // #1399
+ 31, 57768, 57768, 3224, 3224, // #1400
+ 40, 57856, 57856, 3376, 3376, // #1401
+ 47, 57932, 57932, 3420, 3420, // #1402
+ 5, 57984, 57984, 2096, 2096, // #1403
+ 4, 58009, 58009, 2729, 2729, // #1404
+ 23, 58016, 58016, 3472, 3472, // #1405
+ 40, 58048, 58048, 3376, 3376, // #1406
+ 47, 58124, 58124, 3420, 3420, // #1407
+ 5, 58184, 58184, 1928, 1928, // #1408
+ 4, 58201, 58201, 2729, 2729, // #1409
+ 26, 58208, 58208, 3664, 3664, // #1410
+ 40, 58240, 58240, 3376, 3376, // #1411
+ 47, 58316, 58316, 3420, 3420, // #1412
+ 13, 58373, 58373, 405, 405, // #1413
+ 1, 58409, 58409, 393, 393, // #1414
+ 16, 58419, 58419, 419, 419, // #1415
+ 1, 58457, 58457, 393, 393, // #1416
+ 24, 58500, 58500, 436, 436, // #1417
+ 1, 58537, 58537, 393, 393, // #1418
+ 24, 58560, 58560, 368, 368, // #1419
+ 1, 58601, 58601, 393, 393, // #1420
+ 9, 58619, 58619, 395, 395, // #1421
+ 1, 58649, 58649, 393, 393, // #1422
+ 3, 58668, 58668, 1900, 1900, // #1423
+ 13, 58672, 58672, 1920, 1920, // #1424
+ 9, 58688, 58688, 832, 832, // #1425
+ 5, 58713, 58713, 1433, 1433, // #1426
+ 25, 58759, 58759, 631, 631, // #1427
+ 1, 58810, 58810, 842, 842, // #1428
+ 1, 58828, 58828, 1228, 1228, // #1429
+ 1, 58842, 58842, 842, 842, // #1430
+ 1, 58860, 58860, 1228, 1228, // #1431
+ 1, 58876, 58876, 1228, 1228, // #1432
+ 1, 58886, 58886, 2390, 2390, // #1433
+ 1, 58906, 58906, 842, 842, // #1434
+ 1, 58924, 58924, 1228, 1228, // #1435
+ 1, 58940, 58940, 1228, 1228, // #1436
+ 1, 58950, 58950, 2390, 2390, // #1437
+ 8, 58961, 58961, 577, 577, // #1438
+ 5, 58979, 58979, 1747, 1747, // #1439
+ 27, 58994, 58994, 2018, 2018, // #1440
+ 40, 59032, 59032, 2056, 2056, // #1441
+ 29, 59102, 59102, 910, 910, // #1442
+ 1, 59146, 59146, 842, 842, // #1443
+ 1, 59164, 59164, 1228, 1228, // #1444
+ 1, 59180, 59180, 1228, 1228, // #1445
+ 1, 59190, 59190, 2390, 2390, // #1446
+ 8, 59201, 59201, 577, 577, // #1447
+ 5, 59219, 59219, 1747, 1747, // #1448
+ 27, 59234, 59234, 2018, 2018, // #1449
+ 40, 59272, 59272, 2056, 2056, // #1450
+ 29, 59342, 59342, 910, 910, // #1451
+ 1, 59386, 59386, 842, 842, // #1452
+ 1, 59404, 59404, 1228, 1228, // #1453
+ 1, 59408, 59408, 432, 432, // #1454
+ 3, 59438, 59438, 2734, 2734, // #1455
+ 8, 59456, 59456, 320, 320, // #1456
+ 40, 59520, 59520, 3376, 3376, // #1457
+ 47, 59596, 59596, 3420, 3420, // #1458
+ 11, 59656, 59656, 1736, 1736, // #1459
+ 6, 59687, 59687, 2999, 2999, // #1460
+ 16, 59727, 59727, 1023, 1023, // #1461
+ 40, 59776, 59776, 3376, 3376, // #1462
+ 47, 59852, 59852, 3420, 3420, // #1463
+ 11, 59904, 59904, 1696, 1696, // #1464
+ 6, 59927, 59927, 2999, 2999, // #1465
+ 19, 59936, 59936, 1040, 1040, // #1466
+ 40, 59968, 59968, 3376, 3376, // #1467
+ 47, 60044, 60044, 3420, 3420, // #1468
+ 8, 60104, 60104, 1976, 1976, // #1469
+ 6, 60135, 60135, 2999, 2999, // #1470
+ 16, 60145, 60145, 849, 849, // #1471
+ 40, 60224, 60224, 3376, 3376, // #1472
+ 47, 60300, 60300, 3420, 3420, // #1473
+ 10, 60360, 60360, 1896, 1896, // #1474
+ 6, 60391, 60391, 2999, 2999, // #1475
+ 18, 60402, 60402, 866, 866, // #1476
+ 40, 60480, 60480, 3376, 3376, // #1477
+ 47, 60556, 60556, 3420, 3420, // #1478
+ 11, 60608, 60608, 1856, 1856, // #1479
+ 6, 60631, 60631, 2999, 2999, // #1480
+ 16, 60677, 60677, 885, 885, // #1481
+ 40, 60736, 60736, 3376, 3376, // #1482
+ 47, 60812, 60812, 3420, 3420, // #1483
+ 8, 60864, 60864, 1936, 1936, // #1484
+ 6, 60887, 60887, 2999, 2999, // #1485
+ 14, 60902, 60902, 902, 902, // #1486
+ 40, 60928, 60928, 3376, 3376, // #1487
+ 47, 61004, 61004, 3420, 3420, // #1488
+ 9, 61056, 61056, 2016, 2016, // #1489
+ 6, 61079, 61079, 2999, 2999, // #1490
+ 17, 61093, 61093, 917, 917, // #1491
+ 40, 61120, 61120, 3376, 3376, // #1492
+ 47, 61196, 61196, 3420, 3420, // #1493
+ 7, 61248, 61248, 3616, 3616, // #1494
+ 6, 61271, 61271, 2999, 2999, // #1495
+ 18, 61287, 61287, 935, 935, // #1496
+ 40, 61312, 61312, 3376, 3376, // #1497
+ 47, 61388, 61388, 3420, 3420, // #1498
+ 9, 61440, 61440, 3776, 3776, // #1499
+ 6, 61463, 61463, 2999, 2999, // #1500
+ 17, 61514, 61514, 954, 954, // #1501
+ 40, 61568, 61568, 3376, 3376, // #1502
+ 47, 61644, 61644, 3420, 3420, // #1503
+ 8, 61704, 61704, 8, 8, // #1504
+ 6, 61735, 61735, 2999, 2999, // #1505
+ 18, 61756, 61756, 972, 972, // #1506
+ 40, 61824, 61824, 3376, 3376, // #1507
+ 47, 61900, 61900, 3420, 3420, // #1508
+ 11, 61960, 61960, 1816, 1816, // #1509
+ 6, 61991, 61991, 2999, 2999, // #1510
+ 15, 62015, 62015, 991, 991, // #1511
+ 40, 62080, 62080, 3376, 3376, // #1512
+ 47, 62156, 62156, 3420, 3420, // #1513
+ 10, 62208, 62208, 1776, 1776, // #1514
+ 6, 62231, 62231, 2999, 2999, // #1515
+ 15, 62255, 62255, 1007, 1007, // #1516
+ 40, 62272, 62272, 3376, 3376, // #1517
+ 47, 62348, 62348, 3420, 3420, // #1518
+ 1, 62400, 62400, 432, 432, // #1519
+ 3, 62430, 62430, 2734, 2734, // #1520
+ 8, 62448, 62448, 320, 320, // #1521
+ 40, 62464, 62464, 3376, 3376, // #1522
+ 47, 62540, 62540, 3420, 3420, // #1523
+ 11, 62592, 62592, 592, 592, // #1524
+ 6, 62615, 62615, 2999, 2999, // #1525
+ 16, 62671, 62671, 1023, 1023, // #1526
+ 40, 62720, 62720, 3376, 3376, // #1527
+ 47, 62796, 62796, 3420, 3420, // #1528
+ 11, 62856, 62856, 1656, 1656, // #1529
+ 6, 62887, 62887, 2999, 2999, // #1530
+ 19, 62896, 62896, 1040, 1040, // #1531
+ 40, 62976, 62976, 3376, 3376, // #1532
+ 47, 63052, 63052, 3420, 3420, // #1533
+ 8, 63104, 63104, 2256, 2256, // #1534
+ 6, 63127, 63127, 2999, 2999, // #1535
+ 16, 63137, 63137, 849, 849, // #1536
+ 40, 63168, 63168, 3376, 3376, // #1537
+ 47, 63244, 63244, 3420, 3420, // #1538
+ 11, 63304, 63304, 1240, 1240, // #1539
+ 6, 63335, 63335, 2999, 2999, // #1540
+ 18, 63346, 63346, 866, 866, // #1541
+ 40, 63424, 63424, 3376, 3376, // #1542
+ 47, 63500, 63500, 3420, 3420, // #1543
+ 11, 63552, 63552, 2176, 2176, // #1544
+ 6, 63575, 63575, 2999, 2999, // #1545
+ 16, 63621, 63621, 885, 885, // #1546
+ 40, 63680, 63680, 3376, 3376, // #1547
+ 47, 63756, 63756, 3420, 3420, // #1548
+ 8, 63816, 63816, 2216, 2216, // #1549
+ 6, 63847, 63847, 2999, 2999, // #1550
+ 14, 63862, 63862, 902, 902, // #1551
+ 40, 63936, 63936, 3376, 3376, // #1552
+ 47, 64012, 64012, 3420, 3420, // #1553
+ 9, 64072, 64072, 2296, 2296, // #1554
+ 6, 64103, 64103, 2999, 2999, // #1555
+ 17, 64117, 64117, 917, 917, // #1556
+ 40, 64192, 64192, 3376, 3376, // #1557
+ 47, 64268, 64268, 3420, 3420, // #1558
+ 7, 64328, 64328, 1560, 1560, // #1559
+ 6, 64343, 64343, 2999, 2999, // #1560
+ 18, 64359, 64359, 935, 935, // #1561
+ 40, 64384, 64384, 3376, 3376, // #1562
+ 47, 64460, 64460, 3420, 3420, // #1563
+ 9, 64520, 64520, 1720, 1720, // #1564
+ 6, 64551, 64551, 2999, 2999, // #1565
+ 17, 64586, 64586, 954, 954, // #1566
+ 40, 64640, 64640, 3376, 3376, // #1567
+ 47, 64716, 64716, 3420, 3420, // #1568
+ 8, 64768, 64768, 2048, 2048, // #1569
+ 6, 64791, 64791, 2999, 2999, // #1570
+ 18, 64812, 64812, 972, 972, // #1571
+ 40, 64832, 64832, 3376, 3376, // #1572
+ 47, 64908, 64908, 3420, 3420, // #1573
+ 11, 64968, 64968, 2136, 2136, // #1574
+ 6, 64999, 64999, 2999, 2999, // #1575
+ 15, 65023, 65023, 991, 991, // #1576
+ 40, 65088, 65088, 3376, 3376, // #1577
+ 47, 65164, 65164, 3420, 3420, // #1578
+ 10, 65216, 65216, 2096, 2096, // #1579
+ 6, 65239, 65239, 2999, 2999, // #1580
+ 15, 65263, 65263, 1007, 1007, // #1581
+ 40, 65280, 65280, 3376, 3376, // #1582
+ 47, 65356, 65356, 3420, 3420, // #1583
+ 1, 65408, 65408, 432, 432, // #1584
+ 3, 65438, 65438, 2734, 2734, // #1585
+ 8, 65456, 65456, 320, 320, // #1586
+ 40, 65472, 65472, 3376, 3376, // #1587
+ 47, 65548, 65548, 3420, 3420, // #1588
+ 11, 65608, 65608, 2376, 2376, // #1589
+ 6, 65639, 65639, 2999, 2999, // #1590
+ 16, 65679, 65679, 1023, 1023, // #1591
+ 40, 65728, 65728, 3376, 3376, // #1592
+ 47, 65804, 65804, 3420, 3420, // #1593
+ 11, 65864, 65864, 2056, 2056, // #1594
+ 6, 65895, 65895, 2999, 2999, // #1595
+ 19, 65904, 65904, 1040, 1040, // #1596
+ 40, 65984, 65984, 3376, 3376, // #1597
+ 47, 66060, 66060, 3420, 3420, // #1598
+ 8, 66112, 66112, 2576, 2576, // #1599
+ 6, 66135, 66135, 2999, 2999, // #1600
+ 16, 66145, 66145, 849, 849, // #1601
+ 40, 66176, 66176, 3376, 3376, // #1602
+ 47, 66252, 66252, 3420, 3420, // #1603
+ 11, 66304, 66304, 576, 576, // #1604
+ 6, 66327, 66327, 2999, 2999, // #1605
+ 18, 66338, 66338, 866, 866, // #1606
+ 40, 66368, 66368, 3376, 3376, // #1607
+ 47, 66444, 66444, 3420, 3420, // #1608
+ 11, 66496, 66496, 2496, 2496, // #1609
+ 6, 66519, 66519, 2999, 2999, // #1610
+ 16, 66565, 66565, 885, 885, // #1611
+ 40, 66624, 66624, 3376, 3376, // #1612
+ 47, 66700, 66700, 3420, 3420, // #1613
+ 8, 66760, 66760, 2536, 2536, // #1614
+ 6, 66791, 66791, 2999, 2999, // #1615
+ 14, 66806, 66806, 902, 902, // #1616
+ 40, 66880, 66880, 3376, 3376, // #1617
+ 47, 66956, 66956, 3420, 3420, // #1618
+ 9, 67016, 67016, 2616, 2616, // #1619
+ 6, 67047, 67047, 2999, 2999, // #1620
+ 17, 67061, 67061, 917, 917, // #1621
+ 40, 67136, 67136, 3376, 3376, // #1622
+ 47, 67212, 67212, 3420, 3420, // #1623
+ 7, 67264, 67264, 896, 896, // #1624
+ 6, 67287, 67287, 2999, 2999, // #1625
+ 18, 67303, 67303, 935, 935, // #1626
+ 40, 67328, 67328, 3376, 3376, // #1627
+ 47, 67404, 67404, 3420, 3420, // #1628
+ 9, 67456, 67456, 1056, 1056, // #1629
+ 6, 67479, 67479, 2999, 2999, // #1630
+ 17, 67530, 67530, 954, 954, // #1631
+ 40, 67584, 67584, 3376, 3376, // #1632
+ 47, 67660, 67660, 3420, 3420, // #1633
+ 8, 67720, 67720, 1384, 1384, // #1634
+ 6, 67751, 67751, 2999, 2999, // #1635
+ 18, 67772, 67772, 972, 972, // #1636
+ 40, 67840, 67840, 3376, 3376, // #1637
+ 47, 67916, 67916, 3420, 3420, // #1638
+ 11, 67976, 67976, 2456, 2456, // #1639
+ 6, 68007, 68007, 2999, 2999, // #1640
+ 15, 68031, 68031, 991, 991, // #1641
+ 40, 68096, 68096, 3376, 3376, // #1642
+ 47, 68172, 68172, 3420, 3420, // #1643
+ 10, 68224, 68224, 2416, 2416, // #1644
+ 6, 68247, 68247, 2999, 2999, // #1645
+ 15, 68271, 68271, 1007, 1007, // #1646
+ 40, 68288, 68288, 3376, 3376, // #1647
+ 47, 68364, 68364, 3420, 3420, // #1648
+ 1, 68416, 68416, 432, 432, // #1649
+ 3, 68446, 68446, 2734, 2734, // #1650
+ 8, 68464, 68464, 320, 320, // #1651
+ 40, 68480, 68480, 3376, 3376, // #1652
+ 47, 68556, 68556, 3420, 3420, // #1653
+ 11, 68608, 68608, 1056, 1056, // #1654
+ 6, 68631, 68631, 2999, 2999, // #1655
+ 16, 68687, 68687, 1023, 1023, // #1656
+ 40, 68736, 68736, 3376, 3376, // #1657
+ 47, 68812, 68812, 3420, 3420, // #1658
+ 11, 68872, 68872, 1016, 1016, // #1659
+ 6, 68903, 68903, 2999, 2999, // #1660
+ 19, 68912, 68912, 1040, 1040, // #1661
+ 40, 68992, 68992, 3376, 3376, // #1662
+ 47, 69068, 69068, 3420, 3420, // #1663
+ 8, 69120, 69120, 1296, 1296, // #1664
+ 6, 69143, 69143, 2999, 2999, // #1665
+ 16, 69153, 69153, 849, 849, // #1666
+ 40, 69184, 69184, 3376, 3376, // #1667
+ 47, 69260, 69260, 3420, 3420, // #1668
+ 11, 69312, 69312, 1216, 1216, // #1669
+ 6, 69335, 69335, 2999, 2999, // #1670
+ 18, 69346, 69346, 866, 866, // #1671
+ 40, 69376, 69376, 3376, 3376, // #1672
+ 47, 69452, 69452, 3420, 3420, // #1673
+ 11, 69512, 69512, 1176, 1176, // #1674
+ 6, 69543, 69543, 2999, 2999, // #1675
+ 16, 69573, 69573, 885, 885, // #1676
+ 40, 69632, 69632, 3376, 3376, // #1677
+ 47, 69708, 69708, 3420, 3420, // #1678
+ 8, 69768, 69768, 1256, 1256, // #1679
+ 6, 69799, 69799, 2999, 2999, // #1680
+ 14, 69814, 69814, 902, 902, // #1681
+ 40, 69888, 69888, 3376, 3376, // #1682
+ 47, 69964, 69964, 3420, 3420, // #1683
+ 9, 70024, 70024, 1336, 1336, // #1684
+ 6, 70055, 70055, 2999, 2999, // #1685
+ 17, 70069, 70069, 917, 917, // #1686
+ 40, 70144, 70144, 3376, 3376, // #1687
+ 47, 70220, 70220, 3420, 3420, // #1688
+ 7, 70280, 70280, 3624, 3624, // #1689
+ 6, 70295, 70295, 2999, 2999, // #1690
+ 18, 70311, 70311, 935, 935, // #1691
+ 40, 70336, 70336, 3376, 3376, // #1692
+ 47, 70412, 70412, 3420, 3420, // #1693
+ 9, 70472, 70472, 3784, 3784, // #1694
+ 6, 70503, 70503, 2999, 2999, // #1695
+ 17, 70538, 70538, 954, 954, // #1696
+ 40, 70592, 70592, 3376, 3376, // #1697
+ 47, 70668, 70668, 3420, 3420, // #1698
+ 8, 70720, 70720, 16, 16, // #1699
+ 6, 70743, 70743, 2999, 2999, // #1700
+ 18, 70764, 70764, 972, 972, // #1701
+ 40, 70784, 70784, 3376, 3376, // #1702
+ 47, 70860, 70860, 3420, 3420, // #1703
+ 11, 70912, 70912, 1136, 1136, // #1704
+ 6, 70935, 70935, 2999, 2999, // #1705
+ 15, 70959, 70959, 991, 991, // #1706
+ 40, 70976, 70976, 3376, 3376, // #1707
+ 47, 71052, 71052, 3420, 3420, // #1708
+ 10, 71112, 71112, 1096, 1096, // #1709
+ 6, 71143, 71143, 2999, 2999, // #1710
+ 15, 71167, 71167, 1007, 1007, // #1711
+ 40, 71232, 71232, 3376, 3376, // #1712
+ 47, 71308, 71308, 3420, 3420, // #1713
+ 4, 71368, 71368, 248, 248, // #1714
+ 4, 71385, 71385, 2729, 2729, // #1715
+ 6, 71396, 71396, 756, 756, // #1716
+ 40, 71424, 71424, 3376, 3376, // #1717
+ 47, 71500, 71500, 3420, 3420, // #1718
+ 4, 71560, 71560, 3384, 3384, // #1719
+ 4, 71577, 71577, 2729, 2729, // #1720
+ 20, 71584, 71584, 1088, 1088, // #1721
+ 40, 71616, 71616, 3376, 3376, // #1722
+ 47, 71692, 71692, 3420, 3420, // #1723
+ 1, 71744, 71744, 432, 432, // #1724
+ 3, 71774, 71774, 2734, 2734, // #1725
+ 8, 71792, 71792, 320, 320, // #1726
+ 40, 71808, 71808, 3376, 3376, // #1727
+ 47, 71884, 71884, 3420, 3420, // #1728
+ 10, 71936, 71936, 1376, 1376, // #1729
+ 6, 71959, 71959, 2999, 2999, // #1730
+ 16, 72015, 72015, 1023, 1023, // #1731
+ 40, 72064, 72064, 3376, 3376, // #1732
+ 47, 72140, 72140, 3420, 3420, // #1733
+ 10, 72192, 72192, 2128, 2128, // #1734
+ 6, 72215, 72215, 2999, 2999, // #1735
+ 19, 72224, 72224, 1040, 1040, // #1736
+ 40, 72256, 72256, 3376, 3376, // #1737
+ 47, 72332, 72332, 3420, 3420, // #1738
+ 11, 72384, 72384, 240, 240, // #1739
+ 6, 72407, 72407, 2999, 2999, // #1740
+ 16, 72417, 72417, 849, 849, // #1741
+ 40, 72448, 72448, 3376, 3376, // #1742
+ 47, 72524, 72524, 3420, 3420, // #1743
+ 11, 72576, 72576, 1536, 1536, // #1744
+ 6, 72599, 72599, 2999, 2999, // #1745
+ 18, 72610, 72610, 866, 866, // #1746
+ 40, 72640, 72640, 3376, 3376, // #1747
+ 47, 72716, 72716, 3420, 3420, // #1748
+ 11, 72776, 72776, 1496, 1496, // #1749
+ 6, 72807, 72807, 2999, 2999, // #1750
+ 16, 72837, 72837, 885, 885, // #1751
+ 40, 72896, 72896, 3376, 3376, // #1752
+ 47, 72972, 72972, 3420, 3420, // #1753
+ 8, 73032, 73032, 1576, 1576, // #1754
+ 6, 73063, 73063, 2999, 2999, // #1755
+ 14, 73078, 73078, 902, 902, // #1756
+ 40, 73152, 73152, 3376, 3376, // #1757
+ 47, 73228, 73228, 3420, 3420, // #1758
+ 9, 73280, 73280, 1616, 1616, // #1759
+ 6, 73303, 73303, 2999, 2999, // #1760
+ 17, 73317, 73317, 917, 917, // #1761
+ 40, 73344, 73344, 3376, 3376, // #1762
+ 47, 73420, 73420, 3420, 3420, // #1763
+ 9, 73472, 73472, 1568, 1568, // #1764
+ 6, 73495, 73495, 2999, 2999, // #1765
+ 18, 73511, 73511, 935, 935, // #1766
+ 40, 73536, 73536, 3376, 3376, // #1767
+ 47, 73612, 73612, 3420, 3420, // #1768
+ 9, 73672, 73672, 1736, 1736, // #1769
+ 6, 73703, 73703, 2999, 2999, // #1770
+ 17, 73738, 73738, 954, 954, // #1771
+ 40, 73792, 73792, 3376, 3376, // #1772
+ 47, 73868, 73868, 3420, 3420, // #1773
+ 11, 73928, 73928, 2072, 2072, // #1774
+ 6, 73959, 73959, 2999, 2999, // #1775
+ 18, 73980, 73980, 972, 972, // #1776
+ 40, 74048, 74048, 3376, 3376, // #1777
+ 47, 74124, 74124, 3420, 3420, // #1778
+ 11, 74176, 74176, 1456, 1456, // #1779
+ 6, 74199, 74199, 2999, 2999, // #1780
+ 15, 74223, 74223, 991, 991, // #1781
+ 40, 74240, 74240, 3376, 3376, // #1782
+ 47, 74316, 74316, 3420, 3420, // #1783
+ 10, 74376, 74376, 1416, 1416, // #1784
+ 6, 74407, 74407, 2999, 2999, // #1785
+ 15, 74431, 74431, 1007, 1007, // #1786
+ 40, 74496, 74496, 3376, 3376, // #1787
+ 47, 74572, 74572, 3420, 3420, // #1788
+ 1, 74624, 74624, 432, 432, // #1789
+ 3, 74654, 74654, 2734, 2734, // #1790
+ 8, 74672, 74672, 320, 320, // #1791
+ 40, 74688, 74688, 3376, 3376, // #1792
+ 47, 74764, 74764, 3420, 3420, // #1793
+ 11, 74816, 74816, 592, 592, // #1794
+ 6, 74839, 74839, 2999, 2999, // #1795
+ 16, 74895, 74895, 1023, 1023, // #1796
+ 40, 74944, 74944, 3376, 3376, // #1797
+ 47, 75020, 75020, 3420, 3420, // #1798
+ 11, 75080, 75080, 1656, 1656, // #1799
+ 6, 75111, 75111, 2999, 2999, // #1800
+ 19, 75120, 75120, 1040, 1040, // #1801
+ 40, 75200, 75200, 3376, 3376, // #1802
+ 47, 75276, 75276, 3420, 3420, // #1803
+ 8, 75328, 75328, 2256, 2256, // #1804
+ 6, 75351, 75351, 2999, 2999, // #1805
+ 16, 75361, 75361, 849, 849, // #1806
+ 40, 75392, 75392, 3376, 3376, // #1807
+ 47, 75468, 75468, 3420, 3420, // #1808
+ 11, 75528, 75528, 1240, 1240, // #1809
+ 6, 75559, 75559, 2999, 2999, // #1810
+ 18, 75570, 75570, 866, 866, // #1811
+ 40, 75648, 75648, 3376, 3376, // #1812
+ 47, 75724, 75724, 3420, 3420, // #1813
+ 11, 75776, 75776, 2176, 2176, // #1814
+ 6, 75799, 75799, 2999, 2999, // #1815
+ 16, 75845, 75845, 885, 885, // #1816
+ 40, 75904, 75904, 3376, 3376, // #1817
+ 47, 75980, 75980, 3420, 3420, // #1818
+ 8, 76040, 76040, 2216, 2216, // #1819
+ 6, 76071, 76071, 2999, 2999, // #1820
+ 14, 76086, 76086, 902, 902, // #1821
+ 40, 76160, 76160, 3376, 3376, // #1822
+ 47, 76236, 76236, 3420, 3420, // #1823
+ 9, 76296, 76296, 2296, 2296, // #1824
+ 6, 76327, 76327, 2999, 2999, // #1825
+ 17, 76341, 76341, 917, 917, // #1826
+ 40, 76416, 76416, 3376, 3376, // #1827
+ 47, 76492, 76492, 3420, 3420, // #1828
+ 7, 76552, 76552, 1560, 1560, // #1829
+ 6, 76567, 76567, 2999, 2999, // #1830
+ 18, 76583, 76583, 935, 935, // #1831
+ 40, 76608, 76608, 3376, 3376, // #1832
+ 47, 76684, 76684, 3420, 3420, // #1833
+ 9, 76744, 76744, 1720, 1720, // #1834
+ 6, 76775, 76775, 2999, 2999, // #1835
+ 17, 76810, 76810, 954, 954, // #1836
+ 40, 76864, 76864, 3376, 3376, // #1837
+ 47, 76940, 76940, 3420, 3420, // #1838
+ 8, 76992, 76992, 2048, 2048, // #1839
+ 6, 77015, 77015, 2999, 2999, // #1840
+ 18, 77036, 77036, 972, 972, // #1841
+ 40, 77056, 77056, 3376, 3376, // #1842
+ 47, 77132, 77132, 3420, 3420, // #1843
+ 11, 77192, 77192, 2136, 2136, // #1844
+ 6, 77223, 77223, 2999, 2999, // #1845
+ 15, 77247, 77247, 991, 991, // #1846
+ 40, 77312, 77312, 3376, 3376, // #1847
+ 47, 77388, 77388, 3420, 3420, // #1848
+ 10, 77440, 77440, 2096, 2096, // #1849
+ 6, 77463, 77463, 2999, 2999, // #1850
+ 15, 77487, 77487, 1007, 1007, // #1851
+ 40, 77504, 77504, 3376, 3376, // #1852
+ 47, 77580, 77580, 3420, 3420, // #1853
+ 21, 77646, 77646, 734, 734, // #1854
+ 4, 77688, 77688, 248, 248, // #1855
+ 4, 77705, 77705, 2729, 2729, // #1856
+ 6, 77716, 77716, 756, 756, // #1857
+ 40, 77760, 77760, 3376, 3376, // #1858
+ 47, 77836, 77836, 3420, 3420, // #1859
+ 1, 77888, 77888, 544, 544, // #1860
+ 3, 77918, 77918, 2734, 2734, // #1861
+ 15, 77963, 77963, 763, 763, // #1862
+ 40, 78016, 78016, 3376, 3376, // #1863
+ 47, 78092, 78092, 3420, 3420, // #1864
+ 1, 78144, 78144, 3888, 3888, // #1865
+ 3, 78174, 78174, 2734, 2734, // #1866
+ 11, 78203, 78203, 779, 779, // #1867
+ 40, 78272, 78272, 3376, 3376, // #1868
+ 47, 78348, 78348, 3420, 3420, // #1869
+ 1, 78400, 78400, 96, 96, // #1870
+ 3, 78430, 78430, 2734, 2734, // #1871
+ 14, 78455, 78455, 791, 791, // #1872
+ 40, 78528, 78528, 3376, 3376, // #1873
+ 47, 78604, 78604, 3420, 3420, // #1874
+ 1, 78664, 78664, 392, 392, // #1875
+ 6, 78684, 78684, 2764, 2764, // #1876
+ 15, 78710, 78710, 806, 806, // #1877
+ 40, 78784, 78784, 3376, 3376, // #1878
+ 47, 78860, 78860, 3420, 3420, // #1879
+ 5, 78920, 78920, 3736, 3736, // #1880
+ 6, 78940, 78940, 2764, 2764, // #1881
+ 11, 78982, 78982, 822, 822, // #1882
+ 40, 79040, 79040, 3376, 3376, // #1883
+ 47, 79116, 79116, 3420, 3420, // #1884
+ 3, 79176, 79176, 4040, 4040, // #1885
+ 6, 79196, 79196, 2764, 2764, // #1886
+ 14, 79218, 79218, 834, 834, // #1887
+ 40, 79296, 79296, 3376, 3376, // #1888
+ 47, 79372, 79372, 3420, 3420, // #1889
+ 11, 79424, 79424, 3584, 3584, // #1890
+ 6, 79447, 79447, 2999, 2999, // #1891
+ 5, 79471, 79471, 2735, 2735, // #1892
+ 40, 79488, 79488, 3376, 3376, // #1893
+ 47, 79564, 79564, 3420, 3420, // #1894
+ 1, 79616, 79616, 432, 432, // #1895
+ 3, 79646, 79646, 2734, 2734, // #1896
+ 8, 79664, 79664, 320, 320, // #1897
+ 40, 79680, 79680, 3376, 3376, // #1898
+ 47, 79756, 79756, 3420, 3420, // #1899
+ 11, 79816, 79816, 2376, 2376, // #1900
+ 6, 79847, 79847, 2999, 2999, // #1901
+ 16, 79887, 79887, 1023, 1023, // #1902
+ 40, 79936, 79936, 3376, 3376, // #1903
+ 47, 80012, 80012, 3420, 3420, // #1904
+ 11, 80072, 80072, 2056, 2056, // #1905
+ 6, 80103, 80103, 2999, 2999, // #1906
+ 19, 80112, 80112, 1040, 1040, // #1907
+ 40, 80192, 80192, 3376, 3376, // #1908
+ 47, 80268, 80268, 3420, 3420, // #1909
+ 8, 80320, 80320, 2576, 2576, // #1910
+ 6, 80343, 80343, 2999, 2999, // #1911
+ 16, 80353, 80353, 849, 849, // #1912
+ 40, 80384, 80384, 3376, 3376, // #1913
+ 47, 80460, 80460, 3420, 3420, // #1914
+ 11, 80512, 80512, 576, 576, // #1915
+ 6, 80535, 80535, 2999, 2999, // #1916
+ 18, 80546, 80546, 866, 866, // #1917
+ 40, 80576, 80576, 3376, 3376, // #1918
+ 47, 80652, 80652, 3420, 3420, // #1919
+ 11, 80704, 80704, 2496, 2496, // #1920
+ 6, 80727, 80727, 2999, 2999, // #1921
+ 16, 80773, 80773, 885, 885, // #1922
+ 40, 80832, 80832, 3376, 3376, // #1923
+ 47, 80908, 80908, 3420, 3420, // #1924
+ 8, 80968, 80968, 2536, 2536, // #1925
+ 6, 80999, 80999, 2999, 2999, // #1926
+ 14, 81014, 81014, 902, 902, // #1927
+ 40, 81088, 81088, 3376, 3376, // #1928
+ 47, 81164, 81164, 3420, 3420, // #1929
+ 9, 81224, 81224, 2616, 2616, // #1930
+ 6, 81255, 81255, 2999, 2999, // #1931
+ 17, 81269, 81269, 917, 917, // #1932
+ 40, 81344, 81344, 3376, 3376, // #1933
+ 47, 81420, 81420, 3420, 3420, // #1934
+ 7, 81472, 81472, 896, 896, // #1935
+ 6, 81495, 81495, 2999, 2999, // #1936
+ 18, 81511, 81511, 935, 935, // #1937
+ 40, 81536, 81536, 3376, 3376, // #1938
+ 47, 81612, 81612, 3420, 3420, // #1939
+ 9, 81664, 81664, 1056, 1056, // #1940
+ 6, 81687, 81687, 2999, 2999, // #1941
+ 17, 81738, 81738, 954, 954, // #1942
+ 40, 81792, 81792, 3376, 3376, // #1943
+ 47, 81868, 81868, 3420, 3420, // #1944
+ 8, 81928, 81928, 1384, 1384, // #1945
+ 6, 81959, 81959, 2999, 2999, // #1946
+ 18, 81980, 81980, 972, 972, // #1947
+ 40, 82048, 82048, 3376, 3376, // #1948
+ 47, 82124, 82124, 3420, 3420, // #1949
+ 11, 82184, 82184, 2456, 2456, // #1950
+ 6, 82215, 82215, 2999, 2999, // #1951
+ 15, 82239, 82239, 991, 991, // #1952
+ 40, 82304, 82304, 3376, 3376, // #1953
+ 47, 82380, 82380, 3420, 3420, // #1954
+ 10, 82432, 82432, 2416, 2416, // #1955
+ 6, 82455, 82455, 2999, 2999, // #1956
+ 15, 82479, 82479, 1007, 1007, // #1957
+ 40, 82496, 82496, 3376, 3376, // #1958
+ 47, 82572, 82572, 3420, 3420, // #1959
+ 21, 82638, 82638, 734, 734, // #1960
+ 4, 82680, 82680, 248, 248, // #1961
+ 4, 82697, 82697, 2729, 2729, // #1962
+ 6, 82708, 82708, 756, 756, // #1963
+ 40, 82752, 82752, 3376, 3376, // #1964
+ 47, 82828, 82828, 3420, 3420, // #1965
+ 1, 82880, 82880, 544, 544, // #1966
+ 3, 82910, 82910, 2734, 2734, // #1967
+ 15, 82955, 82955, 763, 763, // #1968
+ 40, 83008, 83008, 3376, 3376, // #1969
+ 47, 83084, 83084, 3420, 3420, // #1970
+ 1, 83136, 83136, 3888, 3888, // #1971
+ 3, 83166, 83166, 2734, 2734, // #1972
+ 11, 83195, 83195, 779, 779, // #1973
+ 40, 83264, 83264, 3376, 3376, // #1974
+ 47, 83340, 83340, 3420, 3420, // #1975
+ 1, 83392, 83392, 96, 96, // #1976
+ 3, 83422, 83422, 2734, 2734, // #1977
+ 14, 83447, 83447, 791, 791, // #1978
+ 40, 83520, 83520, 3376, 3376, // #1979
+ 47, 83596, 83596, 3420, 3420, // #1980
+ 1, 83656, 83656, 392, 392, // #1981
+ 6, 83676, 83676, 2764, 2764, // #1982
+ 15, 83702, 83702, 806, 806, // #1983
+ 40, 83776, 83776, 3376, 3376, // #1984
+ 47, 83852, 83852, 3420, 3420, // #1985
+ 5, 83912, 83912, 3736, 3736, // #1986
+ 6, 83932, 83932, 2764, 2764, // #1987
+ 11, 83974, 83974, 822, 822, // #1988
+ 40, 84032, 84032, 3376, 3376, // #1989
+ 47, 84108, 84108, 3420, 3420, // #1990
+ 3, 84168, 84168, 4040, 4040, // #1991
+ 6, 84188, 84188, 2764, 2764, // #1992
+ 14, 84210, 84210, 834, 834, // #1993
+ 40, 84288, 84288, 3376, 3376, // #1994
+ 47, 84364, 84364, 3420, 3420, // #1995
+ 11, 84416, 84416, 3584, 3584, // #1996
+ 6, 84439, 84439, 2999, 2999, // #1997
+ 5, 84463, 84463, 2735, 2735, // #1998
+ 40, 84480, 84480, 3376, 3376, // #1999
+ 47, 84556, 84556, 3420, 3420, // #2000
+ 1, 84608, 84608, 432, 432, // #2001
+ 3, 84638, 84638, 2734, 2734, // #2002
+ 8, 84656, 84656, 320, 320, // #2003
+ 40, 84672, 84672, 3376, 3376, // #2004
+ 47, 84748, 84748, 3420, 3420, // #2005
+ 11, 84800, 84800, 1056, 1056, // #2006
+ 6, 84823, 84823, 2999, 2999, // #2007
+ 16, 84879, 84879, 1023, 1023, // #2008
+ 40, 84928, 84928, 3376, 3376, // #2009
+ 47, 85004, 85004, 3420, 3420, // #2010
+ 11, 85064, 85064, 1016, 1016, // #2011
+ 6, 85095, 85095, 2999, 2999, // #2012
+ 19, 85104, 85104, 1040, 1040, // #2013
+ 40, 85184, 85184, 3376, 3376, // #2014
+ 47, 85260, 85260, 3420, 3420, // #2015
+ 8, 85312, 85312, 1296, 1296, // #2016
+ 6, 85335, 85335, 2999, 2999, // #2017
+ 16, 85345, 85345, 849, 849, // #2018
+ 40, 85376, 85376, 3376, 3376, // #2019
+ 47, 85452, 85452, 3420, 3420, // #2020
+ 11, 85504, 85504, 1216, 1216, // #2021
+ 6, 85527, 85527, 2999, 2999, // #2022
+ 18, 85538, 85538, 866, 866, // #2023
+ 40, 85568, 85568, 3376, 3376, // #2024
+ 47, 85644, 85644, 3420, 3420, // #2025
+ 11, 85704, 85704, 1176, 1176, // #2026
+ 6, 85735, 85735, 2999, 2999, // #2027
+ 16, 85765, 85765, 885, 885, // #2028
+ 40, 85824, 85824, 3376, 3376, // #2029
+ 47, 85900, 85900, 3420, 3420, // #2030
+ 8, 85960, 85960, 1256, 1256, // #2031
+ 6, 85991, 85991, 2999, 2999, // #2032
+ 14, 86006, 86006, 902, 902, // #2033
+ 40, 86080, 86080, 3376, 3376, // #2034
+ 47, 86156, 86156, 3420, 3420, // #2035
+ 9, 86216, 86216, 1336, 1336, // #2036
+ 6, 86247, 86247, 2999, 2999, // #2037
+ 17, 86261, 86261, 917, 917, // #2038
+ 40, 86336, 86336, 3376, 3376, // #2039
+ 47, 86412, 86412, 3420, 3420, // #2040
+ 7, 86472, 86472, 3624, 3624, // #2041
+ 6, 86487, 86487, 2999, 2999, // #2042
+ 18, 86503, 86503, 935, 935, // #2043
+ 40, 86528, 86528, 3376, 3376, // #2044
+ 47, 86604, 86604, 3420, 3420, // #2045
+ 9, 86664, 86664, 3784, 3784, // #2046
+ 6, 86695, 86695, 2999, 2999, // #2047
+ 17, 86730, 86730, 954, 954, // #2048
+ 40, 86784, 86784, 3376, 3376, // #2049
+ 47, 86860, 86860, 3420, 3420, // #2050
+ 8, 86912, 86912, 16, 16, // #2051
+ 6, 86935, 86935, 2999, 2999, // #2052
+ 18, 86956, 86956, 972, 972, // #2053
+ 40, 86976, 86976, 3376, 3376, // #2054
+ 47, 87052, 87052, 3420, 3420, // #2055
+ 11, 87104, 87104, 1136, 1136, // #2056
+ 6, 87127, 87127, 2999, 2999, // #2057
+ 15, 87151, 87151, 991, 991, // #2058
+ 40, 87168, 87168, 3376, 3376, // #2059
+ 47, 87244, 87244, 3420, 3420, // #2060
+ 10, 87304, 87304, 1096, 1096, // #2061
+ 6, 87335, 87335, 2999, 2999, // #2062
+ 15, 87359, 87359, 1007, 1007, // #2063
+ 40, 87424, 87424, 3376, 3376, // #2064
+ 47, 87500, 87500, 3420, 3420, // #2065
+ 21, 87566, 87566, 734, 734, // #2066
+ 4, 87608, 87608, 248, 248, // #2067
+ 4, 87625, 87625, 2729, 2729, // #2068
+ 6, 87636, 87636, 756, 756, // #2069
+ 40, 87680, 87680, 3376, 3376, // #2070
+ 47, 87756, 87756, 3420, 3420, // #2071
+ 1, 87808, 87808, 544, 544, // #2072
+ 3, 87838, 87838, 2734, 2734, // #2073
+ 15, 87883, 87883, 763, 763, // #2074
+ 40, 87936, 87936, 3376, 3376, // #2075
+ 47, 88012, 88012, 3420, 3420, // #2076
+ 1, 88064, 88064, 3888, 3888, // #2077
+ 3, 88094, 88094, 2734, 2734, // #2078
+ 11, 88123, 88123, 779, 779, // #2079
+ 40, 88192, 88192, 3376, 3376, // #2080
+ 47, 88268, 88268, 3420, 3420, // #2081
+ 1, 88320, 88320, 96, 96, // #2082
+ 3, 88350, 88350, 2734, 2734, // #2083
+ 14, 88375, 88375, 791, 791, // #2084
+ 40, 88448, 88448, 3376, 3376, // #2085
+ 47, 88524, 88524, 3420, 3420, // #2086
+ 1, 88584, 88584, 392, 392, // #2087
+ 6, 88604, 88604, 2764, 2764, // #2088
+ 15, 88630, 88630, 806, 806, // #2089
+ 40, 88704, 88704, 3376, 3376, // #2090
+ 47, 88780, 88780, 3420, 3420, // #2091
+ 5, 88840, 88840, 3736, 3736, // #2092
+ 6, 88860, 88860, 2764, 2764, // #2093
+ 11, 88902, 88902, 822, 822, // #2094
+ 40, 88960, 88960, 3376, 3376, // #2095
+ 47, 89036, 89036, 3420, 3420, // #2096
+ 3, 89096, 89096, 4040, 4040, // #2097
+ 6, 89116, 89116, 2764, 2764, // #2098
+ 14, 89138, 89138, 834, 834, // #2099
+ 40, 89216, 89216, 3376, 3376, // #2100
+ 47, 89292, 89292, 3420, 3420, // #2101
+ 11, 89344, 89344, 3584, 3584, // #2102
+ 6, 89367, 89367, 2999, 2999, // #2103
+ 5, 89391, 89391, 2735, 2735, // #2104
+ 40, 89408, 89408, 3376, 3376, // #2105
+ 47, 89484, 89484, 3420, 3420, // #2106
+ 4, 89544, 89544, 248, 248, // #2107
+ 4, 89561, 89561, 2729, 2729, // #2108
+ 6, 89572, 89572, 756, 756, // #2109
+ 40, 89600, 89600, 3376, 3376, // #2110
+ 47, 89676, 89676, 3420, 3420, // #2111
+ 4, 89736, 89736, 3384, 3384, // #2112
+ 4, 89753, 89753, 2729, 2729, // #2113
+ 20, 89760, 89760, 1088, 1088, // #2114
+ 40, 89792, 89792, 3376, 3376, // #2115
+ 47, 89868, 89868, 3420, 3420, // #2116
+ 4, 89928, 89928, 248, 248, // #2117
+ 4, 89945, 89945, 2729, 2729, // #2118
+ 6, 89956, 89956, 756, 756, // #2119
+ 40, 89984, 89984, 3376, 3376, // #2120
+ 47, 90060, 90060, 3420, 3420, // #2121
+ 4, 90120, 90120, 3384, 3384, // #2122
+ 4, 90137, 90137, 2729, 2729, // #2123
+ 20, 90144, 90144, 1088, 1088, // #2124
+ 40, 90176, 90176, 3376, 3376, // #2125
+ 47, 90252, 90252, 3420, 3420, // #2126
+ 1, 90304, 90304, 432, 432, // #2127
+ 3, 90334, 90334, 2734, 2734, // #2128
+ 8, 90352, 90352, 320, 320, // #2129
+ 40, 90368, 90368, 3376, 3376, // #2130
+ 47, 90444, 90444, 3420, 3420, // #2131
+ 10, 90496, 90496, 1376, 1376, // #2132
+ 6, 90519, 90519, 2999, 2999, // #2133
+ 16, 90575, 90575, 1023, 1023, // #2134
+ 40, 90624, 90624, 3376, 3376, // #2135
+ 47, 90700, 90700, 3420, 3420, // #2136
+ 10, 90752, 90752, 2128, 2128, // #2137
+ 6, 90775, 90775, 2999, 2999, // #2138
+ 19, 90784, 90784, 1040, 1040, // #2139
+ 40, 90816, 90816, 3376, 3376, // #2140
+ 47, 90892, 90892, 3420, 3420, // #2141
+ 11, 90944, 90944, 240, 240, // #2142
+ 6, 90967, 90967, 2999, 2999, // #2143
+ 16, 90977, 90977, 849, 849, // #2144
+ 40, 91008, 91008, 3376, 3376, // #2145
+ 47, 91084, 91084, 3420, 3420, // #2146
+ 11, 91136, 91136, 1536, 1536, // #2147
+ 6, 91159, 91159, 2999, 2999, // #2148
+ 18, 91170, 91170, 866, 866, // #2149
+ 40, 91200, 91200, 3376, 3376, // #2150
+ 47, 91276, 91276, 3420, 3420, // #2151
+ 11, 91336, 91336, 1496, 1496, // #2152
+ 6, 91367, 91367, 2999, 2999, // #2153
+ 16, 91397, 91397, 885, 885, // #2154
+ 40, 91456, 91456, 3376, 3376, // #2155
+ 47, 91532, 91532, 3420, 3420, // #2156
+ 8, 91592, 91592, 1576, 1576, // #2157
+ 6, 91623, 91623, 2999, 2999, // #2158
+ 14, 91638, 91638, 902, 902, // #2159
+ 40, 91712, 91712, 3376, 3376, // #2160
+ 47, 91788, 91788, 3420, 3420, // #2161
+ 9, 91840, 91840, 1616, 1616, // #2162
+ 6, 91863, 91863, 2999, 2999, // #2163
+ 17, 91877, 91877, 917, 917, // #2164
+ 40, 91904, 91904, 3376, 3376, // #2165
+ 47, 91980, 91980, 3420, 3420, // #2166
+ 9, 92032, 92032, 1568, 1568, // #2167
+ 6, 92055, 92055, 2999, 2999, // #2168
+ 18, 92071, 92071, 935, 935, // #2169
+ 40, 92096, 92096, 3376, 3376, // #2170
+ 47, 92172, 92172, 3420, 3420, // #2171
+ 9, 92232, 92232, 1736, 1736, // #2172
+ 6, 92263, 92263, 2999, 2999, // #2173
+ 17, 92298, 92298, 954, 954, // #2174
+ 40, 92352, 92352, 3376, 3376, // #2175
+ 47, 92428, 92428, 3420, 3420, // #2176
+ 11, 92488, 92488, 2072, 2072, // #2177
+ 6, 92519, 92519, 2999, 2999, // #2178
+ 18, 92540, 92540, 972, 972, // #2179
+ 40, 92608, 92608, 3376, 3376, // #2180
+ 47, 92684, 92684, 3420, 3420, // #2181
+ 11, 92736, 92736, 1456, 1456, // #2182
+ 6, 92759, 92759, 2999, 2999, // #2183
+ 15, 92783, 92783, 991, 991, // #2184
+ 40, 92800, 92800, 3376, 3376, // #2185
+ 47, 92876, 92876, 3420, 3420, // #2186
+ 10, 92936, 92936, 1416, 1416, // #2187
+ 6, 92967, 92967, 2999, 2999, // #2188
+ 15, 92991, 92991, 1007, 1007, // #2189
+ 40, 93056, 93056, 3376, 3376, // #2190
+ 47, 93132, 93132, 3420, 3420, // #2191
+ 1, 93184, 93184, 432, 432, // #2192
+ 3, 93214, 93214, 2734, 2734, // #2193
+ 8, 93232, 93232, 320, 320, // #2194
+ 40, 93248, 93248, 3376, 3376, // #2195
+ 47, 93324, 93324, 3420, 3420, // #2196
+ 11, 93384, 93384, 2376, 2376, // #2197
+ 6, 93415, 93415, 2999, 2999, // #2198
+ 16, 93455, 93455, 1023, 1023, // #2199
+ 40, 93504, 93504, 3376, 3376, // #2200
+ 47, 93580, 93580, 3420, 3420, // #2201
+ 11, 93640, 93640, 2056, 2056, // #2202
+ 6, 93671, 93671, 2999, 2999, // #2203
+ 19, 93680, 93680, 1040, 1040, // #2204
+ 40, 93760, 93760, 3376, 3376, // #2205
+ 47, 93836, 93836, 3420, 3420, // #2206
+ 8, 93888, 93888, 2576, 2576, // #2207
+ 6, 93911, 93911, 2999, 2999, // #2208
+ 16, 93921, 93921, 849, 849, // #2209
+ 40, 93952, 93952, 3376, 3376, // #2210
+ 47, 94028, 94028, 3420, 3420, // #2211
+ 11, 94080, 94080, 576, 576, // #2212
+ 6, 94103, 94103, 2999, 2999, // #2213
+ 18, 94114, 94114, 866, 866, // #2214
+ 40, 94144, 94144, 3376, 3376, // #2215
+ 47, 94220, 94220, 3420, 3420, // #2216
+ 11, 94272, 94272, 2496, 2496, // #2217
+ 6, 94295, 94295, 2999, 2999, // #2218
+ 16, 94341, 94341, 885, 885, // #2219
+ 40, 94400, 94400, 3376, 3376, // #2220
+ 47, 94476, 94476, 3420, 3420, // #2221
+ 8, 94536, 94536, 2536, 2536, // #2222
+ 6, 94567, 94567, 2999, 2999, // #2223
+ 14, 94582, 94582, 902, 902, // #2224
+ 40, 94656, 94656, 3376, 3376, // #2225
+ 47, 94732, 94732, 3420, 3420, // #2226
+ 9, 94792, 94792, 2616, 2616, // #2227
+ 6, 94823, 94823, 2999, 2999, // #2228
+ 17, 94837, 94837, 917, 917, // #2229
+ 40, 94912, 94912, 3376, 3376, // #2230
+ 47, 94988, 94988, 3420, 3420, // #2231
+ 7, 95040, 95040, 896, 896, // #2232
+ 6, 95063, 95063, 2999, 2999, // #2233
+ 18, 95079, 95079, 935, 935, // #2234
+ 40, 95104, 95104, 3376, 3376, // #2235
+ 47, 95180, 95180, 3420, 3420, // #2236
+ 9, 95232, 95232, 1056, 1056, // #2237
+ 6, 95255, 95255, 2999, 2999, // #2238
+ 17, 95306, 95306, 954, 954, // #2239
+ 40, 95360, 95360, 3376, 3376, // #2240
+ 47, 95436, 95436, 3420, 3420, // #2241
+ 8, 95496, 95496, 1384, 1384, // #2242
+ 6, 95527, 95527, 2999, 2999, // #2243
+ 18, 95548, 95548, 972, 972, // #2244
+ 40, 95616, 95616, 3376, 3376, // #2245
+ 47, 95692, 95692, 3420, 3420, // #2246
+ 11, 95752, 95752, 2456, 2456, // #2247
+ 6, 95783, 95783, 2999, 2999, // #2248
+ 15, 95807, 95807, 991, 991, // #2249
+ 40, 95872, 95872, 3376, 3376, // #2250
+ 47, 95948, 95948, 3420, 3420, // #2251
+ 10, 96000, 96000, 2416, 2416, // #2252
+ 6, 96023, 96023, 2999, 2999, // #2253
+ 15, 96047, 96047, 1007, 1007, // #2254
+ 40, 96064, 96064, 3376, 3376, // #2255
+ 47, 96140, 96140, 3420, 3420, // #2256
+ 21, 96206, 96206, 734, 734, // #2257
+ 4, 96248, 96248, 248, 248, // #2258
+ 4, 96265, 96265, 2729, 2729, // #2259
+ 6, 96276, 96276, 756, 756, // #2260
+ 40, 96320, 96320, 3376, 3376, // #2261
+ 47, 96396, 96396, 3420, 3420, // #2262
+ 1, 96448, 96448, 544, 544, // #2263
+ 3, 96478, 96478, 2734, 2734, // #2264
+ 15, 96523, 96523, 763, 763, // #2265
+ 40, 96576, 96576, 3376, 3376, // #2266
+ 47, 96652, 96652, 3420, 3420, // #2267
+ 1, 96704, 96704, 3888, 3888, // #2268
+ 3, 96734, 96734, 2734, 2734, // #2269
+ 11, 96763, 96763, 779, 779, // #2270
+ 40, 96832, 96832, 3376, 3376, // #2271
+ 47, 96908, 96908, 3420, 3420, // #2272
+ 1, 96960, 96960, 96, 96, // #2273
+ 3, 96990, 96990, 2734, 2734, // #2274
+ 14, 97015, 97015, 791, 791, // #2275
+ 40, 97088, 97088, 3376, 3376, // #2276
+ 47, 97164, 97164, 3420, 3420, // #2277
+ 1, 97224, 97224, 392, 392, // #2278
+ 6, 97244, 97244, 2764, 2764, // #2279
+ 15, 97270, 97270, 806, 806, // #2280
+ 40, 97344, 97344, 3376, 3376, // #2281
+ 47, 97420, 97420, 3420, 3420, // #2282
+ 5, 97480, 97480, 3736, 3736, // #2283
+ 6, 97500, 97500, 2764, 2764, // #2284
+ 11, 97542, 97542, 822, 822, // #2285
+ 40, 97600, 97600, 3376, 3376, // #2286
+ 47, 97676, 97676, 3420, 3420, // #2287
+ 3, 97736, 97736, 4040, 4040, // #2288
+ 6, 97756, 97756, 2764, 2764, // #2289
+ 14, 97778, 97778, 834, 834, // #2290
+ 40, 97856, 97856, 3376, 3376, // #2291
+ 47, 97932, 97932, 3420, 3420, // #2292
+ 11, 97984, 97984, 3584, 3584, // #2293
+ 6, 98007, 98007, 2999, 2999, // #2294
+ 5, 98031, 98031, 2735, 2735, // #2295
+ 40, 98048, 98048, 3376, 3376, // #2296
+ 47, 98124, 98124, 3420, 3420, // #2297
+ 1, 98176, 98176, 432, 432, // #2298
+ 3, 98206, 98206, 2734, 2734, // #2299
+ 8, 98224, 98224, 320, 320, // #2300
+ 40, 98240, 98240, 3376, 3376, // #2301
+ 47, 98316, 98316, 3420, 3420, // #2302
+ 11, 98368, 98368, 592, 592, // #2303
+ 6, 98391, 98391, 2999, 2999, // #2304
+ 16, 98447, 98447, 1023, 1023, // #2305
+ 40, 98496, 98496, 3376, 3376, // #2306
+ 47, 98572, 98572, 3420, 3420, // #2307
+ 11, 98632, 98632, 1656, 1656, // #2308
+ 6, 98663, 98663, 2999, 2999, // #2309
+ 19, 98672, 98672, 1040, 1040, // #2310
+ 40, 98752, 98752, 3376, 3376, // #2311
+ 47, 98828, 98828, 3420, 3420, // #2312
+ 8, 98880, 98880, 2256, 2256, // #2313
+ 6, 98903, 98903, 2999, 2999, // #2314
+ 16, 98913, 98913, 849, 849, // #2315
+ 40, 98944, 98944, 3376, 3376, // #2316
+ 47, 99020, 99020, 3420, 3420, // #2317
+ 11, 99080, 99080, 1240, 1240, // #2318
+ 6, 99111, 99111, 2999, 2999, // #2319
+ 18, 99122, 99122, 866, 866, // #2320
+ 40, 99200, 99200, 3376, 3376, // #2321
+ 47, 99276, 99276, 3420, 3420, // #2322
+ 11, 99328, 99328, 2176, 2176, // #2323
+ 6, 99351, 99351, 2999, 2999, // #2324
+ 16, 99397, 99397, 885, 885, // #2325
+ 40, 99456, 99456, 3376, 3376, // #2326
+ 47, 99532, 99532, 3420, 3420, // #2327
+ 8, 99592, 99592, 2216, 2216, // #2328
+ 6, 99623, 99623, 2999, 2999, // #2329
+ 14, 99638, 99638, 902, 902, // #2330
+ 40, 99712, 99712, 3376, 3376, // #2331
+ 47, 99788, 99788, 3420, 3420, // #2332
+ 9, 99848, 99848, 2296, 2296, // #2333
+ 6, 99879, 99879, 2999, 2999, // #2334
+ 17, 99893, 99893, 917, 917, // #2335
+ 40, 99968, 99968, 3376, 3376, // #2336
+ 47, 100044, 100044, 3420, 3420, // #2337
+ 7, 100104, 100104, 1560, 1560, // #2338
+ 6, 100119, 100119, 2999, 2999, // #2339
+ 18, 100135, 100135, 935, 935, // #2340
+ 40, 100160, 100160, 3376, 3376, // #2341
+ 47, 100236, 100236, 3420, 3420, // #2342
+ 9, 100296, 100296, 1720, 1720, // #2343
+ 6, 100327, 100327, 2999, 2999, // #2344
+ 17, 100362, 100362, 954, 954, // #2345
+ 40, 100416, 100416, 3376, 3376, // #2346
+ 47, 100492, 100492, 3420, 3420, // #2347
+ 8, 100544, 100544, 2048, 2048, // #2348
+ 6, 100567, 100567, 2999, 2999, // #2349
+ 18, 100588, 100588, 972, 972, // #2350
+ 40, 100608, 100608, 3376, 3376, // #2351
+ 47, 100684, 100684, 3420, 3420, // #2352
+ 11, 100744, 100744, 2136, 2136, // #2353
+ 6, 100775, 100775, 2999, 2999, // #2354
+ 15, 100799, 100799, 991, 991, // #2355
+ 40, 100864, 100864, 3376, 3376, // #2356
+ 47, 100940, 100940, 3420, 3420, // #2357
+ 10, 100992, 100992, 2096, 2096, // #2358
+ 6, 101015, 101015, 2999, 2999, // #2359
+ 15, 101039, 101039, 1007, 1007, // #2360
+ 40, 101056, 101056, 3376, 3376, // #2361
+ 47, 101132, 101132, 3420, 3420, // #2362
+ 21, 101192, 101192, 712, 712, // #2363
+ 1, 101224, 101224, 3176, 3176, // #2364
+ 3, 101246, 101246, 2734, 2734, // #2365
+ 15, 101323, 101323, 763, 763, // #2366
+ 40, 101376, 101376, 3376, 3376, // #2367
+ 47, 101452, 101452, 3420, 3420, // #2368
+ 1, 101504, 101504, 1136, 1136, // #2369
+ 3, 101534, 101534, 2734, 2734, // #2370
+ 11, 101563, 101563, 779, 779, // #2371
+ 40, 101632, 101632, 3376, 3376, // #2372
+ 47, 101708, 101708, 3420, 3420, // #2373
+ 1, 101768, 101768, 2872, 2872, // #2374
+ 3, 101790, 101790, 2734, 2734, // #2375
+ 14, 101815, 101815, 791, 791, // #2376
+ 40, 101888, 101888, 3376, 3376, // #2377
+ 47, 101964, 101964, 3420, 3420, // #2378
+ 3, 102016, 102016, 3024, 3024, // #2379
+ 6, 102044, 102044, 2764, 2764, // #2380
+ 15, 102070, 102070, 806, 806, // #2381
+ 40, 102144, 102144, 3376, 3376, // #2382
+ 47, 102220, 102220, 3420, 3420, // #2383
+ 1, 102280, 102280, 984, 984, // #2384
+ 6, 102300, 102300, 2764, 2764, // #2385
+ 11, 102342, 102342, 822, 822, // #2386
+ 40, 102400, 102400, 3376, 3376, // #2387
+ 47, 102476, 102476, 3420, 3420, // #2388
+ 4, 102528, 102528, 2720, 2720, // #2389
+ 6, 102556, 102556, 2764, 2764, // #2390
+ 14, 102578, 102578, 834, 834, // #2391
+ 40, 102656, 102656, 3376, 3376, // #2392
+ 47, 102732, 102732, 3420, 3420, // #2393
+ 1, 102784, 102784, 432, 432, // #2394
+ 3, 102814, 102814, 2734, 2734, // #2395
+ 8, 102832, 102832, 320, 320, // #2396
+ 40, 102848, 102848, 3376, 3376, // #2397
+ 47, 102924, 102924, 3420, 3420, // #2398
+ 11, 102984, 102984, 2376, 2376, // #2399
+ 6, 103015, 103015, 2999, 2999, // #2400
+ 16, 103055, 103055, 1023, 1023, // #2401
+ 40, 103104, 103104, 3376, 3376, // #2402
+ 47, 103180, 103180, 3420, 3420, // #2403
+ 11, 103240, 103240, 2056, 2056, // #2404
+ 6, 103271, 103271, 2999, 2999, // #2405
+ 19, 103280, 103280, 1040, 1040, // #2406
+ 40, 103360, 103360, 3376, 3376, // #2407
+ 47, 103436, 103436, 3420, 3420, // #2408
+ 8, 103488, 103488, 2576, 2576, // #2409
+ 6, 103511, 103511, 2999, 2999, // #2410
+ 16, 103521, 103521, 849, 849, // #2411
+ 40, 103552, 103552, 3376, 3376, // #2412
+ 47, 103628, 103628, 3420, 3420, // #2413
+ 11, 103680, 103680, 576, 576, // #2414
+ 6, 103703, 103703, 2999, 2999, // #2415
+ 18, 103714, 103714, 866, 866, // #2416
+ 40, 103744, 103744, 3376, 3376, // #2417
+ 47, 103820, 103820, 3420, 3420, // #2418
+ 11, 103872, 103872, 2496, 2496, // #2419
+ 6, 103895, 103895, 2999, 2999, // #2420
+ 16, 103941, 103941, 885, 885, // #2421
+ 40, 104000, 104000, 3376, 3376, // #2422
+ 47, 104076, 104076, 3420, 3420, // #2423
+ 8, 104136, 104136, 2536, 2536, // #2424
+ 6, 104167, 104167, 2999, 2999, // #2425
+ 14, 104182, 104182, 902, 902, // #2426
+ 40, 104256, 104256, 3376, 3376, // #2427
+ 47, 104332, 104332, 3420, 3420, // #2428
+ 9, 104392, 104392, 2616, 2616, // #2429
+ 6, 104423, 104423, 2999, 2999, // #2430
+ 17, 104437, 104437, 917, 917, // #2431
+ 40, 104512, 104512, 3376, 3376, // #2432
+ 47, 104588, 104588, 3420, 3420, // #2433
+ 7, 104640, 104640, 896, 896, // #2434
+ 6, 104663, 104663, 2999, 2999, // #2435
+ 18, 104679, 104679, 935, 935, // #2436
+ 40, 104704, 104704, 3376, 3376, // #2437
+ 47, 104780, 104780, 3420, 3420, // #2438
+ 9, 104832, 104832, 1056, 1056, // #2439
+ 6, 104855, 104855, 2999, 2999, // #2440
+ 17, 104906, 104906, 954, 954, // #2441
+ 40, 104960, 104960, 3376, 3376, // #2442
+ 47, 105036, 105036, 3420, 3420, // #2443
+ 8, 105096, 105096, 1384, 1384, // #2444
+ 6, 105127, 105127, 2999, 2999, // #2445
+ 18, 105148, 105148, 972, 972, // #2446
+ 40, 105216, 105216, 3376, 3376, // #2447
+ 47, 105292, 105292, 3420, 3420, // #2448
+ 11, 105352, 105352, 2456, 2456, // #2449
+ 6, 105383, 105383, 2999, 2999, // #2450
+ 15, 105407, 105407, 991, 991, // #2451
+ 40, 105472, 105472, 3376, 3376, // #2452
+ 47, 105548, 105548, 3420, 3420, // #2453
+ 10, 105600, 105600, 2416, 2416, // #2454
+ 6, 105623, 105623, 2999, 2999, // #2455
+ 15, 105647, 105647, 1007, 1007, // #2456
+ 40, 105664, 105664, 3376, 3376, // #2457
+ 47, 105740, 105740, 3420, 3420, // #2458
+ 21, 105800, 105800, 712, 712, // #2459
+ 1, 105832, 105832, 3176, 3176, // #2460
+ 3, 105854, 105854, 2734, 2734, // #2461
+ 15, 105931, 105931, 763, 763, // #2462
+ 40, 105984, 105984, 3376, 3376, // #2463
+ 47, 106060, 106060, 3420, 3420, // #2464
+ 1, 106112, 106112, 1136, 1136, // #2465
+ 3, 106142, 106142, 2734, 2734, // #2466
+ 11, 106171, 106171, 779, 779, // #2467
+ 40, 106240, 106240, 3376, 3376, // #2468
+ 47, 106316, 106316, 3420, 3420, // #2469
+ 1, 106376, 106376, 2872, 2872, // #2470
+ 3, 106398, 106398, 2734, 2734, // #2471
+ 14, 106423, 106423, 791, 791, // #2472
+ 40, 106496, 106496, 3376, 3376, // #2473
+ 47, 106572, 106572, 3420, 3420, // #2474
+ 3, 106624, 106624, 3024, 3024, // #2475
+ 6, 106652, 106652, 2764, 2764, // #2476
+ 15, 106678, 106678, 806, 806, // #2477
+ 40, 106752, 106752, 3376, 3376, // #2478
+ 47, 106828, 106828, 3420, 3420, // #2479
+ 1, 106888, 106888, 984, 984, // #2480
+ 6, 106908, 106908, 2764, 2764, // #2481
+ 11, 106950, 106950, 822, 822, // #2482
+ 40, 107008, 107008, 3376, 3376, // #2483
+ 47, 107084, 107084, 3420, 3420, // #2484
+ 4, 107136, 107136, 2720, 2720, // #2485
+ 6, 107164, 107164, 2764, 2764, // #2486
+ 14, 107186, 107186, 834, 834, // #2487
+ 40, 107264, 107264, 3376, 3376, // #2488
+ 47, 107340, 107340, 3420, 3420, // #2489
+ 1, 107392, 107392, 432, 432, // #2490
+ 3, 107422, 107422, 2734, 2734, // #2491
+ 8, 107440, 107440, 320, 320, // #2492
+ 40, 107456, 107456, 3376, 3376, // #2493
+ 47, 107532, 107532, 3420, 3420, // #2494
+ 11, 107584, 107584, 1056, 1056, // #2495
+ 6, 107607, 107607, 2999, 2999, // #2496
+ 16, 107663, 107663, 1023, 1023, // #2497
+ 40, 107712, 107712, 3376, 3376, // #2498
+ 47, 107788, 107788, 3420, 3420, // #2499
+ 11, 107848, 107848, 1016, 1016, // #2500
+ 6, 107879, 107879, 2999, 2999, // #2501
+ 19, 107888, 107888, 1040, 1040, // #2502
+ 40, 107968, 107968, 3376, 3376, // #2503
+ 47, 108044, 108044, 3420, 3420, // #2504
+ 8, 108096, 108096, 1296, 1296, // #2505
+ 6, 108119, 108119, 2999, 2999, // #2506
+ 16, 108129, 108129, 849, 849, // #2507
+ 40, 108160, 108160, 3376, 3376, // #2508
+ 47, 108236, 108236, 3420, 3420, // #2509
+ 11, 108288, 108288, 1216, 1216, // #2510
+ 6, 108311, 108311, 2999, 2999, // #2511
+ 18, 108322, 108322, 866, 866, // #2512
+ 40, 108352, 108352, 3376, 3376, // #2513
+ 47, 108428, 108428, 3420, 3420, // #2514
+ 11, 108488, 108488, 1176, 1176, // #2515
+ 6, 108519, 108519, 2999, 2999, // #2516
+ 16, 108549, 108549, 885, 885, // #2517
+ 40, 108608, 108608, 3376, 3376, // #2518
+ 47, 108684, 108684, 3420, 3420, // #2519
+ 8, 108744, 108744, 1256, 1256, // #2520
+ 6, 108775, 108775, 2999, 2999, // #2521
+ 14, 108790, 108790, 902, 902, // #2522
+ 40, 108864, 108864, 3376, 3376, // #2523
+ 47, 108940, 108940, 3420, 3420, // #2524
+ 9, 109000, 109000, 1336, 1336, // #2525
+ 6, 109031, 109031, 2999, 2999, // #2526
+ 17, 109045, 109045, 917, 917, // #2527
+ 40, 109120, 109120, 3376, 3376, // #2528
+ 47, 109196, 109196, 3420, 3420, // #2529
+ 7, 109256, 109256, 3624, 3624, // #2530
+ 6, 109271, 109271, 2999, 2999, // #2531
+ 18, 109287, 109287, 935, 935, // #2532
+ 40, 109312, 109312, 3376, 3376, // #2533
+ 47, 109388, 109388, 3420, 3420, // #2534
+ 9, 109448, 109448, 3784, 3784, // #2535
+ 6, 109479, 109479, 2999, 2999, // #2536
+ 17, 109514, 109514, 954, 954, // #2537
+ 40, 109568, 109568, 3376, 3376, // #2538
+ 47, 109644, 109644, 3420, 3420, // #2539
+ 8, 109696, 109696, 16, 16, // #2540
+ 6, 109719, 109719, 2999, 2999, // #2541
+ 18, 109740, 109740, 972, 972, // #2542
+ 40, 109760, 109760, 3376, 3376, // #2543
+ 47, 109836, 109836, 3420, 3420, // #2544
+ 11, 109888, 109888, 1136, 1136, // #2545
+ 6, 109911, 109911, 2999, 2999, // #2546
+ 15, 109935, 109935, 991, 991, // #2547
+ 40, 109952, 109952, 3376, 3376, // #2548
+ 47, 110028, 110028, 3420, 3420, // #2549
+ 10, 110088, 110088, 1096, 1096, // #2550
+ 6, 110119, 110119, 2999, 2999, // #2551
+ 15, 110143, 110143, 1007, 1007, // #2552
+ 40, 110208, 110208, 3376, 3376, // #2553
+ 47, 110284, 110284, 3420, 3420, // #2554
+ 21, 110344, 110344, 712, 712, // #2555
+ 1, 110376, 110376, 3176, 3176, // #2556
+ 3, 110398, 110398, 2734, 2734, // #2557
+ 15, 110475, 110475, 763, 763, // #2558
+ 40, 110528, 110528, 3376, 3376, // #2559
+ 47, 110604, 110604, 3420, 3420, // #2560
+ 1, 110656, 110656, 1136, 1136, // #2561
+ 3, 110686, 110686, 2734, 2734, // #2562
+ 11, 110715, 110715, 779, 779, // #2563
+ 40, 110784, 110784, 3376, 3376, // #2564
+ 47, 110860, 110860, 3420, 3420, // #2565
+ 1, 110920, 110920, 2872, 2872, // #2566
+ 3, 110942, 110942, 2734, 2734, // #2567
+ 14, 110967, 110967, 791, 791, // #2568
+ 40, 111040, 111040, 3376, 3376, // #2569
+ 47, 111116, 111116, 3420, 3420, // #2570
+ 3, 111168, 111168, 3024, 3024, // #2571
+ 6, 111196, 111196, 2764, 2764, // #2572
+ 15, 111222, 111222, 806, 806, // #2573
+ 40, 111296, 111296, 3376, 3376, // #2574
+ 47, 111372, 111372, 3420, 3420, // #2575
+ 1, 111432, 111432, 984, 984, // #2576
+ 6, 111452, 111452, 2764, 2764, // #2577
+ 11, 111494, 111494, 822, 822, // #2578
+ 40, 111552, 111552, 3376, 3376, // #2579
+ 47, 111628, 111628, 3420, 3420, // #2580
+ 4, 111680, 111680, 2720, 2720, // #2581
+ 6, 111708, 111708, 2764, 2764, // #2582
+ 14, 111730, 111730, 834, 834, // #2583
+ 40, 111808, 111808, 3376, 3376, // #2584
+ 47, 111884, 111884, 3420, 3420, // #2585
+ 4, 111944, 111944, 248, 248, // #2586
+ 4, 111961, 111961, 2729, 2729, // #2587
+ 6, 111972, 111972, 756, 756, // #2588
+ 40, 112000, 112000, 3376, 3376, // #2589
+ 47, 112076, 112076, 3420, 3420, // #2590
+ 4, 112136, 112136, 3384, 3384, // #2591
+ 4, 112153, 112153, 2729, 2729, // #2592
+ 20, 112160, 112160, 1088, 1088, // #2593
+ 40, 112192, 112192, 3376, 3376, // #2594
+ 47, 112268, 112268, 3420, 3420, // #2595
+ 1, 112320, 112320, 432, 432, // #2596
+ 3, 112350, 112350, 2734, 2734, // #2597
+ 8, 112368, 112368, 320, 320, // #2598
+ 40, 112384, 112384, 3376, 3376, // #2599
+ 47, 112460, 112460, 3420, 3420, // #2600
+ 11, 112520, 112520, 2376, 2376, // #2601
+ 6, 112551, 112551, 2999, 2999, // #2602
+ 16, 112591, 112591, 1023, 1023, // #2603
+ 40, 112640, 112640, 3376, 3376, // #2604
+ 47, 112716, 112716, 3420, 3420, // #2605
+ 11, 112776, 112776, 2056, 2056, // #2606
+ 6, 112807, 112807, 2999, 2999, // #2607
+ 19, 112816, 112816, 1040, 1040, // #2608
+ 40, 112896, 112896, 3376, 3376, // #2609
+ 47, 112972, 112972, 3420, 3420, // #2610
+ 8, 113024, 113024, 2576, 2576, // #2611
+ 6, 113047, 113047, 2999, 2999, // #2612
+ 16, 113057, 113057, 849, 849, // #2613
+ 40, 113088, 113088, 3376, 3376, // #2614
+ 47, 113164, 113164, 3420, 3420, // #2615
+ 11, 113216, 113216, 576, 576, // #2616
+ 6, 113239, 113239, 2999, 2999, // #2617
+ 18, 113250, 113250, 866, 866, // #2618
+ 40, 113280, 113280, 3376, 3376, // #2619
+ 47, 113356, 113356, 3420, 3420, // #2620
+ 11, 113408, 113408, 2496, 2496, // #2621
+ 6, 113431, 113431, 2999, 2999, // #2622
+ 16, 113477, 113477, 885, 885, // #2623
+ 40, 113536, 113536, 3376, 3376, // #2624
+ 47, 113612, 113612, 3420, 3420, // #2625
+ 8, 113672, 113672, 2536, 2536, // #2626
+ 6, 113703, 113703, 2999, 2999, // #2627
+ 14, 113718, 113718, 902, 902, // #2628
+ 40, 113792, 113792, 3376, 3376, // #2629
+ 47, 113868, 113868, 3420, 3420, // #2630
+ 9, 113928, 113928, 2616, 2616, // #2631
+ 6, 113959, 113959, 2999, 2999, // #2632
+ 17, 113973, 113973, 917, 917, // #2633
+ 40, 114048, 114048, 3376, 3376, // #2634
+ 47, 114124, 114124, 3420, 3420, // #2635
+ 7, 114176, 114176, 896, 896, // #2636
+ 6, 114199, 114199, 2999, 2999, // #2637
+ 18, 114215, 114215, 935, 935, // #2638
+ 40, 114240, 114240, 3376, 3376, // #2639
+ 47, 114316, 114316, 3420, 3420, // #2640
+ 9, 114368, 114368, 1056, 1056, // #2641
+ 6, 114391, 114391, 2999, 2999, // #2642
+ 17, 114442, 114442, 954, 954, // #2643
+ 40, 114496, 114496, 3376, 3376, // #2644
+ 47, 114572, 114572, 3420, 3420, // #2645
+ 8, 114632, 114632, 1384, 1384, // #2646
+ 6, 114663, 114663, 2999, 2999, // #2647
+ 18, 114684, 114684, 972, 972, // #2648
+ 40, 114752, 114752, 3376, 3376, // #2649
+ 47, 114828, 114828, 3420, 3420, // #2650
+ 11, 114888, 114888, 2456, 2456, // #2651
+ 6, 114919, 114919, 2999, 2999, // #2652
+ 15, 114943, 114943, 991, 991, // #2653
+ 40, 115008, 115008, 3376, 3376, // #2654
+ 47, 115084, 115084, 3420, 3420, // #2655
+ 10, 115136, 115136, 2416, 2416, // #2656
+ 6, 115159, 115159, 2999, 2999, // #2657
+ 15, 115183, 115183, 1007, 1007, // #2658
+ 40, 115200, 115200, 3376, 3376, // #2659
+ 47, 115276, 115276, 3420, 3420, // #2660
+ 21, 115336, 115336, 712, 712, // #2661
+ 1, 115368, 115368, 3176, 3176, // #2662
+ 3, 115390, 115390, 2734, 2734, // #2663
+ 15, 115467, 115467, 763, 763, // #2664
+ 40, 115520, 115520, 3376, 3376, // #2665
+ 47, 115596, 115596, 3420, 3420, // #2666
+ 1, 115648, 115648, 1136, 1136, // #2667
+ 3, 115678, 115678, 2734, 2734, // #2668
+ 11, 115707, 115707, 779, 779, // #2669
+ 40, 115776, 115776, 3376, 3376, // #2670
+ 47, 115852, 115852, 3420, 3420, // #2671
+ 1, 115912, 115912, 2872, 2872, // #2672
+ 3, 115934, 115934, 2734, 2734, // #2673
+ 14, 115959, 115959, 791, 791, // #2674
+ 40, 116032, 116032, 3376, 3376, // #2675
+ 47, 116108, 116108, 3420, 3420, // #2676
+ 3, 116160, 116160, 3024, 3024, // #2677
+ 6, 116188, 116188, 2764, 2764, // #2678
+ 15, 116214, 116214, 806, 806, // #2679
+ 40, 116288, 116288, 3376, 3376, // #2680
+ 47, 116364, 116364, 3420, 3420, // #2681
+ 1, 116424, 116424, 984, 984, // #2682
+ 6, 116444, 116444, 2764, 2764, // #2683
+ 11, 116486, 116486, 822, 822, // #2684
+ 40, 116544, 116544, 3376, 3376, // #2685
+ 47, 116620, 116620, 3420, 3420, // #2686
+ 4, 116672, 116672, 2720, 2720, // #2687
+ 6, 116700, 116700, 2764, 2764, // #2688
+ 14, 116722, 116722, 834, 834, // #2689
+ 40, 116800, 116800, 3376, 3376, // #2690
+ 47, 116876, 116876, 3420, 3420, // #2691
+ 6, 116931, 116931, 1491, 1491, // #2692
+ 8, 116950, 116950, 2902, 2902, // #2693
+ 3, 116964, 116964, 3620, 3620, // #2694
+ 6, 116984, 116984, 3624, 3624, // #2695
+ 26, 116995, 116995, 3635, 3635, // #2696
+ 7, 117028, 117028, 1684, 1684, // #2697
+ 7, 117042, 117042, 386, 386, // #2698
+ 11, 117068, 117068, 1692, 1692, // #2699
+ 5, 117096, 117096, 1704, 1704, // #2700
+ 5, 117118, 117118, 1710, 1710, // #2701
+ 6, 117139, 117139, 131, 131, // #2702
+ 7, 117152, 117152, 2464, 2464, // #2703
+ 6, 117199, 117199, 895, 895, // #2704
+ 8, 117221, 117221, 725, 725, // #2705
+ 6, 117236, 117236, 1716, 1716, // #2706
+ 8, 117259, 117259, 1723, 1723, // #2707
+ 10, 117284, 117284, 1732, 1732, // #2708
+ 7, 117311, 117311, 1743, 1743, // #2709
+ 4, 117333, 117333, 3861, 3861, // #2710
+ 12, 117351, 117351, 1751, 1751, // #2711
+ 5, 117385, 117385, 2889, 2889, // #2712
+ 6, 117392, 117392, 784, 784, // #2713
+ 5, 117454, 117454, 190, 190, // #2714
+ 1, 117472, 117472, 416, 416, // #2715
+ 6, 117500, 117500, 2764, 2764, // #2716
+ 12, 117520, 117520, 3456, 3456, // #2717
+ 40, 117568, 117568, 3376, 3376, // #2718
+ 47, 117644, 117644, 3420, 3420, // #2719
+ 5, 117711, 117711, 2735, 2735, // #2720
+ 11, 117736, 117736, 2632, 2632, // #2721
+ 6, 117767, 117767, 2999, 2999, // #2722
+ 12, 117784, 117784, 936, 936, // #2723
+ 40, 117824, 117824, 3376, 3376, // #2724
+ 47, 117900, 117900, 3420, 3420, // #2725
+ 6, 117956, 117956, 1764, 1764, // #2726
+ 5, 117968, 117968, 3312, 3312, // #2727
+ 6, 117991, 117991, 2999, 2999, // #2728
+ 13, 118008, 118008, 664, 664, // #2729
+ 40, 118080, 118080, 3376, 3376, // #2730
+ 47, 118156, 118156, 3420, 3420, // #2731
+ 15, 118219, 118219, 1771, 1771, // #2732
+ 5, 118240, 118240, 1680, 1680, // #2733
+ 4, 118265, 118265, 2729, 2729, // #2734
+ 22, 118272, 118272, 256, 256, // #2735
+ 40, 118336, 118336, 3376, 3376, // #2736
+ 47, 118412, 118412, 3420, 3420, // #2737
+ 6, 118464, 118464, 784, 784, // #2738
+ 5, 118542, 118542, 190, 190, // #2739
+ 3, 118568, 118568, 1256, 1256, // #2740
+ 6, 118588, 118588, 2764, 2764, // #2741
+ 11, 118664, 118664, 184, 184, // #2742
+ 40, 118720, 118720, 3376, 3376, // #2743
+ 47, 118796, 118796, 3420, 3420, // #2744
+ 5, 118863, 118863, 2735, 2735, // #2745
+ 11, 118880, 118880, 2336, 2336, // #2746
+ 6, 118903, 118903, 2999, 2999, // #2747
+ 11, 118912, 118912, 3408, 3408, // #2748
+ 40, 118976, 118976, 3376, 3376, // #2749
+ 47, 119052, 119052, 3420, 3420, // #2750
+ 6, 119108, 119108, 1764, 1764, // #2751
+ 5, 119128, 119128, 3304, 3304, // #2752
+ 6, 119143, 119143, 2999, 2999, // #2753
+ 12, 119160, 119160, 3336, 3336, // #2754
+ 40, 119232, 119232, 3376, 3376, // #2755
+ 47, 119308, 119308, 3420, 3420, // #2756
+ 15, 119371, 119371, 1771, 1771, // #2757
+ 5, 119392, 119392, 1904, 1904, // #2758
+ 4, 119417, 119417, 2729, 2729, // #2759
+ 21, 119424, 119424, 0, 0, // #2760
+ 40, 119488, 119488, 3376, 3376, // #2761
+ 47, 119564, 119564, 3420, 3420, // #2762
+ 6, 119616, 119616, 784, 784, // #2763
+ 5, 119694, 119694, 190, 190, // #2764
+ 1, 119720, 119720, 3400, 3400, // #2765
+ 6, 119740, 119740, 2764, 2764, // #2766
+ 13, 119816, 119816, 3960, 3960, // #2767
+ 40, 119872, 119872, 3376, 3376, // #2768
+ 47, 119948, 119948, 3420, 3420, // #2769
+ 5, 120015, 120015, 2735, 2735, // #2770
+ 8, 120040, 120040, 3032, 3032, // #2771
+ 6, 120071, 120071, 2999, 2999, // #2772
+ 13, 120088, 120088, 3912, 3912, // #2773
+ 40, 120128, 120128, 3376, 3376, // #2774
+ 47, 120204, 120204, 3420, 3420, // #2775
+ 6, 120260, 120260, 1764, 1764, // #2776
+ 5, 120272, 120272, 1888, 1888, // #2777
+ 6, 120295, 120295, 2999, 2999, // #2778
+ 14, 120312, 120312, 4040, 4040, // #2779
+ 40, 120384, 120384, 3376, 3376, // #2780
+ 47, 120460, 120460, 3420, 3420, // #2781
+ 15, 120523, 120523, 1771, 1771, // #2782
+ 4, 120552, 120552, 1224, 1224, // #2783
+ 4, 120569, 120569, 2729, 2729, // #2784
+ 23, 120576, 120576, 1360, 1360, // #2785
+ 40, 120640, 120640, 3376, 3376, // #2786
+ 47, 120716, 120716, 3420, 3420, // #2787
+ 5, 120777, 120777, 2889, 2889, // #2788
+ 6, 120784, 120784, 784, 784, // #2789
+ 5, 120846, 120846, 190, 190, // #2790
+ 1, 120872, 120872, 3320, 3320, // #2791
+ 6, 120892, 120892, 2764, 2764, // #2792
+ 12, 120912, 120912, 80, 80, // #2793
+ 40, 120960, 120960, 3376, 3376, // #2794
+ 47, 121036, 121036, 3420, 3420, // #2795
+ 5, 121103, 121103, 2735, 2735, // #2796
+ 11, 121128, 121128, 2856, 2856, // #2797
+ 6, 121159, 121159, 2999, 2999, // #2798
+ 12, 121168, 121168, 1456, 1456, // #2799
+ 40, 121216, 121216, 3376, 3376, // #2800
+ 47, 121292, 121292, 3420, 3420, // #2801
+ 6, 121348, 121348, 1764, 1764, // #2802
+ 5, 121360, 121360, 2976, 2976, // #2803
+ 6, 121383, 121383, 2999, 2999, // #2804
+ 13, 121400, 121400, 1224, 1224, // #2805
+ 40, 121472, 121472, 3376, 3376, // #2806
+ 47, 121548, 121548, 3420, 3420, // #2807
+ 15, 121611, 121611, 1771, 1771, // #2808
+ 5, 121632, 121632, 3200, 3200, // #2809
+ 4, 121657, 121657, 2729, 2729, // #2810
+ 22, 121672, 121672, 1048, 1048, // #2811
+ 40, 121728, 121728, 3376, 3376, // #2812
+ 47, 121804, 121804, 3420, 3420, // #2813
+ 6, 121856, 121856, 784, 784, // #2814
+ 5, 121934, 121934, 190, 190, // #2815
+ 1, 121960, 121960, 2632, 2632, // #2816
+ 6, 121980, 121980, 2764, 2764, // #2817
+ 11, 122008, 122008, 1288, 1288, // #2818
+ 40, 122048, 122048, 3376, 3376, // #2819
+ 47, 122124, 122124, 3420, 3420, // #2820
+ 5, 122191, 122191, 2735, 2735, // #2821
+ 11, 122208, 122208, 2128, 2128, // #2822
+ 6, 122231, 122231, 2999, 2999, // #2823
+ 11, 122248, 122248, 1208, 1208, // #2824
+ 40, 122304, 122304, 3376, 3376, // #2825
+ 47, 122380, 122380, 3420, 3420, // #2826
+ 6, 122436, 122436, 1764, 1764, // #2827
+ 5, 122448, 122448, 2288, 2288, // #2828
+ 6, 122471, 122471, 2999, 2999, // #2829
+ 12, 122504, 122504, 1272, 1272, // #2830
+ 40, 122560, 122560, 3376, 3376, // #2831
+ 47, 122636, 122636, 3420, 3420, // #2832
+ 15, 122699, 122699, 1771, 1771, // #2833
+ 5, 122720, 122720, 2512, 2512, // #2834
+ 4, 122745, 122745, 2729, 2729, // #2835
+ 21, 122760, 122760, 280, 280, // #2836
+ 40, 122816, 122816, 3376, 3376, // #2837
+ 47, 122892, 122892, 3420, 3420, // #2838
+ 6, 122944, 122944, 784, 784, // #2839
+ 5, 123022, 123022, 190, 190, // #2840
+ 1, 123048, 123048, 3896, 3896, // #2841
+ 6, 123068, 123068, 2764, 2764, // #2842
+ 13, 123144, 123144, 376, 376, // #2843
+ 40, 123200, 123200, 3376, 3376, // #2844
+ 47, 123276, 123276, 3420, 3420, // #2845
+ 5, 123343, 123343, 2735, 2735, // #2846
+ 8, 123368, 123368, 3432, 3432, // #2847
+ 6, 123399, 123399, 2999, 2999, // #2848
+ 13, 123464, 123464, 440, 440, // #2849
+ 40, 123520, 123520, 3376, 3376, // #2850
+ 47, 123596, 123596, 3420, 3420, // #2851
+ 6, 123652, 123652, 1764, 1764, // #2852
+ 5, 123664, 123664, 3552, 3552, // #2853
+ 6, 123687, 123687, 2999, 2999, // #2854
+ 14, 123720, 123720, 568, 568, // #2855
+ 40, 123776, 123776, 3376, 3376, // #2856
+ 47, 123852, 123852, 3420, 3420, // #2857
+ 15, 123915, 123915, 1771, 1771, // #2858
+ 4, 123936, 123936, 3776, 3776, // #2859
+ 4, 123961, 123961, 2729, 2729, // #2860
+ 23, 123968, 123968, 1568, 1568, // #2861
+ 40, 124032, 124032, 3376, 3376, // #2862
+ 47, 124108, 124108, 3420, 3420, // #2863
+ 5, 124169, 124169, 2889, 2889, // #2864
+ 6, 124176, 124176, 784, 784, // #2865
+ 5, 124238, 124238, 190, 190, // #2866
+ 1, 124264, 124264, 2712, 2712, // #2867
+ 6, 124284, 124284, 2764, 2764, // #2868
+ 12, 124312, 124312, 1368, 1368, // #2869
+ 40, 124352, 124352, 3376, 3376, // #2870
+ 47, 124428, 124428, 3420, 3420, // #2871
+ 5, 124495, 124495, 2735, 2735, // #2872
+ 11, 124520, 124520, 2248, 2248, // #2873
+ 6, 124551, 124551, 2999, 2999, // #2874
+ 12, 124568, 124568, 1432, 1432, // #2875
+ 40, 124608, 124608, 3376, 3376, // #2876
+ 47, 124684, 124684, 3420, 3420, // #2877
+ 6, 124740, 124740, 1764, 1764, // #2878
+ 5, 124752, 124752, 2368, 2368, // #2879
+ 6, 124775, 124775, 2999, 2999, // #2880
+ 13, 124792, 124792, 1496, 1496, // #2881
+ 40, 124864, 124864, 3376, 3376, // #2882
+ 47, 124940, 124940, 3420, 3420, // #2883
+ 15, 125003, 125003, 1771, 1771, // #2884
+ 5, 125024, 125024, 2592, 2592, // #2885
+ 4, 125049, 125049, 2729, 2729, // #2886
+ 22, 125056, 125056, 4016, 4016, // #2887
+ 40, 125120, 125120, 3376, 3376, // #2888
+ 47, 125196, 125196, 3420, 3420, // #2889
+ 6, 125248, 125248, 784, 784, // #2890
+ 5, 125326, 125326, 190, 190, // #2891
+ 1, 125352, 125352, 2024, 2024, // #2892
+ 6, 125372, 125372, 2764, 2764, // #2893
+ 11, 125400, 125400, 3944, 3944, // #2894
+ 40, 125440, 125440, 3376, 3376, // #2895
+ 47, 125516, 125516, 3420, 3420, // #2896
+ 5, 125583, 125583, 2735, 2735, // #2897
+ 11, 125600, 125600, 1520, 1520, // #2898
+ 6, 125623, 125623, 2999, 2999, // #2899
+ 11, 125632, 125632, 16, 16, // #2900
+ 40, 125696, 125696, 3376, 3376, // #2901
+ 47, 125772, 125772, 3420, 3420, // #2902
+ 6, 125828, 125828, 1764, 1764, // #2903
+ 5, 125840, 125840, 1680, 1680, // #2904
+ 6, 125863, 125863, 2999, 2999, // #2905
+ 12, 125872, 125872, 80, 80, // #2906
+ 40, 125888, 125888, 3376, 3376, // #2907
+ 47, 125964, 125964, 3420, 3420, // #2908
+ 15, 126027, 126027, 1771, 1771, // #2909
+ 5, 126048, 126048, 1904, 1904, // #2910
+ 4, 126073, 126073, 2729, 2729, // #2911
+ 21, 126088, 126088, 216, 216, // #2912
+ 40, 126144, 126144, 3376, 3376, // #2913
+ 47, 126220, 126220, 3420, 3420, // #2914
+ 6, 126272, 126272, 784, 784, // #2915
+ 5, 126350, 126350, 190, 190, // #2916
+ 1, 126376, 126376, 3288, 3288, // #2917
+ 6, 126396, 126396, 2764, 2764, // #2918
+ 13, 126472, 126472, 312, 312, // #2919
+ 40, 126528, 126528, 3376, 3376, // #2920
+ 47, 126604, 126604, 3420, 3420, // #2921
+ 5, 126671, 126671, 2735, 2735, // #2922
+ 8, 126696, 126696, 2824, 2824, // #2923
+ 6, 126727, 126727, 2999, 2999, // #2924
+ 13, 126744, 126744, 3112, 3112, // #2925
+ 40, 126784, 126784, 3376, 3376, // #2926
+ 47, 126860, 126860, 3420, 3420, // #2927
+ 6, 126916, 126916, 1764, 1764, // #2928
+ 5, 126928, 126928, 2944, 2944, // #2929
+ 6, 126951, 126951, 2999, 2999, // #2930
+ 14, 126968, 126968, 3240, 3240, // #2931
+ 40, 127040, 127040, 3376, 3376, // #2932
+ 47, 127116, 127116, 3420, 3420, // #2933
+ 15, 127179, 127179, 1771, 1771, // #2934
+ 4, 127200, 127200, 3168, 3168, // #2935
+ 4, 127225, 127225, 2729, 2729, // #2936
+ 23, 127240, 127240, 3512, 3512, // #2937
+ 40, 127296, 127296, 3376, 3376, // #2938
+ 47, 127372, 127372, 3420, 3420, // #2939
+ 5, 127433, 127433, 2889, 2889, // #2940
+ 6, 127440, 127440, 784, 784, // #2941
+ 5, 127502, 127502, 190, 190, // #2942
+ 1, 127528, 127528, 472, 472, // #2943
+ 6, 127548, 127548, 2764, 2764, // #2944
+ 12, 127568, 127568, 3312, 3312, // #2945
+ 40, 127616, 127616, 3376, 3376, // #2946
+ 47, 127692, 127692, 3420, 3420, // #2947
+ 5, 127759, 127759, 2735, 2735, // #2948
+ 11, 127784, 127784, 8, 8, // #2949
+ 6, 127815, 127815, 2999, 2999, // #2950
+ 12, 127824, 127824, 3376, 3376, // #2951
+ 40, 127872, 127872, 3376, 3376, // #2952
+ 47, 127948, 127948, 3420, 3420, // #2953
+ 6, 128004, 128004, 1764, 1764, // #2954
+ 5, 128016, 128016, 128, 128, // #2955
+ 6, 128039, 128039, 2999, 2999, // #2956
+ 13, 128048, 128048, 3440, 3440, // #2957
+ 40, 128064, 128064, 3376, 3376, // #2958
+ 47, 128140, 128140, 3420, 3420, // #2959
+ 15, 128203, 128203, 1771, 1771, // #2960
+ 5, 128224, 128224, 352, 352, // #2961
+ 4, 128249, 128249, 2729, 2729, // #2962
+ 22, 128256, 128256, 1632, 1632, // #2963
+ 40, 128320, 128320, 3376, 3376, // #2964
+ 47, 128396, 128396, 3420, 3420, // #2965
+ 6, 128448, 128448, 784, 784, // #2966
+ 5, 128526, 128526, 190, 190, // #2967
+ 1, 128552, 128552, 3880, 3880, // #2968
+ 6, 128572, 128572, 2764, 2764, // #2969
+ 11, 128600, 128600, 3672, 3672, // #2970
+ 40, 128640, 128640, 3376, 3376, // #2971
+ 47, 128716, 128716, 3420, 3420, // #2972
+ 5, 128783, 128783, 2735, 2735, // #2973
+ 11, 128800, 128800, 3376, 3376, // #2974
+ 6, 128823, 128823, 2999, 2999, // #2975
+ 11, 128832, 128832, 1728, 1728, // #2976
+ 40, 128896, 128896, 3376, 3376, // #2977
+ 47, 128972, 128972, 3420, 3420, // #2978
+ 6, 129028, 129028, 1764, 1764, // #2979
+ 5, 129040, 129040, 3536, 3536, // #2980
+ 6, 129063, 129063, 2999, 2999, // #2981
+ 12, 129072, 129072, 1792, 1792, // #2982
+ 40, 129088, 129088, 3376, 3376, // #2983
+ 47, 129164, 129164, 3420, 3420, // #2984
+ 15, 129227, 129227, 1771, 1771, // #2985
+ 5, 129248, 129248, 3760, 3760, // #2986
+ 4, 129273, 129273, 2729, 2729, // #2987
+ 21, 129288, 129288, 1992, 1992, // #2988
+ 40, 129344, 129344, 3376, 3376, // #2989
+ 47, 129420, 129420, 3420, 3420, // #2990
+ 6, 129472, 129472, 784, 784, // #2991
+ 5, 129550, 129550, 190, 190, // #2992
+ 1, 129576, 129576, 1048, 1048, // #2993
+ 6, 129596, 129596, 2764, 2764, // #2994
+ 13, 129616, 129616, 1856, 1856, // #2995
+ 40, 129664, 129664, 3376, 3376, // #2996
+ 47, 129740, 129740, 3420, 3420, // #2997
+ 5, 129807, 129807, 2735, 2735, // #2998
+ 8, 129832, 129832, 584, 584, // #2999
+ 6, 129863, 129863, 2999, 2999, // #3000
+ 13, 129880, 129880, 2088, 2088, // #3001
+ 40, 129920, 129920, 3376, 3376, // #3002
+ 47, 129996, 129996, 3420, 3420, // #3003
+ 6, 130052, 130052, 1764, 1764, // #3004
+ 5, 130064, 130064, 704, 704, // #3005
+ 6, 130087, 130087, 2999, 2999, // #3006
+ 14, 130104, 130104, 2216, 2216, // #3007
+ 40, 130176, 130176, 3376, 3376, // #3008
+ 47, 130252, 130252, 3420, 3420, // #3009
+ 15, 130315, 130315, 1771, 1771, // #3010
+ 4, 130336, 130336, 928, 928, // #3011
+ 4, 130361, 130361, 2729, 2729, // #3012
+ 23, 130376, 130376, 1864, 1864, // #3013
+ 40, 130432, 130432, 3376, 3376, // #3014
+ 47, 130508, 130508, 3420, 3420, // #3015
+ 5, 130569, 130569, 2889, 2889, // #3016
+ 6, 130576, 130576, 784, 784, // #3017
+ 5, 130638, 130638, 190, 190, // #3018
+ 1, 130656, 130656, 2080, 2080, // #3019
+ 6, 130684, 130684, 2764, 2764, // #3020
+ 12, 130704, 130704, 2288, 2288, // #3021
+ 40, 130752, 130752, 3376, 3376, // #3022
+ 47, 130828, 130828, 3420, 3420, // #3023
+ 5, 130895, 130895, 2735, 2735, // #3024
+ 11, 130920, 130920, 1608, 1608, // #3025
+ 6, 130951, 130951, 2999, 2999, // #3026
+ 12, 130960, 130960, 1728, 1728, // #3027
+ 40, 131008, 131008, 3376, 3376, // #3028
+ 47, 131084, 131084, 3420, 3420, // #3029
+ 6, 131140, 131140, 1764, 1764, // #3030
+ 5, 131152, 131152, 1728, 1728, // #3031
+ 6, 131175, 131175, 2999, 2999, // #3032
+ 13, 131184, 131184, 1792, 1792, // #3033
+ 40, 131200, 131200, 3376, 3376, // #3034
+ 47, 131276, 131276, 3420, 3420, // #3035
+ 15, 131339, 131339, 1771, 1771, // #3036
+ 5, 131368, 131368, 1960, 1960, // #3037
+ 4, 131385, 131385, 2729, 2729, // #3038
+ 22, 131392, 131392, 2096, 2096, // #3039
+ 40, 131456, 131456, 3376, 3376, // #3040
+ 47, 131532, 131532, 3420, 3420, // #3041
+ 6, 131584, 131584, 784, 784, // #3042
+ 5, 131662, 131662, 190, 190, // #3043
+ 3, 131688, 131688, 1384, 1384, // #3044
+ 6, 131708, 131708, 2764, 2764, // #3045
+ 11, 131736, 131736, 2024, 2024, // #3046
+ 40, 131776, 131776, 3376, 3376, // #3047
+ 47, 131852, 131852, 3420, 3420, // #3048
+ 5, 131919, 131919, 2735, 2735, // #3049
+ 11, 131944, 131944, 3544, 3544, // #3050
+ 6, 131975, 131975, 2999, 2999, // #3051
+ 11, 131984, 131984, 2192, 2192, // #3052
+ 40, 132032, 132032, 3376, 3376, // #3053
+ 47, 132108, 132108, 3420, 3420, // #3054
+ 6, 132164, 132164, 1764, 1764, // #3055
+ 5, 132184, 132184, 3704, 3704, // #3056
+ 6, 132199, 132199, 2999, 2999, // #3057
+ 12, 132208, 132208, 2256, 2256, // #3058
+ 40, 132224, 132224, 3376, 3376, // #3059
+ 47, 132300, 132300, 3420, 3420, // #3060
+ 15, 132363, 132363, 1771, 1771, // #3061
+ 5, 132392, 132392, 3928, 3928, // #3062
+ 4, 132409, 132409, 2729, 2729, // #3063
+ 21, 132424, 132424, 2008, 2008, // #3064
+ 40, 132480, 132480, 3376, 3376, // #3065
+ 47, 132556, 132556, 3420, 3420, // #3066
+ 6, 132608, 132608, 784, 784, // #3067
+ 5, 132686, 132686, 190, 190, // #3068
+ 1, 132704, 132704, 2656, 2656, // #3069
+ 6, 132732, 132732, 2764, 2764, // #3070
+ 13, 132752, 132752, 2320, 2320, // #3071
+ 40, 132800, 132800, 3376, 3376, // #3072
+ 47, 132876, 132876, 3420, 3420, // #3073
+ 5, 132943, 132943, 2735, 2735, // #3074
+ 8, 132960, 132960, 2192, 2192, // #3075
+ 6, 132983, 132983, 2999, 2999, // #3076
+ 13, 133000, 133000, 2104, 2104, // #3077
+ 40, 133056, 133056, 3376, 3376, // #3078
+ 47, 133132, 133132, 3420, 3420, // #3079
+ 6, 133188, 133188, 1764, 1764, // #3080
+ 5, 133208, 133208, 2312, 2312, // #3081
+ 6, 133223, 133223, 2999, 2999, // #3082
+ 14, 133256, 133256, 2232, 2232, // #3083
+ 40, 133312, 133312, 3376, 3376, // #3084
+ 47, 133388, 133388, 3420, 3420, // #3085
+ 15, 133451, 133451, 1771, 1771, // #3086
+ 4, 133480, 133480, 2536, 2536, // #3087
+ 4, 133497, 133497, 2729, 2729, // #3088
+ 23, 133512, 133512, 2504, 2504, // #3089
+ 40, 133568, 133568, 3376, 3376, // #3090
+ 47, 133644, 133644, 3420, 3420, // #3091
+ 5, 133705, 133705, 2889, 2889, // #3092
+ 6, 133712, 133712, 784, 784, // #3093
+ 6, 133728, 133728, 784, 784, // #3094
+ 6, 133744, 133744, 784, 784, // #3095
+ 10, 133771, 133771, 2171, 2171, // #3096
+ 7, 133800, 133800, 88, 88, // #3097
+ 5, 133813, 133813, 357, 357, // #3098
+ 1, 133834, 133834, 1226, 1226, // #3099
+ 1, 133852, 133852, 1228, 1228, // #3100
+ 6, 133859, 133859, 1491, 1491, // #3101
+ 1, 133882, 133882, 1226, 1226, // #3102
+ 1, 133900, 133900, 1228, 1228, // #3103
+ 7, 133915, 133915, 1739, 1739, // #3104
+ 7, 133947, 133947, 1739, 1739, // #3105
+ 7, 133979, 133979, 1739, 1739, // #3106
+ 7, 134011, 134011, 1739, 1739, // #3107
+ 7, 134043, 134043, 1739, 1739, // #3108
+ 1, 134074, 134074, 1226, 1226, // #3109
+ 1, 134092, 134092, 1228, 1228, // #3110
+ 19, 134099, 134099, 1747, 1747, // #3111
+ 1, 134138, 134138, 1226, 1226, // #3112
+ 1, 134156, 134156, 1228, 1228, // #3113
+ 1, 134170, 134170, 1226, 1226, // #3114
+ 1, 134188, 134188, 1228, 1228, // #3115
+ 11, 134192, 134192, 3072, 3072, // #3116
+ 13, 134209, 134209, 3057, 3057, // #3117
+ 11, 134224, 134224, 3072, 3072, // #3118
+ 13, 134241, 134241, 3057, 3057, // #3119
+ 11, 134256, 134256, 3072, 3072, // #3120
+ 11, 134272, 134272, 3072, 3072, // #3121
+ 10, 134299, 134299, 1771, 1771, // #3122
+ 10, 134324, 134324, 756, 756, // #3123
+ 11, 134338, 134338, 642, 642, // #3124
+ 3, 134360, 134360, 3000, 3000, // #3125
+ 10, 134372, 134372, 756, 756, // #3126
+ 17, 134397, 134397, 749, 749, // #3127
+ 3, 134424, 134424, 3000, 3000, // #3128
+ 3, 134440, 134440, 3000, 3000, // #3129
+ 3, 134456, 134456, 3000, 3000, // #3130
+ 3, 134472, 134472, 3000, 3000, // #3131
+ 1, 134483, 134483, 2339, 2339, // #3132
+ 2, 134496, 134496, 64, 64, // #3133
+ 3, 134526, 134526, 2734, 2734, // #3134
+ 12, 134548, 134548, 1812, 1812, // #3135
+ 40, 134592, 134592, 3376, 3376, // #3136
+ 47, 134668, 134668, 3420, 3420, // #3137
+ 6, 134723, 134723, 1491, 1491, // #3138
+ 1, 134736, 134736, 3824, 3824, // #3139
+ 3, 134766, 134766, 2734, 2734, // #3140
+ 4, 134797, 134797, 509, 509, // #3141
+ 40, 134848, 134848, 3376, 3376, // #3142
+ 47, 134924, 134924, 3420, 3420, // #3143
+ 1, 134976, 134976, 3824, 3824, // #3144
+ 3, 135006, 135006, 2734, 2734, // #3145
+ 4, 135053, 135053, 509, 509, // #3146
+ 40, 135104, 135104, 3376, 3376, // #3147
+ 47, 135180, 135180, 3420, 3420, // #3148
+ 2, 135232, 135232, 4064, 4064, // #3149
+ 3, 135262, 135262, 2734, 2734, // #3150
+ 4, 135309, 135309, 509, 509, // #3151
+ 40, 135360, 135360, 3376, 3376, // #3152
+ 47, 135436, 135436, 3420, 3420, // #3153
+ 2, 135488, 135488, 4064, 4064, // #3154
+ 3, 135518, 135518, 2734, 2734, // #3155
+ 4, 135565, 135565, 509, 509, // #3156
+ 40, 135616, 135616, 3376, 3376, // #3157
+ 47, 135692, 135692, 3420, 3420, // #3158
+ 2, 135752, 135752, 376, 376, // #3159
+ 3, 135774, 135774, 2734, 2734, // #3160
+ 4, 135821, 135821, 509, 509, // #3161
+ 40, 135872, 135872, 3376, 3376, // #3162
+ 47, 135948, 135948, 3420, 3420, // #3163
+ 2, 136008, 136008, 376, 376, // #3164
+ 3, 136030, 136030, 2734, 2734, // #3165
+ 4, 136077, 136077, 509, 509, // #3166
+ 40, 136128, 136128, 3376, 3376, // #3167
+ 47, 136204, 136204, 3420, 3420, // #3168
+ 2, 136256, 136256, 784, 784, // #3169
+ 3, 136286, 136286, 2734, 2734, // #3170
+ 4, 136333, 136333, 509, 509, // #3171
+ 40, 136384, 136384, 3376, 3376, // #3172
+ 47, 136460, 136460, 3420, 3420, // #3173
+ 2, 136512, 136512, 784, 784, // #3174
+ 3, 136542, 136542, 2734, 2734, // #3175
+ 4, 136589, 136589, 509, 509, // #3176
+ 40, 136640, 136640, 3376, 3376, // #3177
+ 47, 136716, 136716, 3420, 3420, // #3178
+ 2, 136768, 136768, 1200, 1200, // #3179
+ 3, 136798, 136798, 2734, 2734, // #3180
+ 4, 136845, 136845, 509, 509, // #3181
+ 40, 136896, 136896, 3376, 3376, // #3182
+ 47, 136972, 136972, 3420, 3420, // #3183
+ 2, 137024, 137024, 1200, 1200, // #3184
+ 3, 137054, 137054, 2734, 2734, // #3185
+ 4, 137101, 137101, 509, 509, // #3186
+ 40, 137152, 137152, 3376, 3376, // #3187
+ 47, 137228, 137228, 3420, 3420, // #3188
+ 2, 137288, 137288, 1608, 1608, // #3189
+ 3, 137310, 137310, 2734, 2734, // #3190
+ 4, 137357, 137357, 509, 509, // #3191
+ 40, 137408, 137408, 3376, 3376, // #3192
+ 47, 137484, 137484, 3420, 3420, // #3193
+ 2, 137544, 137544, 1608, 1608, // #3194
+ 3, 137566, 137566, 2734, 2734, // #3195
+ 4, 137613, 137613, 509, 509, // #3196
+ 40, 137664, 137664, 3376, 3376, // #3197
+ 47, 137740, 137740, 3420, 3420, // #3198
+ 2, 137800, 137800, 2008, 2008, // #3199
+ 3, 137822, 137822, 2734, 2734, // #3200
+ 4, 137869, 137869, 509, 509, // #3201
+ 40, 137920, 137920, 3376, 3376, // #3202
+ 47, 137996, 137996, 3420, 3420, // #3203
+ 2, 138056, 138056, 2008, 2008, // #3204
+ 3, 138078, 138078, 2734, 2734, // #3205
+ 4, 138125, 138125, 509, 509, // #3206
+ 40, 138176, 138176, 3376, 3376, // #3207
+ 47, 138252, 138252, 3420, 3420, // #3208
+ 2, 138312, 138312, 2408, 2408, // #3209
+ 3, 138334, 138334, 2734, 2734, // #3210
+ 4, 138381, 138381, 509, 509, // #3211
+ 40, 138432, 138432, 3376, 3376, // #3212
+ 47, 138508, 138508, 3420, 3420, // #3213
+ 2, 138568, 138568, 2408, 2408, // #3214
+ 3, 138590, 138590, 2734, 2734, // #3215
+ 4, 138637, 138637, 509, 509, // #3216
+ 40, 138688, 138688, 3376, 3376, // #3217
+ 47, 138764, 138764, 3420, 3420, // #3218
+ 2, 138824, 138824, 2808, 2808, // #3219
+ 3, 138846, 138846, 2734, 2734, // #3220
+ 4, 138893, 138893, 509, 509, // #3221
+ 40, 138944, 138944, 3376, 3376, // #3222
+ 47, 139020, 139020, 3420, 3420, // #3223
+ 2, 139080, 139080, 2808, 2808, // #3224
+ 3, 139102, 139102, 2734, 2734, // #3225
+ 4, 139149, 139149, 509, 509, // #3226
+ 40, 139200, 139200, 3376, 3376, // #3227
+ 47, 139276, 139276, 3420, 3420, // #3228
+ 2, 139328, 139328, 3216, 3216, // #3229
+ 3, 139358, 139358, 2734, 2734, // #3230
+ 4, 139405, 139405, 509, 509, // #3231
+ 40, 139456, 139456, 3376, 3376, // #3232
+ 47, 139532, 139532, 3420, 3420, // #3233
+ 2, 139584, 139584, 3216, 3216, // #3234
+ 3, 139614, 139614, 2734, 2734, // #3235
+ 4, 139661, 139661, 509, 509, // #3236
+ 40, 139712, 139712, 3376, 3376, // #3237
+ 47, 139788, 139788, 3420, 3420, // #3238
+ 2, 139840, 139840, 3216, 3216, // #3239
+ 3, 139870, 139870, 2734, 2734, // #3240
+ 4, 139917, 139917, 509, 509, // #3241
+ 40, 139968, 139968, 3376, 3376, // #3242
+ 47, 140044, 140044, 3420, 3420, // #3243
+ 2, 140104, 140104, 3624, 3624, // #3244
+ 3, 140126, 140126, 2734, 2734, // #3245
+ 4, 140173, 140173, 509, 509, // #3246
+ 40, 140224, 140224, 3376, 3376, // #3247
+ 47, 140300, 140300, 3420, 3420, // #3248
+ 2, 140360, 140360, 3624, 3624, // #3249
+ 3, 140382, 140382, 2734, 2734, // #3250
+ 4, 140429, 140429, 509, 509, // #3251
+ 40, 140480, 140480, 3376, 3376, // #3252
+ 47, 140556, 140556, 3420, 3420, // #3253
+ 2, 140616, 140616, 3624, 3624, // #3254
+ 3, 140638, 140638, 2734, 2734, // #3255
+ 4, 140685, 140685, 509, 509, // #3256
+ 40, 140736, 140736, 3376, 3376, // #3257
+ 47, 140812, 140812, 3420, 3420, // #3258
+ 2, 140864, 140864, 496, 496, // #3259
+ 3, 140894, 140894, 2734, 2734, // #3260
+ 4, 140941, 140941, 509, 509, // #3261
+ 40, 140992, 140992, 3376, 3376, // #3262
+ 47, 141068, 141068, 3420, 3420, // #3263
+ 2, 141120, 141120, 496, 496, // #3264
+ 3, 141150, 141150, 2734, 2734, // #3265
+ 4, 141197, 141197, 509, 509, // #3266
+ 40, 141248, 141248, 3376, 3376, // #3267
+ 47, 141324, 141324, 3420, 3420, // #3268
+ 2, 141376, 141376, 896, 896, // #3269
+ 3, 141406, 141406, 2734, 2734, // #3270
+ 4, 141453, 141453, 509, 509, // #3271
+ 40, 141504, 141504, 3376, 3376, // #3272
+ 47, 141580, 141580, 3420, 3420, // #3273
+ 2, 141632, 141632, 896, 896, // #3274
+ 3, 141662, 141662, 2734, 2734, // #3275
+ 4, 141709, 141709, 509, 509, // #3276
+ 40, 141760, 141760, 3376, 3376, // #3277
+ 47, 141836, 141836, 3420, 3420, // #3278
+ 2, 141896, 141896, 1304, 1304, // #3279
+ 3, 141918, 141918, 2734, 2734, // #3280
+ 4, 141965, 141965, 509, 509, // #3281
+ 40, 142016, 142016, 3376, 3376, // #3282
+ 47, 142092, 142092, 3420, 3420, // #3283
+ 2, 142152, 142152, 1304, 1304, // #3284
+ 3, 142174, 142174, 2734, 2734, // #3285
+ 4, 142221, 142221, 509, 509, // #3286
+ 40, 142272, 142272, 3376, 3376, // #3287
+ 47, 142348, 142348, 3420, 3420, // #3288
+ 2, 142400, 142400, 1712, 1712, // #3289
+ 3, 142430, 142430, 2734, 2734, // #3290
+ 4, 142477, 142477, 509, 509, // #3291
+ 40, 142528, 142528, 3376, 3376, // #3292
+ 47, 142604, 142604, 3420, 3420, // #3293
+ 2, 142656, 142656, 1712, 1712, // #3294
+ 3, 142686, 142686, 2734, 2734, // #3295
+ 4, 142733, 142733, 509, 509, // #3296
+ 40, 142784, 142784, 3376, 3376, // #3297
+ 47, 142860, 142860, 3420, 3420, // #3298
+ 2, 142912, 142912, 2128, 2128, // #3299
+ 3, 142942, 142942, 2734, 2734, // #3300
+ 4, 142989, 142989, 509, 509, // #3301
+ 40, 143040, 143040, 3376, 3376, // #3302
+ 47, 143116, 143116, 3420, 3420, // #3303
+ 2, 143168, 143168, 2128, 2128, // #3304
+ 3, 143198, 143198, 2734, 2734, // #3305
+ 4, 143245, 143245, 509, 509, // #3306
+ 40, 143296, 143296, 3376, 3376, // #3307
+ 47, 143372, 143372, 3420, 3420, // #3308
+ 2, 143432, 143432, 2536, 2536, // #3309
+ 3, 143454, 143454, 2734, 2734, // #3310
+ 4, 143501, 143501, 509, 509, // #3311
+ 40, 143552, 143552, 3376, 3376, // #3312
+ 47, 143628, 143628, 3420, 3420, // #3313
+ 2, 143688, 143688, 2536, 2536, // #3314
+ 3, 143710, 143710, 2734, 2734, // #3315
+ 4, 143757, 143757, 509, 509, // #3316
+ 40, 143808, 143808, 3376, 3376, // #3317
+ 47, 143884, 143884, 3420, 3420, // #3318
+ 2, 143944, 143944, 2936, 2936, // #3319
+ 3, 143966, 143966, 2734, 2734, // #3320
+ 4, 144013, 144013, 509, 509, // #3321
+ 40, 144064, 144064, 3376, 3376, // #3322
+ 47, 144140, 144140, 3420, 3420, // #3323
+ 2, 144200, 144200, 2936, 2936, // #3324
+ 3, 144222, 144222, 2734, 2734, // #3325
+ 4, 144269, 144269, 509, 509, // #3326
+ 40, 144320, 144320, 3376, 3376, // #3327
+ 47, 144396, 144396, 3420, 3420, // #3328
+ 2, 144456, 144456, 3336, 3336, // #3329
+ 3, 144478, 144478, 2734, 2734, // #3330
+ 4, 144525, 144525, 509, 509, // #3331
+ 40, 144576, 144576, 3376, 3376, // #3332
+ 47, 144652, 144652, 3420, 3420, // #3333
+ 2, 144712, 144712, 3336, 3336, // #3334
+ 3, 144734, 144734, 2734, 2734, // #3335
+ 4, 144781, 144781, 509, 509, // #3336
+ 40, 144832, 144832, 3376, 3376, // #3337
+ 47, 144908, 144908, 3420, 3420, // #3338
+ 2, 144968, 144968, 3736, 3736, // #3339
+ 3, 144990, 144990, 2734, 2734, // #3340
+ 4, 145037, 145037, 509, 509, // #3341
+ 40, 145088, 145088, 3376, 3376, // #3342
+ 47, 145164, 145164, 3420, 3420, // #3343
+ 2, 145224, 145224, 3736, 3736, // #3344
+ 3, 145246, 145246, 2734, 2734, // #3345
+ 4, 145293, 145293, 509, 509, // #3346
+ 40, 145344, 145344, 3376, 3376, // #3347
+ 47, 145420, 145420, 3420, 3420, // #3348
+ 2, 145472, 145472, 48, 48, // #3349
+ 3, 145502, 145502, 2734, 2734, // #3350
+ 4, 145549, 145549, 509, 509, // #3351
+ 40, 145600, 145600, 3376, 3376, // #3352
+ 47, 145676, 145676, 3420, 3420, // #3353
+ 2, 145728, 145728, 48, 48, // #3354
+ 3, 145758, 145758, 2734, 2734, // #3355
+ 4, 145805, 145805, 509, 509, // #3356
+ 40, 145856, 145856, 3376, 3376, // #3357
+ 47, 145932, 145932, 3420, 3420, // #3358
+ 2, 145992, 145992, 456, 456, // #3359
+ 3, 146014, 146014, 2734, 2734, // #3360
+ 4, 146061, 146061, 509, 509, // #3361
+ 40, 146112, 146112, 3376, 3376, // #3362
+ 47, 146188, 146188, 3420, 3420, // #3363
+ 2, 146248, 146248, 456, 456, // #3364
+ 3, 146270, 146270, 2734, 2734, // #3365
+ 4, 146317, 146317, 509, 509, // #3366
+ 40, 146368, 146368, 3376, 3376, // #3367
+ 47, 146444, 146444, 3420, 3420, // #3368
+ 2, 146504, 146504, 456, 456, // #3369
+ 3, 146526, 146526, 2734, 2734, // #3370
+ 4, 146573, 146573, 509, 509, // #3371
+ 40, 146624, 146624, 3376, 3376, // #3372
+ 47, 146700, 146700, 3420, 3420, // #3373
+ 2, 146760, 146760, 856, 856, // #3374
+ 3, 146782, 146782, 2734, 2734, // #3375
+ 4, 146829, 146829, 509, 509, // #3376
+ 40, 146880, 146880, 3376, 3376, // #3377
+ 47, 146956, 146956, 3420, 3420, // #3378
+ 2, 147016, 147016, 856, 856, // #3379
+ 3, 147038, 147038, 2734, 2734, // #3380
+ 4, 147085, 147085, 509, 509, // #3381
+ 40, 147136, 147136, 3376, 3376, // #3382
+ 47, 147212, 147212, 3420, 3420, // #3383
+ 2, 147272, 147272, 1256, 1256, // #3384
+ 3, 147294, 147294, 2734, 2734, // #3385
+ 4, 147341, 147341, 509, 509, // #3386
+ 40, 147392, 147392, 3376, 3376, // #3387
+ 47, 147468, 147468, 3420, 3420, // #3388
+ 2, 147528, 147528, 1256, 1256, // #3389
+ 3, 147550, 147550, 2734, 2734, // #3390
+ 4, 147597, 147597, 509, 509, // #3391
+ 40, 147648, 147648, 3376, 3376, // #3392
+ 47, 147724, 147724, 3420, 3420, // #3393
+ 2, 147776, 147776, 1664, 1664, // #3394
+ 3, 147806, 147806, 2734, 2734, // #3395
+ 4, 147853, 147853, 509, 509, // #3396
+ 40, 147904, 147904, 3376, 3376, // #3397
+ 47, 147980, 147980, 3420, 3420, // #3398
+ 2, 148032, 148032, 1664, 1664, // #3399
+ 3, 148062, 148062, 2734, 2734, // #3400
+ 4, 148109, 148109, 509, 509, // #3401
+ 40, 148160, 148160, 3376, 3376, // #3402
+ 47, 148236, 148236, 3420, 3420, // #3403
+ 2, 148296, 148296, 2072, 2072, // #3404
+ 3, 148318, 148318, 2734, 2734, // #3405
+ 4, 148365, 148365, 509, 509, // #3406
+ 40, 148416, 148416, 3376, 3376, // #3407
+ 47, 148492, 148492, 3420, 3420, // #3408
+ 2, 148552, 148552, 2072, 2072, // #3409
+ 3, 148574, 148574, 2734, 2734, // #3410
+ 4, 148621, 148621, 509, 509, // #3411
+ 40, 148672, 148672, 3376, 3376, // #3412
+ 47, 148748, 148748, 3420, 3420, // #3413
+ 2, 148808, 148808, 2488, 2488, // #3414
+ 3, 148830, 148830, 2734, 2734, // #3415
+ 4, 148877, 148877, 509, 509, // #3416
+ 40, 148928, 148928, 3376, 3376, // #3417
+ 47, 149004, 149004, 3420, 3420, // #3418
+ 2, 149064, 149064, 2488, 2488, // #3419
+ 3, 149086, 149086, 2734, 2734, // #3420
+ 4, 149133, 149133, 509, 509, // #3421
+ 40, 149184, 149184, 3376, 3376, // #3422
+ 47, 149260, 149260, 3420, 3420, // #3423
+ 2, 149320, 149320, 2904, 2904, // #3424
+ 3, 149342, 149342, 2734, 2734, // #3425
+ 4, 149389, 149389, 509, 509, // #3426
+ 40, 149440, 149440, 3376, 3376, // #3427
+ 47, 149516, 149516, 3420, 3420, // #3428
+ 2, 149576, 149576, 2904, 2904, // #3429
+ 3, 149598, 149598, 2734, 2734, // #3430
+ 4, 149645, 149645, 509, 509, // #3431
+ 40, 149696, 149696, 3376, 3376, // #3432
+ 47, 149772, 149772, 3420, 3420, // #3433
+ 2, 149824, 149824, 3152, 3152, // #3434
+ 3, 149854, 149854, 2734, 2734, // #3435
+ 4, 149901, 149901, 509, 509, // #3436
+ 40, 149952, 149952, 3376, 3376, // #3437
+ 47, 150028, 150028, 3420, 3420, // #3438
+ 2, 150080, 150080, 3152, 3152, // #3439
+ 3, 150110, 150110, 2734, 2734, // #3440
+ 4, 150157, 150157, 509, 509, // #3441
+ 40, 150208, 150208, 3376, 3376, // #3442
+ 47, 150284, 150284, 3420, 3420, // #3443
+ 2, 150336, 150336, 3552, 3552, // #3444
+ 3, 150366, 150366, 2734, 2734, // #3445
+ 4, 150413, 150413, 509, 509, // #3446
+ 40, 150464, 150464, 3376, 3376, // #3447
+ 47, 150540, 150540, 3420, 3420, // #3448
+ 2, 150592, 150592, 3552, 3552, // #3449
+ 3, 150622, 150622, 2734, 2734, // #3450
+ 4, 150669, 150669, 509, 509, // #3451
+ 40, 150720, 150720, 3376, 3376, // #3452
+ 47, 150796, 150796, 3420, 3420, // #3453
+ 2, 150848, 150848, 3952, 3952, // #3454
+ 3, 150878, 150878, 2734, 2734, // #3455
+ 4, 150925, 150925, 509, 509, // #3456
+ 40, 150976, 150976, 3376, 3376, // #3457
+ 47, 151052, 151052, 3420, 3420, // #3458
+ 2, 151104, 151104, 3952, 3952, // #3459
+ 3, 151134, 151134, 2734, 2734, // #3460
+ 4, 151181, 151181, 509, 509, // #3461
+ 40, 151232, 151232, 3376, 3376, // #3462
+ 47, 151308, 151308, 3420, 3420, // #3463
+ 2, 151368, 151368, 264, 264, // #3464
+ 3, 151390, 151390, 2734, 2734, // #3465
+ 4, 151437, 151437, 509, 509, // #3466
+ 40, 151488, 151488, 3376, 3376, // #3467
+ 47, 151564, 151564, 3420, 3420, // #3468
+ 2, 151624, 151624, 264, 264, // #3469
+ 3, 151646, 151646, 2734, 2734, // #3470
+ 4, 151693, 151693, 509, 509, // #3471
+ 40, 151744, 151744, 3376, 3376, // #3472
+ 47, 151820, 151820, 3420, 3420, // #3473
+ 2, 151880, 151880, 264, 264, // #3474
+ 3, 151902, 151902, 2734, 2734, // #3475
+ 4, 151949, 151949, 509, 509, // #3476
+ 40, 152000, 152000, 3376, 3376, // #3477
+ 47, 152076, 152076, 3420, 3420, // #3478
+ 2, 152128, 152128, 672, 672, // #3479
+ 3, 152158, 152158, 2734, 2734, // #3480
+ 4, 152205, 152205, 509, 509, // #3481
+ 40, 152256, 152256, 3376, 3376, // #3482
+ 47, 152332, 152332, 3420, 3420, // #3483
+ 2, 152384, 152384, 672, 672, // #3484
+ 3, 152414, 152414, 2734, 2734, // #3485
+ 4, 152461, 152461, 509, 509, // #3486
+ 40, 152512, 152512, 3376, 3376, // #3487
+ 47, 152588, 152588, 3420, 3420, // #3488
+ 2, 152640, 152640, 672, 672, // #3489
+ 3, 152670, 152670, 2734, 2734, // #3490
+ 4, 152717, 152717, 509, 509, // #3491
+ 40, 152768, 152768, 3376, 3376, // #3492
+ 47, 152844, 152844, 3420, 3420, // #3493
+ 2, 152896, 152896, 1072, 1072, // #3494
+ 3, 152926, 152926, 2734, 2734, // #3495
+ 4, 152973, 152973, 509, 509, // #3496
+ 40, 153024, 153024, 3376, 3376, // #3497
+ 47, 153100, 153100, 3420, 3420, // #3498
+ 2, 153152, 153152, 1072, 1072, // #3499
+ 3, 153182, 153182, 2734, 2734, // #3500
+ 4, 153229, 153229, 509, 509, // #3501
+ 40, 153280, 153280, 3376, 3376, // #3502
+ 47, 153356, 153356, 3420, 3420, // #3503
+ 2, 153408, 153408, 1472, 1472, // #3504
+ 3, 153438, 153438, 2734, 2734, // #3505
+ 4, 153485, 153485, 509, 509, // #3506
+ 40, 153536, 153536, 3376, 3376, // #3507
+ 47, 153612, 153612, 3420, 3420, // #3508
+ 2, 153664, 153664, 1472, 1472, // #3509
+ 3, 153694, 153694, 2734, 2734, // #3510
+ 4, 153741, 153741, 509, 509, // #3511
+ 40, 153792, 153792, 3376, 3376, // #3512
+ 47, 153868, 153868, 3420, 3420, // #3513
+ 2, 153928, 153928, 1880, 1880, // #3514
+ 3, 153950, 153950, 2734, 2734, // #3515
+ 4, 153997, 153997, 509, 509, // #3516
+ 40, 154048, 154048, 3376, 3376, // #3517
+ 47, 154124, 154124, 3420, 3420, // #3518
+ 2, 154184, 154184, 1880, 1880, // #3519
+ 3, 154206, 154206, 2734, 2734, // #3520
+ 4, 154253, 154253, 509, 509, // #3521
+ 40, 154304, 154304, 3376, 3376, // #3522
+ 47, 154380, 154380, 3420, 3420, // #3523
+ 2, 154432, 154432, 2288, 2288, // #3524
+ 3, 154462, 154462, 2734, 2734, // #3525
+ 4, 154509, 154509, 509, 509, // #3526
+ 40, 154560, 154560, 3376, 3376, // #3527
+ 47, 154636, 154636, 3420, 3420, // #3528
+ 2, 154688, 154688, 2288, 2288, // #3529
+ 3, 154718, 154718, 2734, 2734, // #3530
+ 4, 154765, 154765, 509, 509, // #3531
+ 40, 154816, 154816, 3376, 3376, // #3532
+ 47, 154892, 154892, 3420, 3420, // #3533
+ 2, 154944, 154944, 2704, 2704, // #3534
+ 3, 154974, 154974, 2734, 2734, // #3535
+ 4, 155021, 155021, 509, 509, // #3536
+ 40, 155072, 155072, 3376, 3376, // #3537
+ 47, 155148, 155148, 3420, 3420, // #3538
+ 2, 155200, 155200, 2704, 2704, // #3539
+ 3, 155230, 155230, 2734, 2734, // #3540
+ 4, 155277, 155277, 509, 509, // #3541
+ 40, 155328, 155328, 3376, 3376, // #3542
+ 47, 155404, 155404, 3420, 3420, // #3543
+ 2, 155464, 155464, 3112, 3112, // #3544
+ 3, 155486, 155486, 2734, 2734, // #3545
+ 4, 155533, 155533, 509, 509, // #3546
+ 40, 155584, 155584, 3376, 3376, // #3547
+ 47, 155660, 155660, 3420, 3420, // #3548
+ 2, 155720, 155720, 3112, 3112, // #3549
+ 3, 155742, 155742, 2734, 2734, // #3550
+ 4, 155789, 155789, 509, 509, // #3551
+ 40, 155840, 155840, 3376, 3376, // #3552
+ 47, 155916, 155916, 3420, 3420, // #3553
+ 2, 155976, 155976, 3512, 3512, // #3554
+ 3, 155998, 155998, 2734, 2734, // #3555
+ 4, 156045, 156045, 509, 509, // #3556
+ 40, 156096, 156096, 3376, 3376, // #3557
+ 47, 156172, 156172, 3420, 3420, // #3558
+ 2, 156232, 156232, 3512, 3512, // #3559
+ 3, 156254, 156254, 2734, 2734, // #3560
+ 4, 156301, 156301, 509, 509, // #3561
+ 40, 156352, 156352, 3376, 3376, // #3562
+ 47, 156428, 156428, 3420, 3420, // #3563
+ 2, 156488, 156488, 3912, 3912, // #3564
+ 3, 156510, 156510, 2734, 2734, // #3565
+ 4, 156557, 156557, 509, 509, // #3566
+ 40, 156608, 156608, 3376, 3376, // #3567
+ 47, 156684, 156684, 3420, 3420, // #3568
+ 2, 156744, 156744, 3912, 3912, // #3569
+ 3, 156766, 156766, 2734, 2734, // #3570
+ 4, 156813, 156813, 509, 509, // #3571
+ 40, 156864, 156864, 3376, 3376, // #3572
+ 47, 156940, 156940, 3420, 3420, // #3573
+ 2, 157000, 157000, 216, 216, // #3574
+ 3, 157022, 157022, 2734, 2734, // #3575
+ 4, 157069, 157069, 509, 509, // #3576
+ 40, 157120, 157120, 3376, 3376, // #3577
+ 47, 157196, 157196, 3420, 3420, // #3578
+ 2, 157256, 157256, 216, 216, // #3579
+ 3, 157278, 157278, 2734, 2734, // #3580
+ 4, 157325, 157325, 509, 509, // #3581
+ 40, 157376, 157376, 3376, 3376, // #3582
+ 47, 157452, 157452, 3420, 3420, // #3583
+ 2, 157512, 157512, 632, 632, // #3584
+ 3, 157534, 157534, 2734, 2734, // #3585
+ 4, 157581, 157581, 509, 509, // #3586
+ 40, 157632, 157632, 3376, 3376, // #3587
+ 47, 157708, 157708, 3420, 3420, // #3588
+ 2, 157768, 157768, 632, 632, // #3589
+ 3, 157790, 157790, 2734, 2734, // #3590
+ 4, 157837, 157837, 509, 509, // #3591
+ 40, 157888, 157888, 3376, 3376, // #3592
+ 47, 157964, 157964, 3420, 3420, // #3593
+ 2, 158024, 158024, 632, 632, // #3594
+ 3, 158046, 158046, 2734, 2734, // #3595
+ 4, 158093, 158093, 509, 509, // #3596
+ 40, 158144, 158144, 3376, 3376, // #3597
+ 47, 158220, 158220, 3420, 3420, // #3598
+ 2, 158272, 158272, 1040, 1040, // #3599
+ 3, 158302, 158302, 2734, 2734, // #3600
+ 4, 158349, 158349, 509, 509, // #3601
+ 40, 158400, 158400, 3376, 3376, // #3602
+ 47, 158476, 158476, 3420, 3420, // #3603
+ 2, 158528, 158528, 1040, 1040, // #3604
+ 3, 158558, 158558, 2734, 2734, // #3605
+ 4, 158605, 158605, 509, 509, // #3606
+ 40, 158656, 158656, 3376, 3376, // #3607
+ 47, 158732, 158732, 3420, 3420, // #3608
+ 2, 158784, 158784, 1040, 1040, // #3609
+ 3, 158814, 158814, 2734, 2734, // #3610
+ 4, 158861, 158861, 509, 509, // #3611
+ 40, 158912, 158912, 3376, 3376, // #3612
+ 47, 158988, 158988, 3420, 3420, // #3613
+ 2, 159040, 159040, 1440, 1440, // #3614
+ 3, 159070, 159070, 2734, 2734, // #3615
+ 4, 159117, 159117, 509, 509, // #3616
+ 40, 159168, 159168, 3376, 3376, // #3617
+ 47, 159244, 159244, 3420, 3420, // #3618
+ 2, 159296, 159296, 1440, 1440, // #3619
+ 3, 159326, 159326, 2734, 2734, // #3620
+ 4, 159373, 159373, 509, 509, // #3621
+ 40, 159424, 159424, 3376, 3376, // #3622
+ 47, 159500, 159500, 3420, 3420, // #3623
+ 2, 159552, 159552, 1840, 1840, // #3624
+ 3, 159582, 159582, 2734, 2734, // #3625
+ 4, 159629, 159629, 509, 509, // #3626
+ 40, 159680, 159680, 3376, 3376, // #3627
+ 47, 159756, 159756, 3420, 3420, // #3628
+ 2, 159808, 159808, 1840, 1840, // #3629
+ 3, 159838, 159838, 2734, 2734, // #3630
+ 4, 159885, 159885, 509, 509, // #3631
+ 40, 159936, 159936, 3376, 3376, // #3632
+ 47, 160012, 160012, 3420, 3420, // #3633
+ 2, 160072, 160072, 2248, 2248, // #3634
+ 3, 160094, 160094, 2734, 2734, // #3635
+ 4, 160141, 160141, 509, 509, // #3636
+ 40, 160192, 160192, 3376, 3376, // #3637
+ 47, 160268, 160268, 3420, 3420, // #3638
+ 2, 160328, 160328, 2248, 2248, // #3639
+ 3, 160350, 160350, 2734, 2734, // #3640
+ 4, 160397, 160397, 509, 509, // #3641
+ 40, 160448, 160448, 3376, 3376, // #3642
+ 47, 160524, 160524, 3420, 3420, // #3643
+ 2, 160576, 160576, 2656, 2656, // #3644
+ 3, 160606, 160606, 2734, 2734, // #3645
+ 4, 160653, 160653, 509, 509, // #3646
+ 40, 160704, 160704, 3376, 3376, // #3647
+ 47, 160780, 160780, 3420, 3420, // #3648
+ 2, 160832, 160832, 2656, 2656, // #3649
+ 3, 160862, 160862, 2734, 2734, // #3650
+ 4, 160909, 160909, 509, 509, // #3651
+ 40, 160960, 160960, 3376, 3376, // #3652
+ 47, 161036, 161036, 3420, 3420, // #3653
+ 2, 161088, 161088, 3072, 3072, // #3654
+ 3, 161118, 161118, 2734, 2734, // #3655
+ 4, 161165, 161165, 509, 509, // #3656
+ 40, 161216, 161216, 3376, 3376, // #3657
+ 47, 161292, 161292, 3420, 3420, // #3658
+ 2, 161344, 161344, 3072, 3072, // #3659
+ 3, 161374, 161374, 2734, 2734, // #3660
+ 4, 161421, 161421, 509, 509, // #3661
+ 40, 161472, 161472, 3376, 3376, // #3662
+ 47, 161548, 161548, 3420, 3420, // #3663
+ 2, 161608, 161608, 3480, 3480, // #3664
+ 3, 161630, 161630, 2734, 2734, // #3665
+ 4, 161677, 161677, 509, 509, // #3666
+ 40, 161728, 161728, 3376, 3376, // #3667
+ 47, 161804, 161804, 3420, 3420, // #3668
+ 2, 161864, 161864, 3480, 3480, // #3669
+ 3, 161886, 161886, 2734, 2734, // #3670
+ 4, 161933, 161933, 509, 509, // #3671
+ 40, 161984, 161984, 3376, 3376, // #3672
+ 47, 162060, 162060, 3420, 3420, // #3673
+ 2, 162120, 162120, 3880, 3880, // #3674
+ 3, 162142, 162142, 2734, 2734, // #3675
+ 4, 162189, 162189, 509, 509, // #3676
+ 40, 162240, 162240, 3376, 3376, // #3677
+ 47, 162316, 162316, 3420, 3420, // #3678
+ 2, 162376, 162376, 3880, 3880, // #3679
+ 3, 162398, 162398, 2734, 2734, // #3680
+ 4, 162445, 162445, 509, 509, // #3681
+ 40, 162496, 162496, 3376, 3376, // #3682
+ 47, 162572, 162572, 3420, 3420, // #3683
+ 2, 162632, 162632, 184, 184, // #3684
+ 3, 162654, 162654, 2734, 2734, // #3685
+ 4, 162701, 162701, 509, 509, // #3686
+ 40, 162752, 162752, 3376, 3376, // #3687
+ 47, 162828, 162828, 3420, 3420, // #3688
+ 2, 162888, 162888, 184, 184, // #3689
+ 3, 162910, 162910, 2734, 2734, // #3690
+ 4, 162957, 162957, 509, 509, // #3691
+ 40, 163008, 163008, 3376, 3376, // #3692
+ 47, 163084, 163084, 3420, 3420, // #3693
+ 2, 163144, 163144, 584, 584, // #3694
+ 3, 163166, 163166, 2734, 2734, // #3695
+ 4, 163213, 163213, 509, 509, // #3696
+ 40, 163264, 163264, 3376, 3376, // #3697
+ 47, 163340, 163340, 3420, 3420, // #3698
+ 2, 163400, 163400, 584, 584, // #3699
+ 3, 163422, 163422, 2734, 2734, // #3700
+ 4, 163469, 163469, 509, 509, // #3701
+ 40, 163520, 163520, 3376, 3376, // #3702
+ 47, 163596, 163596, 3420, 3420, // #3703
+ 2, 163648, 163648, 992, 992, // #3704
+ 3, 163678, 163678, 2734, 2734, // #3705
+ 4, 163725, 163725, 509, 509, // #3706
+ 40, 163776, 163776, 3376, 3376, // #3707
+ 47, 163852, 163852, 3420, 3420, // #3708
+ 2, 163904, 163904, 992, 992, // #3709
+ 3, 163934, 163934, 2734, 2734, // #3710
+ 4, 163981, 163981, 509, 509, // #3711
+ 40, 164032, 164032, 3376, 3376, // #3712
+ 47, 164108, 164108, 3420, 3420, // #3713
+ 2, 164160, 164160, 992, 992, // #3714
+ 3, 164190, 164190, 2734, 2734, // #3715
+ 4, 164237, 164237, 509, 509, // #3716
+ 40, 164288, 164288, 3376, 3376, // #3717
+ 47, 164364, 164364, 3420, 3420, // #3718
+ 2, 164424, 164424, 1400, 1400, // #3719
+ 3, 164446, 164446, 2734, 2734, // #3720
+ 4, 164493, 164493, 509, 509, // #3721
+ 40, 164544, 164544, 3376, 3376, // #3722
+ 47, 164620, 164620, 3420, 3420, // #3723
+ 2, 164680, 164680, 1400, 1400, // #3724
+ 3, 164702, 164702, 2734, 2734, // #3725
+ 4, 164749, 164749, 509, 509, // #3726
+ 40, 164800, 164800, 3376, 3376, // #3727
+ 47, 164876, 164876, 3420, 3420, // #3728
+ 2, 164936, 164936, 1400, 1400, // #3729
+ 3, 164958, 164958, 2734, 2734, // #3730
+ 4, 165005, 165005, 509, 509, // #3731
+ 40, 165056, 165056, 3376, 3376, // #3732
+ 47, 165132, 165132, 3420, 3420, // #3733
+ 2, 165192, 165192, 1800, 1800, // #3734
+ 3, 165214, 165214, 2734, 2734, // #3735
+ 4, 165261, 165261, 509, 509, // #3736
+ 40, 165312, 165312, 3376, 3376, // #3737
+ 47, 165388, 165388, 3420, 3420, // #3738
+ 2, 165448, 165448, 1800, 1800, // #3739
+ 3, 165470, 165470, 2734, 2734, // #3740
+ 4, 165517, 165517, 509, 509, // #3741
+ 40, 165568, 165568, 3376, 3376, // #3742
+ 47, 165644, 165644, 3420, 3420, // #3743
+ 3, 165704, 165704, 2200, 2200, // #3744
+ 3, 165726, 165726, 2734, 2734, // #3745
+ 4, 165773, 165773, 509, 509, // #3746
+ 40, 165824, 165824, 3376, 3376, // #3747
+ 47, 165900, 165900, 3420, 3420, // #3748
+ 3, 165960, 165960, 2200, 2200, // #3749
+ 3, 165982, 165982, 2734, 2734, // #3750
+ 4, 166029, 166029, 509, 509, // #3751
+ 40, 166080, 166080, 3376, 3376, // #3752
+ 47, 166156, 166156, 3420, 3420, // #3753
+ 3, 166208, 166208, 2608, 2608, // #3754
+ 3, 166238, 166238, 2734, 2734, // #3755
+ 4, 166285, 166285, 509, 509, // #3756
+ 40, 166336, 166336, 3376, 3376, // #3757
+ 47, 166412, 166412, 3420, 3420, // #3758
+ 3, 166464, 166464, 2608, 2608, // #3759
+ 3, 166494, 166494, 2734, 2734, // #3760
+ 4, 166541, 166541, 509, 509, // #3761
+ 40, 166592, 166592, 3376, 3376, // #3762
+ 47, 166668, 166668, 3420, 3420, // #3763
+ 3, 166720, 166720, 3024, 3024, // #3764
+ 3, 166750, 166750, 2734, 2734, // #3765
+ 4, 166797, 166797, 509, 509, // #3766
+ 40, 166848, 166848, 3376, 3376, // #3767
+ 47, 166924, 166924, 3420, 3420, // #3768
+ 3, 166976, 166976, 3024, 3024, // #3769
+ 3, 167006, 167006, 2734, 2734, // #3770
+ 4, 167053, 167053, 509, 509, // #3771
+ 40, 167104, 167104, 3376, 3376, // #3772
+ 47, 167180, 167180, 3420, 3420, // #3773
+ 3, 167232, 167232, 3440, 3440, // #3774
+ 3, 167262, 167262, 2734, 2734, // #3775
+ 4, 167309, 167309, 509, 509, // #3776
+ 40, 167360, 167360, 3376, 3376, // #3777
+ 47, 167436, 167436, 3420, 3420, // #3778
+ 3, 167488, 167488, 3440, 3440, // #3779
+ 3, 167518, 167518, 2734, 2734, // #3780
+ 4, 167565, 167565, 509, 509, // #3781
+ 40, 167616, 167616, 3376, 3376, // #3782
+ 47, 167692, 167692, 3420, 3420, // #3783
+ 3, 167752, 167752, 3848, 3848, // #3784
+ 3, 167774, 167774, 2734, 2734, // #3785
+ 4, 167821, 167821, 509, 509, // #3786
+ 40, 167872, 167872, 3376, 3376, // #3787
+ 47, 167948, 167948, 3420, 3420, // #3788
+ 3, 168008, 168008, 3848, 3848, // #3789
+ 3, 168030, 168030, 2734, 2734, // #3790
+ 4, 168077, 168077, 509, 509, // #3791
+ 40, 168128, 168128, 3376, 3376, // #3792
+ 47, 168204, 168204, 3420, 3420, // #3793
+ 3, 168264, 168264, 152, 152, // #3794
+ 3, 168286, 168286, 2734, 2734, // #3795
+ 4, 168333, 168333, 509, 509, // #3796
+ 40, 168384, 168384, 3376, 3376, // #3797
+ 47, 168460, 168460, 3420, 3420, // #3798
+ 3, 168520, 168520, 152, 152, // #3799
+ 3, 168542, 168542, 2734, 2734, // #3800
+ 4, 168589, 168589, 509, 509, // #3801
+ 40, 168640, 168640, 3376, 3376, // #3802
+ 47, 168716, 168716, 3420, 3420, // #3803
+ 3, 168776, 168776, 552, 552, // #3804
+ 3, 168798, 168798, 2734, 2734, // #3805
+ 4, 168845, 168845, 509, 509, // #3806
+ 40, 168896, 168896, 3376, 3376, // #3807
+ 47, 168972, 168972, 3420, 3420, // #3808
+ 3, 169032, 169032, 552, 552, // #3809
+ 3, 169054, 169054, 2734, 2734, // #3810
+ 4, 169101, 169101, 509, 509, // #3811
+ 40, 169152, 169152, 3376, 3376, // #3812
+ 47, 169228, 169228, 3420, 3420, // #3813
+ 3, 169280, 169280, 960, 960, // #3814
+ 3, 169310, 169310, 2734, 2734, // #3815
+ 4, 169357, 169357, 509, 509, // #3816
+ 40, 169408, 169408, 3376, 3376, // #3817
+ 47, 169484, 169484, 3420, 3420, // #3818
+ 3, 169536, 169536, 960, 960, // #3819
+ 3, 169566, 169566, 2734, 2734, // #3820
+ 4, 169613, 169613, 509, 509, // #3821
+ 40, 169664, 169664, 3376, 3376, // #3822
+ 47, 169740, 169740, 3420, 3420, // #3823
+ 3, 169800, 169800, 1368, 1368, // #3824
+ 3, 169822, 169822, 2734, 2734, // #3825
+ 4, 169869, 169869, 509, 509, // #3826
+ 40, 169920, 169920, 3376, 3376, // #3827
+ 47, 169996, 169996, 3420, 3420, // #3828
+ 3, 170056, 170056, 1368, 1368, // #3829
+ 3, 170078, 170078, 2734, 2734, // #3830
+ 4, 170125, 170125, 509, 509, // #3831
+ 40, 170176, 170176, 3376, 3376, // #3832
+ 47, 170252, 170252, 3420, 3420, // #3833
+ 3, 170312, 170312, 1368, 1368, // #3834
+ 3, 170334, 170334, 2734, 2734, // #3835
+ 4, 170381, 170381, 509, 509, // #3836
+ 40, 170432, 170432, 3376, 3376, // #3837
+ 47, 170508, 170508, 3420, 3420, // #3838
+ 3, 170560, 170560, 1776, 1776, // #3839
+ 3, 170590, 170590, 2734, 2734, // #3840
+ 4, 170637, 170637, 509, 509, // #3841
+ 40, 170688, 170688, 3376, 3376, // #3842
+ 47, 170764, 170764, 3420, 3420, // #3843
+ 3, 170816, 170816, 1776, 1776, // #3844
+ 3, 170846, 170846, 2734, 2734, // #3845
+ 4, 170893, 170893, 509, 509, // #3846
+ 40, 170944, 170944, 3376, 3376, // #3847
+ 47, 171020, 171020, 3420, 3420, // #3848
+ 3, 171072, 171072, 1776, 1776, // #3849
+ 3, 171102, 171102, 2734, 2734, // #3850
+ 4, 171149, 171149, 509, 509, // #3851
+ 40, 171200, 171200, 3376, 3376, // #3852
+ 47, 171276, 171276, 3420, 3420, // #3853
+ 3, 171328, 171328, 2176, 2176, // #3854
+ 3, 171358, 171358, 2734, 2734, // #3855
+ 4, 171405, 171405, 509, 509, // #3856
+ 40, 171456, 171456, 3376, 3376, // #3857
+ 47, 171532, 171532, 3420, 3420, // #3858
+ 3, 171584, 171584, 2176, 2176, // #3859
+ 3, 171614, 171614, 2734, 2734, // #3860
+ 4, 171661, 171661, 509, 509, // #3861
+ 40, 171712, 171712, 3376, 3376, // #3862
+ 47, 171788, 171788, 3420, 3420, // #3863
+ 3, 171840, 171840, 2576, 2576, // #3864
+ 3, 171870, 171870, 2734, 2734, // #3865
+ 4, 171917, 171917, 509, 509, // #3866
+ 40, 171968, 171968, 3376, 3376, // #3867
+ 47, 172044, 172044, 3420, 3420, // #3868
+ 3, 172096, 172096, 2576, 2576, // #3869
+ 3, 172126, 172126, 2734, 2734, // #3870
+ 4, 172173, 172173, 509, 509, // #3871
+ 40, 172224, 172224, 3376, 3376, // #3872
+ 47, 172300, 172300, 3420, 3420, // #3873
+ 3, 172352, 172352, 2976, 2976, // #3874
+ 3, 172382, 172382, 2734, 2734, // #3875
+ 4, 172429, 172429, 509, 509, // #3876
+ 40, 172480, 172480, 3376, 3376, // #3877
+ 47, 172556, 172556, 3420, 3420, // #3878
+ 3, 172608, 172608, 2976, 2976, // #3879
+ 3, 172638, 172638, 2734, 2734, // #3880
+ 4, 172685, 172685, 509, 509, // #3881
+ 40, 172736, 172736, 3376, 3376, // #3882
+ 47, 172812, 172812, 3420, 3420, // #3883
+ 3, 172864, 172864, 3392, 3392, // #3884
+ 3, 172894, 172894, 2734, 2734, // #3885
+ 4, 172941, 172941, 509, 509, // #3886
+ 40, 172992, 172992, 3376, 3376, // #3887
+ 47, 173068, 173068, 3420, 3420, // #3888
+ 3, 173120, 173120, 3392, 3392, // #3889
+ 3, 173150, 173150, 2734, 2734, // #3890
+ 4, 173197, 173197, 509, 509, // #3891
+ 40, 173248, 173248, 3376, 3376, // #3892
+ 47, 173324, 173324, 3420, 3420, // #3893
+ 3, 173384, 173384, 3800, 3800, // #3894
+ 3, 173406, 173406, 2734, 2734, // #3895
+ 4, 173453, 173453, 509, 509, // #3896
+ 40, 173504, 173504, 3376, 3376, // #3897
+ 47, 173580, 173580, 3420, 3420, // #3898
+ 3, 173640, 173640, 3800, 3800, // #3899
+ 3, 173662, 173662, 2734, 2734, // #3900
+ 4, 173709, 173709, 509, 509, // #3901
+ 40, 173760, 173760, 3376, 3376, // #3902
+ 47, 173836, 173836, 3420, 3420, // #3903
+ 3, 173888, 173888, 112, 112, // #3904
+ 3, 173918, 173918, 2734, 2734, // #3905
+ 4, 173965, 173965, 509, 509, // #3906
+ 40, 174016, 174016, 3376, 3376, // #3907
+ 47, 174092, 174092, 3420, 3420, // #3908
+ 3, 174144, 174144, 112, 112, // #3909
+ 3, 174174, 174174, 2734, 2734, // #3910
+ 4, 174221, 174221, 509, 509, // #3911
+ 40, 174272, 174272, 3376, 3376, // #3912
+ 47, 174348, 174348, 3420, 3420, // #3913
+ 3, 174408, 174408, 520, 520, // #3914
+ 3, 174430, 174430, 2734, 2734, // #3915
+ 4, 174477, 174477, 509, 509, // #3916
+ 40, 174528, 174528, 3376, 3376, // #3917
+ 47, 174604, 174604, 3420, 3420, // #3918
+ 3, 174664, 174664, 520, 520, // #3919
+ 3, 174686, 174686, 2734, 2734, // #3920
+ 4, 174733, 174733, 509, 509, // #3921
+ 40, 174784, 174784, 3376, 3376, // #3922
+ 47, 174860, 174860, 3420, 3420, // #3923
+ 3, 174920, 174920, 520, 520, // #3924
+ 3, 174942, 174942, 2734, 2734, // #3925
+ 4, 174989, 174989, 509, 509, // #3926
+ 40, 175040, 175040, 3376, 3376, // #3927
+ 47, 175116, 175116, 3420, 3420, // #3928
+ 3, 175176, 175176, 920, 920, // #3929
+ 3, 175198, 175198, 2734, 2734, // #3930
+ 4, 175245, 175245, 509, 509, // #3931
+ 40, 175296, 175296, 3376, 3376, // #3932
+ 47, 175372, 175372, 3420, 3420, // #3933
+ 3, 175432, 175432, 920, 920, // #3934
+ 3, 175454, 175454, 2734, 2734, // #3935
+ 4, 175501, 175501, 509, 509, // #3936
+ 40, 175552, 175552, 3376, 3376, // #3937
+ 47, 175628, 175628, 3420, 3420, // #3938
+ 7, 175684, 175684, 1684, 1684, // #3939
+ 7, 175698, 175698, 386, 386, // #3940
+ 11, 175724, 175724, 1692, 1692, // #3941
+ 5, 175752, 175752, 1704, 1704, // #3942
+ 5, 175774, 175774, 1710, 1710, // #3943
+ 6, 175795, 175795, 131, 131, // #3944
+ 7, 175808, 175808, 2464, 2464, // #3945
+ 2, 175832, 175832, 4072, 4072, // #3946
+ 3, 175854, 175854, 2734, 2734, // #3947
+ 14, 175880, 175880, 2504, 2504, // #3948
+ 40, 175936, 175936, 3376, 3376, // #3949
+ 47, 176012, 176012, 3420, 3420, // #3950
+ 5, 176064, 176064, 1872, 1872, // #3951
+ 22, 176128, 176128, 2416, 2416, // #3952
+ 12, 176165, 176165, 2789, 2789, // #3953
+ 12, 176192, 176192, 2672, 2672, // #3954
+ 40, 176256, 176256, 3376, 3376, // #3955
+ 47, 176332, 176332, 3420, 3420, // #3956
+ 7, 176384, 176384, 2464, 2464, // #3957
+ 2, 176400, 176400, 48, 48, // #3958
+ 3, 176430, 176430, 2734, 2734, // #3959
+ 14, 176456, 176456, 2600, 2600, // #3960
+ 40, 176512, 176512, 3376, 3376, // #3961
+ 47, 176588, 176588, 3420, 3420, // #3962
+ 5, 176640, 176640, 1872, 1872, // #3963
+ 11, 176656, 176656, 2624, 2624, // #3964
+ 12, 176677, 176677, 2789, 2789, // #3965
+ 12, 176712, 176712, 2760, 2760, // #3966
+ 40, 176768, 176768, 3376, 3376, // #3967
+ 47, 176844, 176844, 3420, 3420, // #3968
+ 7, 176896, 176896, 2464, 2464, // #3969
+ 2, 176920, 176920, 2744, 2744, // #3970
+ 3, 176942, 176942, 2734, 2734, // #3971
+ 18, 176960, 176960, 2608, 2608, // #3972
+ 40, 177024, 177024, 3376, 3376, // #3973
+ 47, 177100, 177100, 3420, 3420, // #3974
+ 5, 177152, 177152, 1872, 1872, // #3975
+ 11, 177168, 177168, 2864, 2864, // #3976
+ 12, 177189, 177189, 2789, 2789, // #3977
+ 16, 177224, 177224, 2808, 2808, // #3978
+ 40, 177280, 177280, 3376, 3376, // #3979
+ 47, 177356, 177356, 3420, 3420, // #3980
+ 7, 177408, 177408, 2464, 2464, // #3981
+ 2, 177424, 177424, 2992, 2992, // #3982
+ 3, 177454, 177454, 2734, 2734, // #3983
+ 12, 177480, 177480, 2536, 2536, // #3984
+ 40, 177536, 177536, 3376, 3376, // #3985
+ 47, 177612, 177612, 3420, 3420, // #3986
+ 5, 177664, 177664, 1872, 1872, // #3987
+ 11, 177680, 177680, 3104, 3104, // #3988
+ 12, 177701, 177701, 2789, 2789, // #3989
+ 10, 177736, 177736, 2808, 2808, // #3990
+ 40, 177792, 177792, 3376, 3376, // #3991
+ 47, 177868, 177868, 3420, 3420, // #3992
+ 7, 177920, 177920, 2464, 2464, // #3993
+ 2, 177944, 177944, 3224, 3224, // #3994
+ 3, 177966, 177966, 2734, 2734, // #3995
+ 12, 177992, 177992, 2536, 2536, // #3996
+ 40, 178048, 178048, 3376, 3376, // #3997
+ 47, 178124, 178124, 3420, 3420, // #3998
+ 5, 178176, 178176, 1872, 1872, // #3999
+ 22, 178200, 178200, 3336, 3336, // #4000
+ 12, 178229, 178229, 2789, 2789, // #4001
+ 10, 178256, 178256, 3088, 3088, // #4002
+ 40, 178304, 178304, 3376, 3376, // #4003
+ 47, 178380, 178380, 3420, 3420, // #4004
+ 7, 178432, 178432, 2464, 2464, // #4005
+ 2, 178456, 178456, 3464, 3464, // #4006
+ 3, 178478, 178478, 2734, 2734, // #4007
+ 13, 178504, 178504, 2536, 2536, // #4008
+ 40, 178560, 178560, 3376, 3376, // #4009
+ 47, 178636, 178636, 3420, 3420, // #4010
+ 5, 178688, 178688, 1872, 1872, // #4011
+ 22, 178760, 178760, 3576, 3576, // #4012
+ 12, 178789, 178789, 2789, 2789, // #4013
+ 11, 178824, 178824, 2888, 2888, // #4014
+ 40, 178880, 178880, 3376, 3376, // #4015
+ 47, 178956, 178956, 3420, 3420, // #4016
+ 6, 179011, 179011, 1491, 1491, // #4017
+ 6, 179027, 179027, 1491, 1491, // #4018
+ 7, 179051, 179051, 1739, 1739, // #4019
+ 7, 179083, 179083, 1739, 1739, // #4020
+ 7, 179115, 179115, 1739, 1739, // #4021
+ 7, 179147, 179147, 1739, 1739, // #4022
+ 7, 179179, 179179, 1739, 1739, // #4023
+ 19, 179203, 179203, 1747, 1747, // #4024
+ 11, 179232, 179232, 3072, 3072, // #4025
+ 13, 179249, 179249, 3057, 3057, // #4026
+ 11, 179264, 179264, 3072, 3072, // #4027
+ 13, 179281, 179281, 3057, 3057, // #4028
+ 11, 179296, 179296, 3072, 3072, // #4029
+ 11, 179312, 179312, 3072, 3072, // #4030
+ 10, 179339, 179339, 1771, 1771, // #4031
+ 2, 179360, 179360, 64, 64, // #4032
+ 3, 179390, 179390, 2734, 2734, // #4033
+ 12, 179412, 179412, 1812, 1812, // #4034
+ 40, 179456, 179456, 3376, 3376, // #4035
+ 47, 179532, 179532, 3420, 3420, // #4036
+ 6, 179587, 179587, 1491, 1491, // #4037
+ 1, 179600, 179600, 3824, 3824, // #4038
+ 3, 179630, 179630, 2734, 2734, // #4039
+ 4, 179661, 179661, 509, 509, // #4040
+ 40, 179712, 179712, 3376, 3376, // #4041
+ 47, 179788, 179788, 3420, 3420, // #4042
+ 1, 179840, 179840, 3824, 3824, // #4043
+ 3, 179870, 179870, 2734, 2734, // #4044
+ 4, 179917, 179917, 509, 509, // #4045
+ 40, 179968, 179968, 3376, 3376, // #4046
+ 47, 180044, 180044, 3420, 3420, // #4047
+ 2, 180096, 180096, 4064, 4064, // #4048
+ 3, 180126, 180126, 2734, 2734, // #4049
+ 4, 180173, 180173, 509, 509, // #4050
+ 40, 180224, 180224, 3376, 3376, // #4051
+ 47, 180300, 180300, 3420, 3420, // #4052
+ 2, 180352, 180352, 4064, 4064, // #4053
+ 3, 180382, 180382, 2734, 2734, // #4054
+ 4, 180429, 180429, 509, 509, // #4055
+ 40, 180480, 180480, 3376, 3376, // #4056
+ 47, 180556, 180556, 3420, 3420, // #4057
+ 2, 180616, 180616, 376, 376, // #4058
+ 3, 180638, 180638, 2734, 2734, // #4059
+ 4, 180685, 180685, 509, 509, // #4060
+ 40, 180736, 180736, 3376, 3376, // #4061
+ 47, 180812, 180812, 3420, 3420, // #4062
+ 2, 180872, 180872, 376, 376, // #4063
+ 3, 180894, 180894, 2734, 2734, // #4064
+ 4, 180941, 180941, 509, 509, // #4065
+ 40, 180992, 180992, 3376, 3376, // #4066
+ 47, 181068, 181068, 3420, 3420, // #4067
+ 2, 181120, 181120, 784, 784, // #4068
+ 3, 181150, 181150, 2734, 2734, // #4069
+ 4, 181197, 181197, 509, 509, // #4070
+ 40, 181248, 181248, 3376, 3376, // #4071
+ 47, 181324, 181324, 3420, 3420, // #4072
+ 2, 181376, 181376, 784, 784, // #4073
+ 3, 181406, 181406, 2734, 2734, // #4074
+ 4, 181453, 181453, 509, 509, // #4075
+ 40, 181504, 181504, 3376, 3376, // #4076
+ 47, 181580, 181580, 3420, 3420, // #4077
+ 2, 181632, 181632, 1200, 1200, // #4078
+ 3, 181662, 181662, 2734, 2734, // #4079
+ 4, 181709, 181709, 509, 509, // #4080
+ 40, 181760, 181760, 3376, 3376, // #4081
+ 47, 181836, 181836, 3420, 3420, // #4082
+ 2, 181888, 181888, 1200, 1200, // #4083
+ 3, 181918, 181918, 2734, 2734, // #4084
+ 4, 181965, 181965, 509, 509, // #4085
+ 40, 182016, 182016, 3376, 3376, // #4086
+ 47, 182092, 182092, 3420, 3420, // #4087
+ 2, 182152, 182152, 1608, 1608, // #4088
+ 3, 182174, 182174, 2734, 2734, // #4089
+ 4, 182221, 182221, 509, 509, // #4090
+ 40, 182272, 182272, 3376, 3376, // #4091
+ 47, 182348, 182348, 3420, 3420, // #4092
+ 2, 182408, 182408, 1608, 1608, // #4093
+ 3, 182430, 182430, 2734, 2734, // #4094
+ 4, 182477, 182477, 509, 509, // #4095
+ 40, 182528, 182528, 3376, 3376, // #4096
+ 47, 182604, 182604, 3420, 3420, // #4097
+ 2, 182664, 182664, 2008, 2008, // #4098
+ 3, 182686, 182686, 2734, 2734, // #4099
+ 4, 182733, 182733, 509, 509, // #4100
+ 40, 182784, 182784, 3376, 3376, // #4101
+ 47, 182860, 182860, 3420, 3420, // #4102
+ 2, 182920, 182920, 2008, 2008, // #4103
+ 3, 182942, 182942, 2734, 2734, // #4104
+ 4, 182989, 182989, 509, 509, // #4105
+ 40, 183040, 183040, 3376, 3376, // #4106
+ 47, 183116, 183116, 3420, 3420, // #4107
+ 2, 183176, 183176, 2408, 2408, // #4108
+ 3, 183198, 183198, 2734, 2734, // #4109
+ 4, 183245, 183245, 509, 509, // #4110
+ 40, 183296, 183296, 3376, 3376, // #4111
+ 47, 183372, 183372, 3420, 3420, // #4112
+ 2, 183432, 183432, 2408, 2408, // #4113
+ 3, 183454, 183454, 2734, 2734, // #4114
+ 4, 183501, 183501, 509, 509, // #4115
+ 40, 183552, 183552, 3376, 3376, // #4116
+ 47, 183628, 183628, 3420, 3420, // #4117
+ 2, 183688, 183688, 2808, 2808, // #4118
+ 3, 183710, 183710, 2734, 2734, // #4119
+ 4, 183757, 183757, 509, 509, // #4120
+ 40, 183808, 183808, 3376, 3376, // #4121
+ 47, 183884, 183884, 3420, 3420, // #4122
+ 2, 183944, 183944, 2808, 2808, // #4123
+ 3, 183966, 183966, 2734, 2734, // #4124
+ 4, 184013, 184013, 509, 509, // #4125
+ 40, 184064, 184064, 3376, 3376, // #4126
+ 47, 184140, 184140, 3420, 3420, // #4127
+ 2, 184192, 184192, 3216, 3216, // #4128
+ 3, 184222, 184222, 2734, 2734, // #4129
+ 4, 184269, 184269, 509, 509, // #4130
+ 40, 184320, 184320, 3376, 3376, // #4131
+ 47, 184396, 184396, 3420, 3420, // #4132
+ 2, 184448, 184448, 3216, 3216, // #4133
+ 3, 184478, 184478, 2734, 2734, // #4134
+ 4, 184525, 184525, 509, 509, // #4135
+ 40, 184576, 184576, 3376, 3376, // #4136
+ 47, 184652, 184652, 3420, 3420, // #4137
+ 2, 184704, 184704, 3216, 3216, // #4138
+ 3, 184734, 184734, 2734, 2734, // #4139
+ 4, 184781, 184781, 509, 509, // #4140
+ 40, 184832, 184832, 3376, 3376, // #4141
+ 47, 184908, 184908, 3420, 3420, // #4142
+ 2, 184968, 184968, 3624, 3624, // #4143
+ 3, 184990, 184990, 2734, 2734, // #4144
+ 4, 185037, 185037, 509, 509, // #4145
+ 40, 185088, 185088, 3376, 3376, // #4146
+ 47, 185164, 185164, 3420, 3420, // #4147
+ 2, 185224, 185224, 3624, 3624, // #4148
+ 3, 185246, 185246, 2734, 2734, // #4149
+ 4, 185293, 185293, 509, 509, // #4150
+ 40, 185344, 185344, 3376, 3376, // #4151
+ 47, 185420, 185420, 3420, 3420, // #4152
+ 2, 185480, 185480, 3624, 3624, // #4153
+ 3, 185502, 185502, 2734, 2734, // #4154
+ 4, 185549, 185549, 509, 509, // #4155
+ 40, 185600, 185600, 3376, 3376, // #4156
+ 47, 185676, 185676, 3420, 3420, // #4157
+ 2, 185728, 185728, 496, 496, // #4158
+ 3, 185758, 185758, 2734, 2734, // #4159
+ 4, 185805, 185805, 509, 509, // #4160
+ 40, 185856, 185856, 3376, 3376, // #4161
+ 47, 185932, 185932, 3420, 3420, // #4162
+ 2, 185984, 185984, 496, 496, // #4163
+ 3, 186014, 186014, 2734, 2734, // #4164
+ 4, 186061, 186061, 509, 509, // #4165
+ 40, 186112, 186112, 3376, 3376, // #4166
+ 47, 186188, 186188, 3420, 3420, // #4167
+ 2, 186240, 186240, 896, 896, // #4168
+ 3, 186270, 186270, 2734, 2734, // #4169
+ 4, 186317, 186317, 509, 509, // #4170
+ 40, 186368, 186368, 3376, 3376, // #4171
+ 47, 186444, 186444, 3420, 3420, // #4172
+ 2, 186496, 186496, 896, 896, // #4173
+ 3, 186526, 186526, 2734, 2734, // #4174
+ 4, 186573, 186573, 509, 509, // #4175
+ 40, 186624, 186624, 3376, 3376, // #4176
+ 47, 186700, 186700, 3420, 3420, // #4177
+ 2, 186760, 186760, 1304, 1304, // #4178
+ 3, 186782, 186782, 2734, 2734, // #4179
+ 4, 186829, 186829, 509, 509, // #4180
+ 40, 186880, 186880, 3376, 3376, // #4181
+ 47, 186956, 186956, 3420, 3420, // #4182
+ 2, 187016, 187016, 1304, 1304, // #4183
+ 3, 187038, 187038, 2734, 2734, // #4184
+ 4, 187085, 187085, 509, 509, // #4185
+ 40, 187136, 187136, 3376, 3376, // #4186
+ 47, 187212, 187212, 3420, 3420, // #4187
+ 2, 187264, 187264, 1712, 1712, // #4188
+ 3, 187294, 187294, 2734, 2734, // #4189
+ 4, 187341, 187341, 509, 509, // #4190
+ 40, 187392, 187392, 3376, 3376, // #4191
+ 47, 187468, 187468, 3420, 3420, // #4192
+ 2, 187520, 187520, 1712, 1712, // #4193
+ 3, 187550, 187550, 2734, 2734, // #4194
+ 4, 187597, 187597, 509, 509, // #4195
+ 40, 187648, 187648, 3376, 3376, // #4196
+ 47, 187724, 187724, 3420, 3420, // #4197
+ 2, 187776, 187776, 2128, 2128, // #4198
+ 3, 187806, 187806, 2734, 2734, // #4199
+ 4, 187853, 187853, 509, 509, // #4200
+ 40, 187904, 187904, 3376, 3376, // #4201
+ 47, 187980, 187980, 3420, 3420, // #4202
+ 2, 188032, 188032, 2128, 2128, // #4203
+ 3, 188062, 188062, 2734, 2734, // #4204
+ 4, 188109, 188109, 509, 509, // #4205
+ 40, 188160, 188160, 3376, 3376, // #4206
+ 47, 188236, 188236, 3420, 3420, // #4207
+ 2, 188296, 188296, 2536, 2536, // #4208
+ 3, 188318, 188318, 2734, 2734, // #4209
+ 4, 188365, 188365, 509, 509, // #4210
+ 40, 188416, 188416, 3376, 3376, // #4211
+ 47, 188492, 188492, 3420, 3420, // #4212
+ 2, 188552, 188552, 2536, 2536, // #4213
+ 3, 188574, 188574, 2734, 2734, // #4214
+ 4, 188621, 188621, 509, 509, // #4215
+ 40, 188672, 188672, 3376, 3376, // #4216
+ 47, 188748, 188748, 3420, 3420, // #4217
+ 2, 188808, 188808, 2936, 2936, // #4218
+ 3, 188830, 188830, 2734, 2734, // #4219
+ 4, 188877, 188877, 509, 509, // #4220
+ 40, 188928, 188928, 3376, 3376, // #4221
+ 47, 189004, 189004, 3420, 3420, // #4222
+ 2, 189064, 189064, 2936, 2936, // #4223
+ 3, 189086, 189086, 2734, 2734, // #4224
+ 4, 189133, 189133, 509, 509, // #4225
+ 40, 189184, 189184, 3376, 3376, // #4226
+ 47, 189260, 189260, 3420, 3420, // #4227
+ 2, 189320, 189320, 3336, 3336, // #4228
+ 3, 189342, 189342, 2734, 2734, // #4229
+ 4, 189389, 189389, 509, 509, // #4230
+ 40, 189440, 189440, 3376, 3376, // #4231
+ 47, 189516, 189516, 3420, 3420, // #4232
+ 2, 189576, 189576, 3336, 3336, // #4233
+ 3, 189598, 189598, 2734, 2734, // #4234
+ 4, 189645, 189645, 509, 509, // #4235
+ 40, 189696, 189696, 3376, 3376, // #4236
+ 47, 189772, 189772, 3420, 3420, // #4237
+ 2, 189832, 189832, 3736, 3736, // #4238
+ 3, 189854, 189854, 2734, 2734, // #4239
+ 4, 189901, 189901, 509, 509, // #4240
+ 40, 189952, 189952, 3376, 3376, // #4241
+ 47, 190028, 190028, 3420, 3420, // #4242
+ 2, 190088, 190088, 3736, 3736, // #4243
+ 3, 190110, 190110, 2734, 2734, // #4244
+ 4, 190157, 190157, 509, 509, // #4245
+ 40, 190208, 190208, 3376, 3376, // #4246
+ 47, 190284, 190284, 3420, 3420, // #4247
+ 2, 190336, 190336, 48, 48, // #4248
+ 3, 190366, 190366, 2734, 2734, // #4249
+ 4, 190413, 190413, 509, 509, // #4250
+ 40, 190464, 190464, 3376, 3376, // #4251
+ 47, 190540, 190540, 3420, 3420, // #4252
+ 2, 190592, 190592, 48, 48, // #4253
+ 3, 190622, 190622, 2734, 2734, // #4254
+ 4, 190669, 190669, 509, 509, // #4255
+ 40, 190720, 190720, 3376, 3376, // #4256
+ 47, 190796, 190796, 3420, 3420, // #4257
+ 2, 190856, 190856, 456, 456, // #4258
+ 3, 190878, 190878, 2734, 2734, // #4259
+ 4, 190925, 190925, 509, 509, // #4260
+ 40, 190976, 190976, 3376, 3376, // #4261
+ 47, 191052, 191052, 3420, 3420, // #4262
+ 2, 191112, 191112, 456, 456, // #4263
+ 3, 191134, 191134, 2734, 2734, // #4264
+ 4, 191181, 191181, 509, 509, // #4265
+ 40, 191232, 191232, 3376, 3376, // #4266
+ 47, 191308, 191308, 3420, 3420, // #4267
+ 2, 191368, 191368, 456, 456, // #4268
+ 3, 191390, 191390, 2734, 2734, // #4269
+ 4, 191437, 191437, 509, 509, // #4270
+ 40, 191488, 191488, 3376, 3376, // #4271
+ 47, 191564, 191564, 3420, 3420, // #4272
+ 2, 191624, 191624, 856, 856, // #4273
+ 3, 191646, 191646, 2734, 2734, // #4274
+ 4, 191693, 191693, 509, 509, // #4275
+ 40, 191744, 191744, 3376, 3376, // #4276
+ 47, 191820, 191820, 3420, 3420, // #4277
+ 2, 191880, 191880, 856, 856, // #4278
+ 3, 191902, 191902, 2734, 2734, // #4279
+ 4, 191949, 191949, 509, 509, // #4280
+ 40, 192000, 192000, 3376, 3376, // #4281
+ 47, 192076, 192076, 3420, 3420, // #4282
+ 2, 192136, 192136, 1256, 1256, // #4283
+ 3, 192158, 192158, 2734, 2734, // #4284
+ 4, 192205, 192205, 509, 509, // #4285
+ 40, 192256, 192256, 3376, 3376, // #4286
+ 47, 192332, 192332, 3420, 3420, // #4287
+ 2, 192392, 192392, 1256, 1256, // #4288
+ 3, 192414, 192414, 2734, 2734, // #4289
+ 4, 192461, 192461, 509, 509, // #4290
+ 40, 192512, 192512, 3376, 3376, // #4291
+ 47, 192588, 192588, 3420, 3420, // #4292
+ 2, 192640, 192640, 1664, 1664, // #4293
+ 3, 192670, 192670, 2734, 2734, // #4294
+ 4, 192717, 192717, 509, 509, // #4295
+ 40, 192768, 192768, 3376, 3376, // #4296
+ 47, 192844, 192844, 3420, 3420, // #4297
+ 2, 192896, 192896, 1664, 1664, // #4298
+ 3, 192926, 192926, 2734, 2734, // #4299
+ 4, 192973, 192973, 509, 509, // #4300
+ 40, 193024, 193024, 3376, 3376, // #4301
+ 47, 193100, 193100, 3420, 3420, // #4302
+ 2, 193160, 193160, 2072, 2072, // #4303
+ 3, 193182, 193182, 2734, 2734, // #4304
+ 4, 193229, 193229, 509, 509, // #4305
+ 40, 193280, 193280, 3376, 3376, // #4306
+ 47, 193356, 193356, 3420, 3420, // #4307
+ 2, 193416, 193416, 2072, 2072, // #4308
+ 3, 193438, 193438, 2734, 2734, // #4309
+ 4, 193485, 193485, 509, 509, // #4310
+ 40, 193536, 193536, 3376, 3376, // #4311
+ 47, 193612, 193612, 3420, 3420, // #4312
+ 2, 193672, 193672, 2488, 2488, // #4313
+ 3, 193694, 193694, 2734, 2734, // #4314
+ 4, 193741, 193741, 509, 509, // #4315
+ 40, 193792, 193792, 3376, 3376, // #4316
+ 47, 193868, 193868, 3420, 3420, // #4317
+ 2, 193928, 193928, 2488, 2488, // #4318
+ 3, 193950, 193950, 2734, 2734, // #4319
+ 4, 193997, 193997, 509, 509, // #4320
+ 40, 194048, 194048, 3376, 3376, // #4321
+ 47, 194124, 194124, 3420, 3420, // #4322
+ 2, 194184, 194184, 2904, 2904, // #4323
+ 3, 194206, 194206, 2734, 2734, // #4324
+ 4, 194253, 194253, 509, 509, // #4325
+ 40, 194304, 194304, 3376, 3376, // #4326
+ 47, 194380, 194380, 3420, 3420, // #4327
+ 2, 194440, 194440, 2904, 2904, // #4328
+ 3, 194462, 194462, 2734, 2734, // #4329
+ 4, 194509, 194509, 509, 509, // #4330
+ 40, 194560, 194560, 3376, 3376, // #4331
+ 47, 194636, 194636, 3420, 3420, // #4332
+ 2, 194688, 194688, 3152, 3152, // #4333
+ 3, 194718, 194718, 2734, 2734, // #4334
+ 4, 194765, 194765, 509, 509, // #4335
+ 40, 194816, 194816, 3376, 3376, // #4336
+ 47, 194892, 194892, 3420, 3420, // #4337
+ 2, 194944, 194944, 3152, 3152, // #4338
+ 3, 194974, 194974, 2734, 2734, // #4339
+ 4, 195021, 195021, 509, 509, // #4340
+ 40, 195072, 195072, 3376, 3376, // #4341
+ 47, 195148, 195148, 3420, 3420, // #4342
+ 2, 195200, 195200, 3552, 3552, // #4343
+ 3, 195230, 195230, 2734, 2734, // #4344
+ 4, 195277, 195277, 509, 509, // #4345
+ 40, 195328, 195328, 3376, 3376, // #4346
+ 47, 195404, 195404, 3420, 3420, // #4347
+ 2, 195456, 195456, 3552, 3552, // #4348
+ 3, 195486, 195486, 2734, 2734, // #4349
+ 4, 195533, 195533, 509, 509, // #4350
+ 40, 195584, 195584, 3376, 3376, // #4351
+ 47, 195660, 195660, 3420, 3420, // #4352
+ 2, 195712, 195712, 3952, 3952, // #4353
+ 3, 195742, 195742, 2734, 2734, // #4354
+ 4, 195789, 195789, 509, 509, // #4355
+ 40, 195840, 195840, 3376, 3376, // #4356
+ 47, 195916, 195916, 3420, 3420, // #4357
+ 2, 195968, 195968, 3952, 3952, // #4358
+ 3, 195998, 195998, 2734, 2734, // #4359
+ 4, 196045, 196045, 509, 509, // #4360
+ 40, 196096, 196096, 3376, 3376, // #4361
+ 47, 196172, 196172, 3420, 3420, // #4362
+ 2, 196232, 196232, 264, 264, // #4363
+ 3, 196254, 196254, 2734, 2734, // #4364
+ 4, 196301, 196301, 509, 509, // #4365
+ 40, 196352, 196352, 3376, 3376, // #4366
+ 47, 196428, 196428, 3420, 3420, // #4367
+ 2, 196488, 196488, 264, 264, // #4368
+ 3, 196510, 196510, 2734, 2734, // #4369
+ 4, 196557, 196557, 509, 509, // #4370
+ 40, 196608, 196608, 3376, 3376, // #4371
+ 47, 196684, 196684, 3420, 3420, // #4372
+ 2, 196744, 196744, 264, 264, // #4373
+ 3, 196766, 196766, 2734, 2734, // #4374
+ 4, 196813, 196813, 509, 509, // #4375
+ 40, 196864, 196864, 3376, 3376, // #4376
+ 47, 196940, 196940, 3420, 3420, // #4377
+ 2, 196992, 196992, 672, 672, // #4378
+ 3, 197022, 197022, 2734, 2734, // #4379
+ 4, 197069, 197069, 509, 509, // #4380
+ 40, 197120, 197120, 3376, 3376, // #4381
+ 47, 197196, 197196, 3420, 3420, // #4382
+ 2, 197248, 197248, 672, 672, // #4383
+ 3, 197278, 197278, 2734, 2734, // #4384
+ 4, 197325, 197325, 509, 509, // #4385
+ 40, 197376, 197376, 3376, 3376, // #4386
+ 47, 197452, 197452, 3420, 3420, // #4387
+ 2, 197504, 197504, 672, 672, // #4388
+ 3, 197534, 197534, 2734, 2734, // #4389
+ 4, 197581, 197581, 509, 509, // #4390
+ 40, 197632, 197632, 3376, 3376, // #4391
+ 47, 197708, 197708, 3420, 3420, // #4392
+ 2, 197760, 197760, 1072, 1072, // #4393
+ 3, 197790, 197790, 2734, 2734, // #4394
+ 4, 197837, 197837, 509, 509, // #4395
+ 40, 197888, 197888, 3376, 3376, // #4396
+ 47, 197964, 197964, 3420, 3420, // #4397
+ 2, 198016, 198016, 1072, 1072, // #4398
+ 3, 198046, 198046, 2734, 2734, // #4399
+ 4, 198093, 198093, 509, 509, // #4400
+ 40, 198144, 198144, 3376, 3376, // #4401
+ 47, 198220, 198220, 3420, 3420, // #4402
+ 2, 198272, 198272, 1472, 1472, // #4403
+ 3, 198302, 198302, 2734, 2734, // #4404
+ 4, 198349, 198349, 509, 509, // #4405
+ 40, 198400, 198400, 3376, 3376, // #4406
+ 47, 198476, 198476, 3420, 3420, // #4407
+ 2, 198528, 198528, 1472, 1472, // #4408
+ 3, 198558, 198558, 2734, 2734, // #4409
+ 4, 198605, 198605, 509, 509, // #4410
+ 40, 198656, 198656, 3376, 3376, // #4411
+ 47, 198732, 198732, 3420, 3420, // #4412
+ 2, 198792, 198792, 1880, 1880, // #4413
+ 3, 198814, 198814, 2734, 2734, // #4414
+ 4, 198861, 198861, 509, 509, // #4415
+ 40, 198912, 198912, 3376, 3376, // #4416
+ 47, 198988, 198988, 3420, 3420, // #4417
+ 2, 199048, 199048, 1880, 1880, // #4418
+ 3, 199070, 199070, 2734, 2734, // #4419
+ 4, 199117, 199117, 509, 509, // #4420
+ 40, 199168, 199168, 3376, 3376, // #4421
+ 47, 199244, 199244, 3420, 3420, // #4422
+ 2, 199296, 199296, 2288, 2288, // #4423
+ 3, 199326, 199326, 2734, 2734, // #4424
+ 4, 199373, 199373, 509, 509, // #4425
+ 40, 199424, 199424, 3376, 3376, // #4426
+ 47, 199500, 199500, 3420, 3420, // #4427
+ 2, 199552, 199552, 2288, 2288, // #4428
+ 3, 199582, 199582, 2734, 2734, // #4429
+ 4, 199629, 199629, 509, 509, // #4430
+ 40, 199680, 199680, 3376, 3376, // #4431
+ 47, 199756, 199756, 3420, 3420, // #4432
+ 2, 199808, 199808, 2704, 2704, // #4433
+ 3, 199838, 199838, 2734, 2734, // #4434
+ 4, 199885, 199885, 509, 509, // #4435
+ 40, 199936, 199936, 3376, 3376, // #4436
+ 47, 200012, 200012, 3420, 3420, // #4437
+ 2, 200064, 200064, 2704, 2704, // #4438
+ 3, 200094, 200094, 2734, 2734, // #4439
+ 4, 200141, 200141, 509, 509, // #4440
+ 40, 200192, 200192, 3376, 3376, // #4441
+ 47, 200268, 200268, 3420, 3420, // #4442
+ 2, 200328, 200328, 3112, 3112, // #4443
+ 3, 200350, 200350, 2734, 2734, // #4444
+ 4, 200397, 200397, 509, 509, // #4445
+ 40, 200448, 200448, 3376, 3376, // #4446
+ 47, 200524, 200524, 3420, 3420, // #4447
+ 2, 200584, 200584, 3112, 3112, // #4448
+ 3, 200606, 200606, 2734, 2734, // #4449
+ 4, 200653, 200653, 509, 509, // #4450
+ 40, 200704, 200704, 3376, 3376, // #4451
+ 47, 200780, 200780, 3420, 3420, // #4452
+ 2, 200840, 200840, 3512, 3512, // #4453
+ 3, 200862, 200862, 2734, 2734, // #4454
+ 4, 200909, 200909, 509, 509, // #4455
+ 40, 200960, 200960, 3376, 3376, // #4456
+ 47, 201036, 201036, 3420, 3420, // #4457
+ 2, 201096, 201096, 3512, 3512, // #4458
+ 3, 201118, 201118, 2734, 2734, // #4459
+ 4, 201165, 201165, 509, 509, // #4460
+ 40, 201216, 201216, 3376, 3376, // #4461
+ 47, 201292, 201292, 3420, 3420, // #4462
+ 2, 201352, 201352, 3912, 3912, // #4463
+ 3, 201374, 201374, 2734, 2734, // #4464
+ 4, 201421, 201421, 509, 509, // #4465
+ 40, 201472, 201472, 3376, 3376, // #4466
+ 47, 201548, 201548, 3420, 3420, // #4467
+ 2, 201608, 201608, 3912, 3912, // #4468
+ 3, 201630, 201630, 2734, 2734, // #4469
+ 4, 201677, 201677, 509, 509, // #4470
+ 40, 201728, 201728, 3376, 3376, // #4471
+ 47, 201804, 201804, 3420, 3420, // #4472
+ 2, 201864, 201864, 216, 216, // #4473
+ 3, 201886, 201886, 2734, 2734, // #4474
+ 4, 201933, 201933, 509, 509, // #4475
+ 40, 201984, 201984, 3376, 3376, // #4476
+ 47, 202060, 202060, 3420, 3420, // #4477
+ 2, 202120, 202120, 216, 216, // #4478
+ 3, 202142, 202142, 2734, 2734, // #4479
+ 4, 202189, 202189, 509, 509, // #4480
+ 40, 202240, 202240, 3376, 3376, // #4481
+ 47, 202316, 202316, 3420, 3420, // #4482
+ 2, 202376, 202376, 632, 632, // #4483
+ 3, 202398, 202398, 2734, 2734, // #4484
+ 4, 202445, 202445, 509, 509, // #4485
+ 40, 202496, 202496, 3376, 3376, // #4486
+ 47, 202572, 202572, 3420, 3420, // #4487
+ 2, 202632, 202632, 632, 632, // #4488
+ 3, 202654, 202654, 2734, 2734, // #4489
+ 4, 202701, 202701, 509, 509, // #4490
+ 40, 202752, 202752, 3376, 3376, // #4491
+ 47, 202828, 202828, 3420, 3420, // #4492
+ 2, 202888, 202888, 632, 632, // #4493
+ 3, 202910, 202910, 2734, 2734, // #4494
+ 4, 202957, 202957, 509, 509, // #4495
+ 40, 203008, 203008, 3376, 3376, // #4496
+ 47, 203084, 203084, 3420, 3420, // #4497
+ 2, 203136, 203136, 1040, 1040, // #4498
+ 3, 203166, 203166, 2734, 2734, // #4499
+ 4, 203213, 203213, 509, 509, // #4500
+ 40, 203264, 203264, 3376, 3376, // #4501
+ 47, 203340, 203340, 3420, 3420, // #4502
+ 2, 203392, 203392, 1040, 1040, // #4503
+ 3, 203422, 203422, 2734, 2734, // #4504
+ 4, 203469, 203469, 509, 509, // #4505
+ 40, 203520, 203520, 3376, 3376, // #4506
+ 47, 203596, 203596, 3420, 3420, // #4507
+ 2, 203648, 203648, 1040, 1040, // #4508
+ 3, 203678, 203678, 2734, 2734, // #4509
+ 4, 203725, 203725, 509, 509, // #4510
+ 40, 203776, 203776, 3376, 3376, // #4511
+ 47, 203852, 203852, 3420, 3420, // #4512
+ 2, 203904, 203904, 1440, 1440, // #4513
+ 3, 203934, 203934, 2734, 2734, // #4514
+ 4, 203981, 203981, 509, 509, // #4515
+ 40, 204032, 204032, 3376, 3376, // #4516
+ 47, 204108, 204108, 3420, 3420, // #4517
+ 2, 204160, 204160, 1440, 1440, // #4518
+ 3, 204190, 204190, 2734, 2734, // #4519
+ 4, 204237, 204237, 509, 509, // #4520
+ 40, 204288, 204288, 3376, 3376, // #4521
+ 47, 204364, 204364, 3420, 3420, // #4522
+ 2, 204416, 204416, 1840, 1840, // #4523
+ 3, 204446, 204446, 2734, 2734, // #4524
+ 4, 204493, 204493, 509, 509, // #4525
+ 40, 204544, 204544, 3376, 3376, // #4526
+ 47, 204620, 204620, 3420, 3420, // #4527
+ 2, 204672, 204672, 1840, 1840, // #4528
+ 3, 204702, 204702, 2734, 2734, // #4529
+ 4, 204749, 204749, 509, 509, // #4530
+ 40, 204800, 204800, 3376, 3376, // #4531
+ 47, 204876, 204876, 3420, 3420, // #4532
+ 2, 204936, 204936, 2248, 2248, // #4533
+ 3, 204958, 204958, 2734, 2734, // #4534
+ 4, 205005, 205005, 509, 509, // #4535
+ 40, 205056, 205056, 3376, 3376, // #4536
+ 47, 205132, 205132, 3420, 3420, // #4537
+ 2, 205192, 205192, 2248, 2248, // #4538
+ 3, 205214, 205214, 2734, 2734, // #4539
+ 4, 205261, 205261, 509, 509, // #4540
+ 40, 205312, 205312, 3376, 3376, // #4541
+ 47, 205388, 205388, 3420, 3420, // #4542
+ 2, 205440, 205440, 2656, 2656, // #4543
+ 3, 205470, 205470, 2734, 2734, // #4544
+ 4, 205517, 205517, 509, 509, // #4545
+ 40, 205568, 205568, 3376, 3376, // #4546
+ 47, 205644, 205644, 3420, 3420, // #4547
+ 2, 205696, 205696, 2656, 2656, // #4548
+ 3, 205726, 205726, 2734, 2734, // #4549
+ 4, 205773, 205773, 509, 509, // #4550
+ 40, 205824, 205824, 3376, 3376, // #4551
+ 47, 205900, 205900, 3420, 3420, // #4552
+ 2, 205952, 205952, 3072, 3072, // #4553
+ 3, 205982, 205982, 2734, 2734, // #4554
+ 4, 206029, 206029, 509, 509, // #4555
+ 40, 206080, 206080, 3376, 3376, // #4556
+ 47, 206156, 206156, 3420, 3420, // #4557
+ 2, 206208, 206208, 3072, 3072, // #4558
+ 3, 206238, 206238, 2734, 2734, // #4559
+ 4, 206285, 206285, 509, 509, // #4560
+ 40, 206336, 206336, 3376, 3376, // #4561
+ 47, 206412, 206412, 3420, 3420, // #4562
+ 2, 206472, 206472, 3480, 3480, // #4563
+ 3, 206494, 206494, 2734, 2734, // #4564
+ 4, 206541, 206541, 509, 509, // #4565
+ 40, 206592, 206592, 3376, 3376, // #4566
+ 47, 206668, 206668, 3420, 3420, // #4567
+ 2, 206728, 206728, 3480, 3480, // #4568
+ 3, 206750, 206750, 2734, 2734, // #4569
+ 4, 206797, 206797, 509, 509, // #4570
+ 40, 206848, 206848, 3376, 3376, // #4571
+ 47, 206924, 206924, 3420, 3420, // #4572
+ 2, 206984, 206984, 3880, 3880, // #4573
+ 3, 207006, 207006, 2734, 2734, // #4574
+ 4, 207053, 207053, 509, 509, // #4575
+ 40, 207104, 207104, 3376, 3376, // #4576
+ 47, 207180, 207180, 3420, 3420, // #4577
+ 2, 207240, 207240, 3880, 3880, // #4578
+ 3, 207262, 207262, 2734, 2734, // #4579
+ 4, 207309, 207309, 509, 509, // #4580
+ 40, 207360, 207360, 3376, 3376, // #4581
+ 47, 207436, 207436, 3420, 3420, // #4582
+ 2, 207496, 207496, 184, 184, // #4583
+ 3, 207518, 207518, 2734, 2734, // #4584
+ 4, 207565, 207565, 509, 509, // #4585
+ 40, 207616, 207616, 3376, 3376, // #4586
+ 47, 207692, 207692, 3420, 3420, // #4587
+ 2, 207752, 207752, 184, 184, // #4588
+ 3, 207774, 207774, 2734, 2734, // #4589
+ 4, 207821, 207821, 509, 509, // #4590
+ 40, 207872, 207872, 3376, 3376, // #4591
+ 47, 207948, 207948, 3420, 3420, // #4592
+ 2, 208008, 208008, 584, 584, // #4593
+ 3, 208030, 208030, 2734, 2734, // #4594
+ 4, 208077, 208077, 509, 509, // #4595
+ 40, 208128, 208128, 3376, 3376, // #4596
+ 47, 208204, 208204, 3420, 3420, // #4597
+ 2, 208264, 208264, 584, 584, // #4598
+ 3, 208286, 208286, 2734, 2734, // #4599
+ 4, 208333, 208333, 509, 509, // #4600
+ 40, 208384, 208384, 3376, 3376, // #4601
+ 47, 208460, 208460, 3420, 3420, // #4602
+ 2, 208512, 208512, 992, 992, // #4603
+ 3, 208542, 208542, 2734, 2734, // #4604
+ 4, 208589, 208589, 509, 509, // #4605
+ 40, 208640, 208640, 3376, 3376, // #4606
+ 47, 208716, 208716, 3420, 3420, // #4607
+ 2, 208768, 208768, 992, 992, // #4608
+ 3, 208798, 208798, 2734, 2734, // #4609
+ 4, 208845, 208845, 509, 509, // #4610
+ 40, 208896, 208896, 3376, 3376, // #4611
+ 47, 208972, 208972, 3420, 3420, // #4612
+ 2, 209024, 209024, 992, 992, // #4613
+ 3, 209054, 209054, 2734, 2734, // #4614
+ 4, 209101, 209101, 509, 509, // #4615
+ 40, 209152, 209152, 3376, 3376, // #4616
+ 47, 209228, 209228, 3420, 3420, // #4617
+ 2, 209288, 209288, 1400, 1400, // #4618
+ 3, 209310, 209310, 2734, 2734, // #4619
+ 4, 209357, 209357, 509, 509, // #4620
+ 40, 209408, 209408, 3376, 3376, // #4621
+ 47, 209484, 209484, 3420, 3420, // #4622
+ 2, 209544, 209544, 1400, 1400, // #4623
+ 3, 209566, 209566, 2734, 2734, // #4624
+ 4, 209613, 209613, 509, 509, // #4625
+ 40, 209664, 209664, 3376, 3376, // #4626
+ 47, 209740, 209740, 3420, 3420, // #4627
+ 2, 209800, 209800, 1400, 1400, // #4628
+ 3, 209822, 209822, 2734, 2734, // #4629
+ 4, 209869, 209869, 509, 509, // #4630
+ 40, 209920, 209920, 3376, 3376, // #4631
+ 47, 209996, 209996, 3420, 3420, // #4632
+ 2, 210056, 210056, 1800, 1800, // #4633
+ 3, 210078, 210078, 2734, 2734, // #4634
+ 4, 210125, 210125, 509, 509, // #4635
+ 40, 210176, 210176, 3376, 3376, // #4636
+ 47, 210252, 210252, 3420, 3420, // #4637
+ 2, 210312, 210312, 1800, 1800, // #4638
+ 3, 210334, 210334, 2734, 2734, // #4639
+ 4, 210381, 210381, 509, 509, // #4640
+ 40, 210432, 210432, 3376, 3376, // #4641
+ 47, 210508, 210508, 3420, 3420, // #4642
+ 3, 210568, 210568, 2200, 2200, // #4643
+ 3, 210590, 210590, 2734, 2734, // #4644
+ 4, 210637, 210637, 509, 509, // #4645
+ 40, 210688, 210688, 3376, 3376, // #4646
+ 47, 210764, 210764, 3420, 3420, // #4647
+ 3, 210824, 210824, 2200, 2200, // #4648
+ 3, 210846, 210846, 2734, 2734, // #4649
+ 4, 210893, 210893, 509, 509, // #4650
+ 40, 210944, 210944, 3376, 3376, // #4651
+ 47, 211020, 211020, 3420, 3420, // #4652
+ 3, 211072, 211072, 2608, 2608, // #4653
+ 3, 211102, 211102, 2734, 2734, // #4654
+ 4, 211149, 211149, 509, 509, // #4655
+ 40, 211200, 211200, 3376, 3376, // #4656
+ 47, 211276, 211276, 3420, 3420, // #4657
+ 3, 211328, 211328, 2608, 2608, // #4658
+ 3, 211358, 211358, 2734, 2734, // #4659
+ 4, 211405, 211405, 509, 509, // #4660
+ 40, 211456, 211456, 3376, 3376, // #4661
+ 47, 211532, 211532, 3420, 3420, // #4662
+ 3, 211584, 211584, 3024, 3024, // #4663
+ 3, 211614, 211614, 2734, 2734, // #4664
+ 4, 211661, 211661, 509, 509, // #4665
+ 40, 211712, 211712, 3376, 3376, // #4666
+ 47, 211788, 211788, 3420, 3420, // #4667
+ 3, 211840, 211840, 3024, 3024, // #4668
+ 3, 211870, 211870, 2734, 2734, // #4669
+ 4, 211917, 211917, 509, 509, // #4670
+ 40, 211968, 211968, 3376, 3376, // #4671
+ 47, 212044, 212044, 3420, 3420, // #4672
+ 3, 212096, 212096, 3440, 3440, // #4673
+ 3, 212126, 212126, 2734, 2734, // #4674
+ 4, 212173, 212173, 509, 509, // #4675
+ 40, 212224, 212224, 3376, 3376, // #4676
+ 47, 212300, 212300, 3420, 3420, // #4677
+ 3, 212352, 212352, 3440, 3440, // #4678
+ 3, 212382, 212382, 2734, 2734, // #4679
+ 4, 212429, 212429, 509, 509, // #4680
+ 40, 212480, 212480, 3376, 3376, // #4681
+ 47, 212556, 212556, 3420, 3420, // #4682
+ 3, 212616, 212616, 3848, 3848, // #4683
+ 3, 212638, 212638, 2734, 2734, // #4684
+ 4, 212685, 212685, 509, 509, // #4685
+ 40, 212736, 212736, 3376, 3376, // #4686
+ 47, 212812, 212812, 3420, 3420, // #4687
+ 3, 212872, 212872, 3848, 3848, // #4688
+ 3, 212894, 212894, 2734, 2734, // #4689
+ 4, 212941, 212941, 509, 509, // #4690
+ 40, 212992, 212992, 3376, 3376, // #4691
+ 47, 213068, 213068, 3420, 3420, // #4692
+ 3, 213128, 213128, 152, 152, // #4693
+ 3, 213150, 213150, 2734, 2734, // #4694
+ 4, 213197, 213197, 509, 509, // #4695
+ 40, 213248, 213248, 3376, 3376, // #4696
+ 47, 213324, 213324, 3420, 3420, // #4697
+ 3, 213384, 213384, 152, 152, // #4698
+ 3, 213406, 213406, 2734, 2734, // #4699
+ 4, 213453, 213453, 509, 509, // #4700
+ 40, 213504, 213504, 3376, 3376, // #4701
+ 47, 213580, 213580, 3420, 3420, // #4702
+ 3, 213640, 213640, 552, 552, // #4703
+ 3, 213662, 213662, 2734, 2734, // #4704
+ 4, 213709, 213709, 509, 509, // #4705
+ 40, 213760, 213760, 3376, 3376, // #4706
+ 47, 213836, 213836, 3420, 3420, // #4707
+ 3, 213896, 213896, 552, 552, // #4708
+ 3, 213918, 213918, 2734, 2734, // #4709
+ 4, 213965, 213965, 509, 509, // #4710
+ 40, 214016, 214016, 3376, 3376, // #4711
+ 47, 214092, 214092, 3420, 3420, // #4712
+ 3, 214144, 214144, 960, 960, // #4713
+ 3, 214174, 214174, 2734, 2734, // #4714
+ 4, 214221, 214221, 509, 509, // #4715
+ 40, 214272, 214272, 3376, 3376, // #4716
+ 47, 214348, 214348, 3420, 3420, // #4717
+ 3, 214400, 214400, 960, 960, // #4718
+ 3, 214430, 214430, 2734, 2734, // #4719
+ 4, 214477, 214477, 509, 509, // #4720
+ 40, 214528, 214528, 3376, 3376, // #4721
+ 47, 214604, 214604, 3420, 3420, // #4722
+ 3, 214664, 214664, 1368, 1368, // #4723
+ 3, 214686, 214686, 2734, 2734, // #4724
+ 4, 214733, 214733, 509, 509, // #4725
+ 40, 214784, 214784, 3376, 3376, // #4726
+ 47, 214860, 214860, 3420, 3420, // #4727
+ 3, 214920, 214920, 1368, 1368, // #4728
+ 3, 214942, 214942, 2734, 2734, // #4729
+ 4, 214989, 214989, 509, 509, // #4730
+ 40, 215040, 215040, 3376, 3376, // #4731
+ 47, 215116, 215116, 3420, 3420, // #4732
+ 3, 215176, 215176, 1368, 1368, // #4733
+ 3, 215198, 215198, 2734, 2734, // #4734
+ 4, 215245, 215245, 509, 509, // #4735
+ 40, 215296, 215296, 3376, 3376, // #4736
+ 47, 215372, 215372, 3420, 3420, // #4737
+ 3, 215424, 215424, 1776, 1776, // #4738
+ 3, 215454, 215454, 2734, 2734, // #4739
+ 4, 215501, 215501, 509, 509, // #4740
+ 40, 215552, 215552, 3376, 3376, // #4741
+ 47, 215628, 215628, 3420, 3420, // #4742
+ 3, 215680, 215680, 1776, 1776, // #4743
+ 3, 215710, 215710, 2734, 2734, // #4744
+ 4, 215757, 215757, 509, 509, // #4745
+ 40, 215808, 215808, 3376, 3376, // #4746
+ 47, 215884, 215884, 3420, 3420, // #4747
+ 3, 215936, 215936, 1776, 1776, // #4748
+ 3, 215966, 215966, 2734, 2734, // #4749
+ 4, 216013, 216013, 509, 509, // #4750
+ 40, 216064, 216064, 3376, 3376, // #4751
+ 47, 216140, 216140, 3420, 3420, // #4752
+ 3, 216192, 216192, 2176, 2176, // #4753
+ 3, 216222, 216222, 2734, 2734, // #4754
+ 4, 216269, 216269, 509, 509, // #4755
+ 40, 216320, 216320, 3376, 3376, // #4756
+ 47, 216396, 216396, 3420, 3420, // #4757
+ 3, 216448, 216448, 2176, 2176, // #4758
+ 3, 216478, 216478, 2734, 2734, // #4759
+ 4, 216525, 216525, 509, 509, // #4760
+ 40, 216576, 216576, 3376, 3376, // #4761
+ 47, 216652, 216652, 3420, 3420, // #4762
+ 3, 216704, 216704, 2576, 2576, // #4763
+ 3, 216734, 216734, 2734, 2734, // #4764
+ 4, 216781, 216781, 509, 509, // #4765
+ 40, 216832, 216832, 3376, 3376, // #4766
+ 47, 216908, 216908, 3420, 3420, // #4767
+ 3, 216960, 216960, 2576, 2576, // #4768
+ 3, 216990, 216990, 2734, 2734, // #4769
+ 4, 217037, 217037, 509, 509, // #4770
+ 40, 217088, 217088, 3376, 3376, // #4771
+ 47, 217164, 217164, 3420, 3420, // #4772
+ 3, 217216, 217216, 2976, 2976, // #4773
+ 3, 217246, 217246, 2734, 2734, // #4774
+ 4, 217293, 217293, 509, 509, // #4775
+ 40, 217344, 217344, 3376, 3376, // #4776
+ 47, 217420, 217420, 3420, 3420, // #4777
+ 3, 217472, 217472, 2976, 2976, // #4778
+ 3, 217502, 217502, 2734, 2734, // #4779
+ 4, 217549, 217549, 509, 509, // #4780
+ 40, 217600, 217600, 3376, 3376, // #4781
+ 47, 217676, 217676, 3420, 3420, // #4782
+ 3, 217728, 217728, 3392, 3392, // #4783
+ 3, 217758, 217758, 2734, 2734, // #4784
+ 4, 217805, 217805, 509, 509, // #4785
+ 40, 217856, 217856, 3376, 3376, // #4786
+ 47, 217932, 217932, 3420, 3420, // #4787
+ 3, 217984, 217984, 3392, 3392, // #4788
+ 3, 218014, 218014, 2734, 2734, // #4789
+ 4, 218061, 218061, 509, 509, // #4790
+ 40, 218112, 218112, 3376, 3376, // #4791
+ 47, 218188, 218188, 3420, 3420, // #4792
+ 3, 218248, 218248, 3800, 3800, // #4793
+ 3, 218270, 218270, 2734, 2734, // #4794
+ 4, 218317, 218317, 509, 509, // #4795
+ 40, 218368, 218368, 3376, 3376, // #4796
+ 47, 218444, 218444, 3420, 3420, // #4797
+ 3, 218504, 218504, 3800, 3800, // #4798
+ 3, 218526, 218526, 2734, 2734, // #4799
+ 4, 218573, 218573, 509, 509, // #4800
+ 40, 218624, 218624, 3376, 3376, // #4801
+ 47, 218700, 218700, 3420, 3420, // #4802
+ 3, 218752, 218752, 112, 112, // #4803
+ 3, 218782, 218782, 2734, 2734, // #4804
+ 4, 218829, 218829, 509, 509, // #4805
+ 40, 218880, 218880, 3376, 3376, // #4806
+ 47, 218956, 218956, 3420, 3420, // #4807
+ 3, 219008, 219008, 112, 112, // #4808
+ 3, 219038, 219038, 2734, 2734, // #4809
+ 4, 219085, 219085, 509, 509, // #4810
+ 40, 219136, 219136, 3376, 3376, // #4811
+ 47, 219212, 219212, 3420, 3420, // #4812
+ 3, 219272, 219272, 520, 520, // #4813
+ 3, 219294, 219294, 2734, 2734, // #4814
+ 4, 219341, 219341, 509, 509, // #4815
+ 40, 219392, 219392, 3376, 3376, // #4816
+ 47, 219468, 219468, 3420, 3420, // #4817
+ 3, 219528, 219528, 520, 520, // #4818
+ 3, 219550, 219550, 2734, 2734, // #4819
+ 4, 219597, 219597, 509, 509, // #4820
+ 40, 219648, 219648, 3376, 3376, // #4821
+ 47, 219724, 219724, 3420, 3420, // #4822
+ 3, 219784, 219784, 520, 520, // #4823
+ 3, 219806, 219806, 2734, 2734, // #4824
+ 4, 219853, 219853, 509, 509, // #4825
+ 40, 219904, 219904, 3376, 3376, // #4826
+ 47, 219980, 219980, 3420, 3420, // #4827
+ 3, 220040, 220040, 920, 920, // #4828
+ 3, 220062, 220062, 2734, 2734, // #4829
+ 4, 220109, 220109, 509, 509, // #4830
+ 40, 220160, 220160, 3376, 3376, // #4831
+ 47, 220236, 220236, 3420, 3420, // #4832
+ 3, 220296, 220296, 920, 920, // #4833
+ 3, 220318, 220318, 2734, 2734, // #4834
+ 4, 220365, 220365, 509, 509, // #4835
+ 40, 220416, 220416, 3376, 3376, // #4836
+ 47, 220492, 220492, 3420, 3420, // #4837
+ 7, 220548, 220548, 1684, 1684, // #4838
+ 7, 220562, 220562, 386, 386, // #4839
+ 11, 220588, 220588, 1692, 1692, // #4840
+ 5, 220616, 220616, 1704, 1704, // #4841
+ 5, 220638, 220638, 1710, 1710, // #4842
+ 6, 220659, 220659, 131, 131, // #4843
+ 7, 220672, 220672, 2464, 2464, // #4844
+ 2, 220696, 220696, 4072, 4072, // #4845
+ 3, 220718, 220718, 2734, 2734, // #4846
+ 14, 220736, 220736, 4032, 4032, // #4847
+ 40, 220800, 220800, 3376, 3376, // #4848
+ 47, 220876, 220876, 3420, 3420, // #4849
+ 5, 220928, 220928, 1872, 1872, // #4850
+ 22, 220992, 220992, 2416, 2416, // #4851
+ 12, 221029, 221029, 2789, 2789, // #4852
+ 12, 221064, 221064, 136, 136, // #4853
+ 40, 221120, 221120, 3376, 3376, // #4854
+ 47, 221196, 221196, 3420, 3420, // #4855
+ 7, 221248, 221248, 2464, 2464, // #4856
+ 2, 221264, 221264, 48, 48, // #4857
+ 3, 221294, 221294, 2734, 2734, // #4858
+ 14, 221312, 221312, 4080, 4080, // #4859
+ 40, 221376, 221376, 3376, 3376, // #4860
+ 47, 221452, 221452, 3420, 3420, // #4861
+ 5, 221504, 221504, 1872, 1872, // #4862
+ 11, 221520, 221520, 2624, 2624, // #4863
+ 12, 221541, 221541, 2789, 2789, // #4864
+ 12, 221568, 221568, 112, 112, // #4865
+ 40, 221632, 221632, 3376, 3376, // #4866
+ 47, 221708, 221708, 3420, 3420, // #4867
+ 7, 221760, 221760, 2464, 2464, // #4868
+ 2, 221784, 221784, 2744, 2744, // #4869
+ 3, 221806, 221806, 2734, 2734, // #4870
+ 18, 221832, 221832, 4088, 4088, // #4871
+ 40, 221888, 221888, 3376, 3376, // #4872
+ 47, 221964, 221964, 3420, 3420, // #4873
+ 5, 222016, 222016, 1872, 1872, // #4874
+ 11, 222032, 222032, 2864, 2864, // #4875
+ 12, 222053, 222053, 2789, 2789, // #4876
+ 16, 222080, 222080, 4016, 4016, // #4877
+ 40, 222144, 222144, 3376, 3376, // #4878
+ 47, 222220, 222220, 3420, 3420, // #4879
+ 7, 222272, 222272, 2464, 2464, // #4880
+ 2, 222288, 222288, 2992, 2992, // #4881
+ 3, 222318, 222318, 2734, 2734, // #4882
+ 12, 222336, 222336, 160, 160, // #4883
+ 40, 222400, 222400, 3376, 3376, // #4884
+ 47, 222476, 222476, 3420, 3420, // #4885
+ 5, 222528, 222528, 1872, 1872, // #4886
+ 11, 222544, 222544, 3104, 3104, // #4887
+ 12, 222565, 222565, 2789, 2789, // #4888
+ 10, 222600, 222600, 344, 344, // #4889
+ 40, 222656, 222656, 3376, 3376, // #4890
+ 47, 222732, 222732, 3420, 3420, // #4891
+ 7, 222784, 222784, 2464, 2464, // #4892
+ 2, 222808, 222808, 3224, 3224, // #4893
+ 3, 222830, 222830, 2734, 2734, // #4894
+ 12, 222856, 222856, 24, 24, // #4895
+ 40, 222912, 222912, 3376, 3376, // #4896
+ 47, 222988, 222988, 3420, 3420, // #4897
+ 5, 223040, 223040, 1872, 1872, // #4898
+ 22, 223064, 223064, 3336, 3336, // #4899
+ 12, 223093, 223093, 2789, 2789, // #4900
+ 10, 223128, 223128, 392, 392, // #4901
+ 40, 223168, 223168, 3376, 3376, // #4902
+ 47, 223244, 223244, 3420, 3420, // #4903
+ 7, 223296, 223296, 2464, 2464, // #4904
+ 2, 223320, 223320, 3464, 3464, // #4905
+ 3, 223342, 223342, 2734, 2734, // #4906
+ 13, 223360, 223360, 160, 160, // #4907
+ 40, 223424, 223424, 3376, 3376, // #4908
+ 47, 223500, 223500, 3420, 3420, // #4909
+ 5, 223552, 223552, 1872, 1872, // #4910
+ 22, 223624, 223624, 3576, 3576, // #4911
+ 12, 223653, 223653, 2789, 2789, // #4912
+ 11, 223688, 223688, 392, 392, // #4913
+ 40, 223744, 223744, 3376, 3376, // #4914
+ 47, 223820, 223820, 3420, 3420, // #4915
+ 7, 223887, 223887, 2879, 2879, // #4916
+ 6, 223907, 223907, 1491, 1491, // #4917
+ 7, 223931, 223931, 1739, 1739, // #4918
+ 7, 223963, 223963, 1739, 1739, // #4919
+ 7, 223995, 223995, 1739, 1739, // #4920
+ 7, 224027, 224027, 1739, 1739, // #4921
+ 7, 224059, 224059, 1739, 1739, // #4922
+ 19, 224083, 224083, 1747, 1747, // #4923
+ 11, 224112, 224112, 3072, 3072, // #4924
+ 11, 224128, 224128, 3072, 3072, // #4925
+ 10, 224155, 224155, 1771, 1771, // #4926
+ 10, 224180, 224180, 756, 756, // #4927
+ 11, 224194, 224194, 642, 642, // #4928
+ 3, 224216, 224216, 3000, 3000, // #4929
+ 10, 224228, 224228, 756, 756, // #4930
+ 17, 224253, 224253, 749, 749, // #4931
+ 3, 224280, 224280, 3000, 3000, // #4932
+ 3, 224296, 224296, 3000, 3000, // #4933
+ 3, 224312, 224312, 3000, 3000, // #4934
+ 3, 224328, 224328, 3000, 3000, // #4935
+ 1, 224339, 224339, 2339, 2339, // #4936
+ 2, 224360, 224360, 504, 504, // #4937
+ 3, 224382, 224382, 2734, 2734, // #4938
+ 12, 224404, 224404, 1812, 1812, // #4939
+ 40, 224448, 224448, 3376, 3376, // #4940
+ 47, 224524, 224524, 3420, 3420, // #4941
+ 6, 224579, 224579, 1491, 1491, // #4942
+ 4, 224600, 224600, 1576, 1576, // #4943
+ 4, 224617, 224617, 2729, 2729, // #4944
+ 6, 224634, 224634, 1834, 1834, // #4945
+ 40, 224704, 224704, 3376, 3376, // #4946
+ 47, 224780, 224780, 3420, 3420, // #4947
+ 3, 224840, 224840, 616, 616, // #4948
+ 3, 224862, 224862, 2734, 2734, // #4949
+ 4, 224909, 224909, 509, 509, // #4950
+ 40, 224960, 224960, 3376, 3376, // #4951
+ 47, 225036, 225036, 3420, 3420, // #4952
+ 3, 225096, 225096, 2664, 2664, // #4953
+ 3, 225118, 225118, 2734, 2734, // #4954
+ 4, 225165, 225165, 509, 509, // #4955
+ 40, 225216, 225216, 3376, 3376, // #4956
+ 47, 225292, 225292, 3420, 3420, // #4957
+ 3, 225352, 225352, 2664, 2664, // #4958
+ 3, 225374, 225374, 2734, 2734, // #4959
+ 4, 225421, 225421, 509, 509, // #4960
+ 40, 225472, 225472, 3376, 3376, // #4961
+ 47, 225548, 225548, 3420, 3420, // #4962
+ 3, 225608, 225608, 3064, 3064, // #4963
+ 3, 225630, 225630, 2734, 2734, // #4964
+ 4, 225677, 225677, 509, 509, // #4965
+ 40, 225728, 225728, 3376, 3376, // #4966
+ 47, 225804, 225804, 3420, 3420, // #4967
+ 3, 225864, 225864, 3064, 3064, // #4968
+ 3, 225886, 225886, 2734, 2734, // #4969
+ 4, 225933, 225933, 509, 509, // #4970
+ 40, 225984, 225984, 3376, 3376, // #4971
+ 47, 226060, 226060, 3420, 3420, // #4972
+ 3, 226112, 226112, 3472, 3472, // #4973
+ 3, 226142, 226142, 2734, 2734, // #4974
+ 4, 226189, 226189, 509, 509, // #4975
+ 40, 226240, 226240, 3376, 3376, // #4976
+ 47, 226316, 226316, 3420, 3420, // #4977
+ 3, 226368, 226368, 3472, 3472, // #4978
+ 3, 226398, 226398, 2734, 2734, // #4979
+ 4, 226445, 226445, 509, 509, // #4980
+ 40, 226496, 226496, 3376, 3376, // #4981
+ 47, 226572, 226572, 3420, 3420, // #4982
+ 3, 226632, 226632, 3880, 3880, // #4983
+ 3, 226654, 226654, 2734, 2734, // #4984
+ 4, 226701, 226701, 509, 509, // #4985
+ 40, 226752, 226752, 3376, 3376, // #4986
+ 47, 226828, 226828, 3420, 3420, // #4987
+ 3, 226888, 226888, 200, 200, // #4988
+ 3, 226910, 226910, 2734, 2734, // #4989
+ 4, 226957, 226957, 509, 509, // #4990
+ 40, 227008, 227008, 3376, 3376, // #4991
+ 47, 227084, 227084, 3420, 3420, // #4992
+ 3, 227144, 227144, 200, 200, // #4993
+ 3, 227166, 227166, 2734, 2734, // #4994
+ 4, 227213, 227213, 509, 509, // #4995
+ 40, 227264, 227264, 3376, 3376, // #4996
+ 47, 227340, 227340, 3420, 3420, // #4997
+ 2, 227400, 227400, 632, 632, // #4998
+ 3, 227422, 227422, 2734, 2734, // #4999
+ 4, 227469, 227469, 509, 509, // #5000
+ 40, 227520, 227520, 3376, 3376, // #5001
+ 47, 227596, 227596, 3420, 3420, // #5002
+ 2, 227656, 227656, 1032, 1032, // #5003
+ 3, 227678, 227678, 2734, 2734, // #5004
+ 4, 227725, 227725, 509, 509, // #5005
+ 40, 227776, 227776, 3376, 3376, // #5006
+ 47, 227852, 227852, 3420, 3420, // #5007
+ 2, 227904, 227904, 1440, 1440, // #5008
+ 3, 227934, 227934, 2734, 2734, // #5009
+ 4, 227981, 227981, 509, 509, // #5010
+ 40, 228032, 228032, 3376, 3376, // #5011
+ 47, 228108, 228108, 3420, 3420, // #5012
+ 2, 228168, 228168, 1848, 1848, // #5013
+ 3, 228190, 228190, 2734, 2734, // #5014
+ 4, 228237, 228237, 509, 509, // #5015
+ 40, 228288, 228288, 3376, 3376, // #5016
+ 47, 228364, 228364, 3420, 3420, // #5017
+ 2, 228416, 228416, 2256, 2256, // #5018
+ 3, 228446, 228446, 2734, 2734, // #5019
+ 4, 228493, 228493, 509, 509, // #5020
+ 40, 228544, 228544, 3376, 3376, // #5021
+ 47, 228620, 228620, 3420, 3420, // #5022
+ 2, 228672, 228672, 224, 224, // #5023
+ 3, 228702, 228702, 2734, 2734, // #5024
+ 4, 228749, 228749, 509, 509, // #5025
+ 40, 228800, 228800, 3376, 3376, // #5026
+ 47, 228876, 228876, 3420, 3420, // #5027
+ 2, 228936, 228936, 1880, 1880, // #5028
+ 3, 228958, 228958, 2734, 2734, // #5029
+ 4, 229005, 229005, 509, 509, // #5030
+ 40, 229056, 229056, 3376, 3376, // #5031
+ 47, 229132, 229132, 3420, 3420, // #5032
+ 2, 229192, 229192, 1880, 1880, // #5033
+ 3, 229214, 229214, 2734, 2734, // #5034
+ 4, 229261, 229261, 509, 509, // #5035
+ 40, 229312, 229312, 3376, 3376, // #5036
+ 47, 229388, 229388, 3420, 3420, // #5037
+ 2, 229448, 229448, 2280, 2280, // #5038
+ 3, 229470, 229470, 2734, 2734, // #5039
+ 4, 229517, 229517, 509, 509, // #5040
+ 40, 229568, 229568, 3376, 3376, // #5041
+ 47, 229644, 229644, 3420, 3420, // #5042
+ 2, 229704, 229704, 2280, 2280, // #5043
+ 3, 229726, 229726, 2734, 2734, // #5044
+ 4, 229773, 229773, 509, 509, // #5045
+ 40, 229824, 229824, 3376, 3376, // #5046
+ 47, 229900, 229900, 3420, 3420, // #5047
+ 2, 229952, 229952, 2688, 2688, // #5048
+ 3, 229982, 229982, 2734, 2734, // #5049
+ 4, 230029, 230029, 509, 509, // #5050
+ 40, 230080, 230080, 3376, 3376, // #5051
+ 47, 230156, 230156, 3420, 3420, // #5052
+ 2, 230208, 230208, 2688, 2688, // #5053
+ 3, 230238, 230238, 2734, 2734, // #5054
+ 4, 230285, 230285, 509, 509, // #5055
+ 40, 230336, 230336, 3376, 3376, // #5056
+ 47, 230412, 230412, 3420, 3420, // #5057
+ 2, 230464, 230464, 3104, 3104, // #5058
+ 3, 230494, 230494, 2734, 2734, // #5059
+ 4, 230541, 230541, 509, 509, // #5060
+ 40, 230592, 230592, 3376, 3376, // #5061
+ 47, 230668, 230668, 3420, 3420, // #5062
+ 2, 230728, 230728, 3512, 3512, // #5063
+ 3, 230750, 230750, 2734, 2734, // #5064
+ 4, 230797, 230797, 509, 509, // #5065
+ 40, 230848, 230848, 3376, 3376, // #5066
+ 47, 230924, 230924, 3420, 3420, // #5067
+ 2, 230984, 230984, 3512, 3512, // #5068
+ 3, 231006, 231006, 2734, 2734, // #5069
+ 4, 231053, 231053, 509, 509, // #5070
+ 40, 231104, 231104, 3376, 3376, // #5071
+ 47, 231180, 231180, 3420, 3420, // #5072
+ 2, 231232, 231232, 3920, 3920, // #5073
+ 3, 231262, 231262, 2734, 2734, // #5074
+ 4, 231309, 231309, 509, 509, // #5075
+ 40, 231360, 231360, 3376, 3376, // #5076
+ 47, 231436, 231436, 3420, 3420, // #5077
+ 2, 231496, 231496, 3944, 3944, // #5078
+ 3, 231518, 231518, 2734, 2734, // #5079
+ 4, 231565, 231565, 509, 509, // #5080
+ 40, 231616, 231616, 3376, 3376, // #5081
+ 47, 231692, 231692, 3420, 3420, // #5082
+ 2, 231752, 231752, 3944, 3944, // #5083
+ 3, 231774, 231774, 2734, 2734, // #5084
+ 4, 231821, 231821, 509, 509, // #5085
+ 40, 231872, 231872, 3376, 3376, // #5086
+ 47, 231948, 231948, 3420, 3420, // #5087
+ 2, 232008, 232008, 248, 248, // #5088
+ 3, 232030, 232030, 2734, 2734, // #5089
+ 4, 232077, 232077, 509, 509, // #5090
+ 40, 232128, 232128, 3376, 3376, // #5091
+ 47, 232204, 232204, 3420, 3420, // #5092
+ 2, 232264, 232264, 248, 248, // #5093
+ 3, 232286, 232286, 2734, 2734, // #5094
+ 4, 232333, 232333, 509, 509, // #5095
+ 40, 232384, 232384, 3376, 3376, // #5096
+ 47, 232460, 232460, 3420, 3420, // #5097
+ 2, 232512, 232512, 656, 656, // #5098
+ 3, 232542, 232542, 2734, 2734, // #5099
+ 4, 232589, 232589, 509, 509, // #5100
+ 40, 232640, 232640, 3376, 3376, // #5101
+ 47, 232716, 232716, 3420, 3420, // #5102
+ 2, 232768, 232768, 656, 656, // #5103
+ 3, 232798, 232798, 2734, 2734, // #5104
+ 4, 232845, 232845, 509, 509, // #5105
+ 40, 232896, 232896, 3376, 3376, // #5106
+ 47, 232972, 232972, 3420, 3420, // #5107
+ 2, 233032, 233032, 1064, 1064, // #5108
+ 3, 233054, 233054, 2734, 2734, // #5109
+ 4, 233101, 233101, 509, 509, // #5110
+ 40, 233152, 233152, 3376, 3376, // #5111
+ 47, 233228, 233228, 3420, 3420, // #5112
+ 2, 233280, 233280, 1472, 1472, // #5113
+ 3, 233310, 233310, 2734, 2734, // #5114
+ 4, 233357, 233357, 509, 509, // #5115
+ 40, 233408, 233408, 3376, 3376, // #5116
+ 47, 233484, 233484, 3420, 3420, // #5117
+ 2, 233536, 233536, 1472, 1472, // #5118
+ 3, 233566, 233566, 2734, 2734, // #5119
+ 4, 233613, 233613, 509, 509, // #5120
+ 40, 233664, 233664, 3376, 3376, // #5121
+ 47, 233740, 233740, 3420, 3420, // #5122
+ 2, 233792, 233792, 3536, 3536, // #5123
+ 3, 233822, 233822, 2734, 2734, // #5124
+ 4, 233869, 233869, 509, 509, // #5125
+ 40, 233920, 233920, 3376, 3376, // #5126
+ 47, 233996, 233996, 3420, 3420, // #5127
+ 2, 234056, 234056, 24, 24, // #5128
+ 3, 234078, 234078, 2734, 2734, // #5129
+ 4, 234125, 234125, 509, 509, // #5130
+ 40, 234176, 234176, 3376, 3376, // #5131
+ 47, 234252, 234252, 3420, 3420, // #5132
+ 2, 234312, 234312, 24, 24, // #5133
+ 3, 234334, 234334, 2734, 2734, // #5134
+ 4, 234381, 234381, 509, 509, // #5135
+ 40, 234432, 234432, 3376, 3376, // #5136
+ 47, 234508, 234508, 3420, 3420, // #5137
+ 2, 234568, 234568, 424, 424, // #5138
+ 3, 234590, 234590, 2734, 2734, // #5139
+ 4, 234637, 234637, 509, 509, // #5140
+ 40, 234688, 234688, 3376, 3376, // #5141
+ 47, 234764, 234764, 3420, 3420, // #5142
+ 2, 234824, 234824, 424, 424, // #5143
+ 3, 234846, 234846, 2734, 2734, // #5144
+ 4, 234893, 234893, 509, 509, // #5145
+ 40, 234944, 234944, 3376, 3376, // #5146
+ 47, 235020, 235020, 3420, 3420, // #5147
+ 2, 235080, 235080, 424, 424, // #5148
+ 3, 235102, 235102, 2734, 2734, // #5149
+ 4, 235149, 235149, 509, 509, // #5150
+ 40, 235200, 235200, 3376, 3376, // #5151
+ 47, 235276, 235276, 3420, 3420, // #5152
+ 2, 235328, 235328, 832, 832, // #5153
+ 3, 235358, 235358, 2734, 2734, // #5154
+ 4, 235405, 235405, 509, 509, // #5155
+ 40, 235456, 235456, 3376, 3376, // #5156
+ 47, 235532, 235532, 3420, 3420, // #5157
+ 2, 235584, 235584, 832, 832, // #5158
+ 3, 235614, 235614, 2734, 2734, // #5159
+ 4, 235661, 235661, 509, 509, // #5160
+ 40, 235712, 235712, 3376, 3376, // #5161
+ 47, 235788, 235788, 3420, 3420, // #5162
+ 2, 235848, 235848, 1240, 1240, // #5163
+ 3, 235870, 235870, 2734, 2734, // #5164
+ 4, 235917, 235917, 509, 509, // #5165
+ 40, 235968, 235968, 3376, 3376, // #5166
+ 47, 236044, 236044, 3420, 3420, // #5167
+ 2, 236104, 236104, 2728, 2728, // #5168
+ 3, 236126, 236126, 2734, 2734, // #5169
+ 4, 236173, 236173, 509, 509, // #5170
+ 40, 236224, 236224, 3376, 3376, // #5171
+ 47, 236300, 236300, 3420, 3420, // #5172
+ 2, 236360, 236360, 2728, 2728, // #5173
+ 3, 236382, 236382, 2734, 2734, // #5174
+ 4, 236429, 236429, 509, 509, // #5175
+ 40, 236480, 236480, 3376, 3376, // #5176
+ 47, 236556, 236556, 3420, 3420, // #5177
+ 2, 236608, 236608, 3136, 3136, // #5178
+ 3, 236638, 236638, 2734, 2734, // #5179
+ 4, 236685, 236685, 509, 509, // #5180
+ 40, 236736, 236736, 3376, 3376, // #5181
+ 47, 236812, 236812, 3420, 3420, // #5182
+ 2, 236864, 236864, 3712, 3712, // #5183
+ 3, 236894, 236894, 2734, 2734, // #5184
+ 4, 236941, 236941, 509, 509, // #5185
+ 40, 236992, 236992, 3376, 3376, // #5186
+ 47, 237068, 237068, 3420, 3420, // #5187
+ 2, 237120, 237120, 3712, 3712, // #5188
+ 3, 237150, 237150, 2734, 2734, // #5189
+ 4, 237197, 237197, 509, 509, // #5190
+ 40, 237248, 237248, 3376, 3376, // #5191
+ 47, 237324, 237324, 3420, 3420, // #5192
+ 2, 237384, 237384, 1272, 1272, // #5193
+ 3, 237406, 237406, 2734, 2734, // #5194
+ 4, 237453, 237453, 509, 509, // #5195
+ 40, 237504, 237504, 3376, 3376, // #5196
+ 47, 237580, 237580, 3420, 3420, // #5197
+ 2, 237640, 237640, 1272, 1272, // #5198
+ 3, 237662, 237662, 2734, 2734, // #5199
+ 4, 237709, 237709, 509, 509, // #5200
+ 40, 237760, 237760, 3376, 3376, // #5201
+ 47, 237836, 237836, 3420, 3420, // #5202
+ 2, 237896, 237896, 1672, 1672, // #5203
+ 3, 237918, 237918, 2734, 2734, // #5204
+ 4, 237965, 237965, 509, 509, // #5205
+ 40, 238016, 238016, 3376, 3376, // #5206
+ 47, 238092, 238092, 3420, 3420, // #5207
+ 2, 238152, 238152, 1672, 1672, // #5208
+ 3, 238174, 238174, 2734, 2734, // #5209
+ 4, 238221, 238221, 509, 509, // #5210
+ 40, 238272, 238272, 3376, 3376, // #5211
+ 47, 238348, 238348, 3420, 3420, // #5212
+ 2, 238400, 238400, 2080, 2080, // #5213
+ 3, 238430, 238430, 2734, 2734, // #5214
+ 4, 238477, 238477, 509, 509, // #5215
+ 40, 238528, 238528, 3376, 3376, // #5216
+ 47, 238604, 238604, 3420, 3420, // #5217
+ 2, 238656, 238656, 2080, 2080, // #5218
+ 3, 238686, 238686, 2734, 2734, // #5219
+ 4, 238733, 238733, 509, 509, // #5220
+ 40, 238784, 238784, 3376, 3376, // #5221
+ 47, 238860, 238860, 3420, 3420, // #5222
+ 2, 238920, 238920, 2488, 2488, // #5223
+ 3, 238942, 238942, 2734, 2734, // #5224
+ 4, 238989, 238989, 509, 509, // #5225
+ 40, 239040, 239040, 3376, 3376, // #5226
+ 47, 239116, 239116, 3420, 3420, // #5227
+ 2, 239168, 239168, 2896, 2896, // #5228
+ 3, 239198, 239198, 2734, 2734, // #5229
+ 4, 239245, 239245, 509, 509, // #5230
+ 40, 239296, 239296, 3376, 3376, // #5231
+ 47, 239372, 239372, 3420, 3420, // #5232
+ 2, 239424, 239424, 2896, 2896, // #5233
+ 3, 239454, 239454, 2734, 2734, // #5234
+ 4, 239501, 239501, 509, 509, // #5235
+ 40, 239552, 239552, 3376, 3376, // #5236
+ 47, 239628, 239628, 3420, 3420, // #5237
+ 2, 239688, 239688, 3304, 3304, // #5238
+ 3, 239710, 239710, 2734, 2734, // #5239
+ 4, 239757, 239757, 509, 509, // #5240
+ 40, 239808, 239808, 3376, 3376, // #5241
+ 47, 239884, 239884, 3420, 3420, // #5242
+ 2, 239944, 239944, 3304, 3304, // #5243
+ 3, 239966, 239966, 2734, 2734, // #5244
+ 4, 240013, 240013, 509, 509, // #5245
+ 40, 240064, 240064, 3376, 3376, // #5246
+ 47, 240140, 240140, 3420, 3420, // #5247
+ 2, 240200, 240200, 1800, 1800, // #5248
+ 3, 240222, 240222, 2734, 2734, // #5249
+ 4, 240269, 240269, 509, 509, // #5250
+ 40, 240320, 240320, 3376, 3376, // #5251
+ 47, 240396, 240396, 3420, 3420, // #5252
+ 2, 240456, 240456, 1800, 1800, // #5253
+ 3, 240478, 240478, 2734, 2734, // #5254
+ 4, 240525, 240525, 509, 509, // #5255
+ 40, 240576, 240576, 3376, 3376, // #5256
+ 47, 240652, 240652, 3420, 3420, // #5257
+ 2, 240712, 240712, 2200, 2200, // #5258
+ 3, 240734, 240734, 2734, 2734, // #5259
+ 4, 240781, 240781, 509, 509, // #5260
+ 40, 240832, 240832, 3376, 3376, // #5261
+ 47, 240908, 240908, 3420, 3420, // #5262
+ 2, 240968, 240968, 2200, 2200, // #5263
+ 3, 240990, 240990, 2734, 2734, // #5264
+ 4, 241037, 241037, 509, 509, // #5265
+ 40, 241088, 241088, 3376, 3376, // #5266
+ 47, 241164, 241164, 3420, 3420, // #5267
+ 2, 241224, 241224, 2200, 2200, // #5268
+ 3, 241246, 241246, 2734, 2734, // #5269
+ 4, 241293, 241293, 509, 509, // #5270
+ 40, 241344, 241344, 3376, 3376, // #5271
+ 47, 241420, 241420, 3420, 3420, // #5272
+ 2, 241472, 241472, 3744, 3744, // #5273
+ 3, 241502, 241502, 2734, 2734, // #5274
+ 4, 241549, 241549, 509, 509, // #5275
+ 40, 241600, 241600, 3376, 3376, // #5276
+ 47, 241676, 241676, 3420, 3420, // #5277
+ 2, 241728, 241728, 3744, 3744, // #5278
+ 3, 241758, 241758, 2734, 2734, // #5279
+ 4, 241805, 241805, 509, 509, // #5280
+ 40, 241856, 241856, 3376, 3376, // #5281
+ 47, 241932, 241932, 3420, 3420, // #5282
+ 2, 241992, 241992, 56, 56, // #5283
+ 3, 242014, 242014, 2734, 2734, // #5284
+ 4, 242061, 242061, 509, 509, // #5285
+ 40, 242112, 242112, 3376, 3376, // #5286
+ 47, 242188, 242188, 3420, 3420, // #5287
+ 2, 242240, 242240, 464, 464, // #5288
+ 3, 242270, 242270, 2734, 2734, // #5289
+ 4, 242317, 242317, 509, 509, // #5290
+ 40, 242368, 242368, 3376, 3376, // #5291
+ 47, 242444, 242444, 3420, 3420, // #5292
+ 2, 242496, 242496, 464, 464, // #5293
+ 3, 242526, 242526, 2734, 2734, // #5294
+ 4, 242573, 242573, 509, 509, // #5295
+ 40, 242624, 242624, 3376, 3376, // #5296
+ 47, 242700, 242700, 3420, 3420, // #5297
+ 2, 242760, 242760, 872, 872, // #5298
+ 3, 242782, 242782, 2734, 2734, // #5299
+ 4, 242829, 242829, 509, 509, // #5300
+ 40, 242880, 242880, 3376, 3376, // #5301
+ 47, 242956, 242956, 3420, 3420, // #5302
+ 3, 243016, 243016, 1176, 1176, // #5303
+ 3, 243038, 243038, 2734, 2734, // #5304
+ 4, 243085, 243085, 509, 509, // #5305
+ 40, 243136, 243136, 3376, 3376, // #5306
+ 47, 243212, 243212, 3420, 3420, // #5307
+ 1, 243272, 243272, 1032, 1032, // #5308
+ 3, 243294, 243294, 2734, 2734, // #5309
+ 7, 243315, 243315, 1667, 1667, // #5310
+ 40, 243328, 243328, 3376, 3376, // #5311
+ 47, 243404, 243404, 3420, 3420, // #5312
+ 3, 243456, 243456, 1280, 1280, // #5313
+ 3, 243486, 243486, 2734, 2734, // #5314
+ 7, 243507, 243507, 1699, 1699, // #5315
+ 40, 243520, 243520, 3376, 3376, // #5316
+ 47, 243596, 243596, 3420, 3420, // #5317
+ 3, 243656, 243656, 1176, 1176, // #5318
+ 3, 243678, 243678, 2734, 2734, // #5319
+ 4, 243725, 243725, 509, 509, // #5320
+ 40, 243776, 243776, 3376, 3376, // #5321
+ 47, 243852, 243852, 3420, 3420, // #5322
+ 1, 243912, 243912, 1032, 1032, // #5323
+ 3, 243934, 243934, 2734, 2734, // #5324
+ 7, 243955, 243955, 1667, 1667, // #5325
+ 40, 243968, 243968, 3376, 3376, // #5326
+ 47, 244044, 244044, 3420, 3420, // #5327
+ 3, 244096, 244096, 1280, 1280, // #5328
+ 3, 244126, 244126, 2734, 2734, // #5329
+ 7, 244147, 244147, 1699, 1699, // #5330
+ 40, 244160, 244160, 3376, 3376, // #5331
+ 47, 244236, 244236, 3420, 3420, // #5332
+ 3, 244296, 244296, 1784, 1784, // #5333
+ 3, 244318, 244318, 2734, 2734, // #5334
+ 4, 244365, 244365, 509, 509, // #5335
+ 40, 244416, 244416, 3376, 3376, // #5336
+ 47, 244492, 244492, 3420, 3420, // #5337
+ 1, 244552, 244552, 1640, 1640, // #5338
+ 3, 244574, 244574, 2734, 2734, // #5339
+ 7, 244595, 244595, 1667, 1667, // #5340
+ 40, 244608, 244608, 3376, 3376, // #5341
+ 47, 244684, 244684, 3420, 3420, // #5342
+ 3, 244736, 244736, 1888, 1888, // #5343
+ 3, 244766, 244766, 2734, 2734, // #5344
+ 7, 244787, 244787, 1699, 1699, // #5345
+ 40, 244800, 244800, 3376, 3376, // #5346
+ 47, 244876, 244876, 3420, 3420, // #5347
+ 3, 244936, 244936, 1784, 1784, // #5348
+ 3, 244958, 244958, 2734, 2734, // #5349
+ 4, 245005, 245005, 509, 509, // #5350
+ 40, 245056, 245056, 3376, 3376, // #5351
+ 47, 245132, 245132, 3420, 3420, // #5352
+ 1, 245192, 245192, 1640, 1640, // #5353
+ 3, 245214, 245214, 2734, 2734, // #5354
+ 7, 245235, 245235, 1667, 1667, // #5355
+ 40, 245248, 245248, 3376, 3376, // #5356
+ 47, 245324, 245324, 3420, 3420, // #5357
+ 3, 245376, 245376, 1888, 1888, // #5358
+ 3, 245406, 245406, 2734, 2734, // #5359
+ 7, 245427, 245427, 1699, 1699, // #5360
+ 40, 245440, 245440, 3376, 3376, // #5361
+ 47, 245516, 245516, 3420, 3420, // #5362
+ 3, 245576, 245576, 2408, 2408, // #5363
+ 3, 245598, 245598, 2734, 2734, // #5364
+ 4, 245645, 245645, 509, 509, // #5365
+ 40, 245696, 245696, 3376, 3376, // #5366
+ 47, 245772, 245772, 3420, 3420, // #5367
+ 1, 245832, 245832, 2264, 2264, // #5368
+ 3, 245854, 245854, 2734, 2734, // #5369
+ 7, 245875, 245875, 1667, 1667, // #5370
+ 40, 245888, 245888, 3376, 3376, // #5371
+ 47, 245964, 245964, 3420, 3420, // #5372
+ 3, 246016, 246016, 2512, 2512, // #5373
+ 3, 246046, 246046, 2734, 2734, // #5374
+ 7, 246067, 246067, 1699, 1699, // #5375
+ 40, 246080, 246080, 3376, 3376, // #5376
+ 47, 246156, 246156, 3420, 3420, // #5377
+ 3, 246216, 246216, 2408, 2408, // #5378
+ 3, 246238, 246238, 2734, 2734, // #5379
+ 4, 246285, 246285, 509, 509, // #5380
+ 40, 246336, 246336, 3376, 3376, // #5381
+ 47, 246412, 246412, 3420, 3420, // #5382
+ 1, 246472, 246472, 2264, 2264, // #5383
+ 3, 246494, 246494, 2734, 2734, // #5384
+ 7, 246515, 246515, 1667, 1667, // #5385
+ 40, 246528, 246528, 3376, 3376, // #5386
+ 47, 246604, 246604, 3420, 3420, // #5387
+ 3, 246656, 246656, 2512, 2512, // #5388
+ 3, 246686, 246686, 2734, 2734, // #5389
+ 7, 246707, 246707, 1699, 1699, // #5390
+ 40, 246720, 246720, 3376, 3376, // #5391
+ 47, 246796, 246796, 3420, 3420, // #5392
+ 3, 246848, 246848, 3024, 3024, // #5393
+ 3, 246878, 246878, 2734, 2734, // #5394
+ 4, 246925, 246925, 509, 509, // #5395
+ 40, 246976, 246976, 3376, 3376, // #5396
+ 47, 247052, 247052, 3420, 3420, // #5397
+ 1, 247104, 247104, 2880, 2880, // #5398
+ 3, 247134, 247134, 2734, 2734, // #5399
+ 7, 247155, 247155, 1667, 1667, // #5400
+ 40, 247168, 247168, 3376, 3376, // #5401
+ 47, 247244, 247244, 3420, 3420, // #5402
+ 3, 247304, 247304, 3128, 3128, // #5403
+ 3, 247326, 247326, 2734, 2734, // #5404
+ 7, 247347, 247347, 1699, 1699, // #5405
+ 40, 247360, 247360, 3376, 3376, // #5406
+ 47, 247436, 247436, 3420, 3420, // #5407
+ 3, 247488, 247488, 3648, 3648, // #5408
+ 3, 247518, 247518, 2734, 2734, // #5409
+ 4, 247565, 247565, 509, 509, // #5410
+ 40, 247616, 247616, 3376, 3376, // #5411
+ 47, 247692, 247692, 3420, 3420, // #5412
+ 1, 247744, 247744, 3504, 3504, // #5413
+ 3, 247774, 247774, 2734, 2734, // #5414
+ 7, 247795, 247795, 1667, 1667, // #5415
+ 40, 247808, 247808, 3376, 3376, // #5416
+ 47, 247884, 247884, 3420, 3420, // #5417
+ 3, 247944, 247944, 3752, 3752, // #5418
+ 3, 247966, 247966, 2734, 2734, // #5419
+ 7, 247987, 247987, 1699, 1699, // #5420
+ 40, 248000, 248000, 3376, 3376, // #5421
+ 47, 248076, 248076, 3420, 3420, // #5422
+ 3, 248128, 248128, 3648, 3648, // #5423
+ 3, 248158, 248158, 2734, 2734, // #5424
+ 4, 248205, 248205, 509, 509, // #5425
+ 40, 248256, 248256, 3376, 3376, // #5426
+ 47, 248332, 248332, 3420, 3420, // #5427
+ 1, 248384, 248384, 3504, 3504, // #5428
+ 3, 248414, 248414, 2734, 2734, // #5429
+ 7, 248435, 248435, 1667, 1667, // #5430
+ 40, 248448, 248448, 3376, 3376, // #5431
+ 47, 248524, 248524, 3420, 3420, // #5432
+ 3, 248584, 248584, 3752, 3752, // #5433
+ 3, 248606, 248606, 2734, 2734, // #5434
+ 7, 248627, 248627, 1699, 1699, // #5435
+ 40, 248640, 248640, 3376, 3376, // #5436
+ 47, 248716, 248716, 3420, 3420, // #5437
+ 2, 248768, 248768, 32, 32, // #5438
+ 3, 248798, 248798, 2734, 2734, // #5439
+ 4, 248845, 248845, 509, 509, // #5440
+ 40, 248896, 248896, 3376, 3376, // #5441
+ 47, 248972, 248972, 3420, 3420, // #5442
+ 2, 249032, 249032, 440, 440, // #5443
+ 3, 249054, 249054, 2734, 2734, // #5444
+ 4, 249101, 249101, 509, 509, // #5445
+ 40, 249152, 249152, 3376, 3376, // #5446
+ 47, 249228, 249228, 3420, 3420, // #5447
+ 2, 249280, 249280, 848, 848, // #5448
+ 3, 249310, 249310, 2734, 2734, // #5449
+ 4, 249357, 249357, 509, 509, // #5450
+ 40, 249408, 249408, 3376, 3376, // #5451
+ 47, 249484, 249484, 3420, 3420, // #5452
+ 2, 249536, 249536, 1664, 1664, // #5453
+ 3, 249566, 249566, 2734, 2734, // #5454
+ 4, 249613, 249613, 509, 509, // #5455
+ 40, 249664, 249664, 3376, 3376, // #5456
+ 47, 249740, 249740, 3420, 3420, // #5457
+ 2, 249792, 249792, 2480, 2480, // #5458
+ 3, 249822, 249822, 2734, 2734, // #5459
+ 4, 249869, 249869, 509, 509, // #5460
+ 40, 249920, 249920, 3376, 3376, // #5461
+ 47, 249996, 249996, 3420, 3420, // #5462
+ 2, 250048, 250048, 2880, 2880, // #5463
+ 3, 250078, 250078, 2734, 2734, // #5464
+ 4, 250125, 250125, 509, 509, // #5465
+ 40, 250176, 250176, 3376, 3376, // #5466
+ 47, 250252, 250252, 3420, 3420, // #5467
+ 2, 250304, 250304, 3296, 3296, // #5468
+ 3, 250334, 250334, 2734, 2734, // #5469
+ 4, 250381, 250381, 509, 509, // #5470
+ 40, 250432, 250432, 3376, 3376, // #5471
+ 47, 250508, 250508, 3420, 3420, // #5472
+ 2, 250568, 250568, 3704, 3704, // #5473
+ 3, 250590, 250590, 2734, 2734, // #5474
+ 4, 250637, 250637, 509, 509, // #5475
+ 40, 250688, 250688, 3376, 3376, // #5476
+ 47, 250764, 250764, 3420, 3420, // #5477
+ 2, 250824, 250824, 8, 8, // #5478
+ 3, 250846, 250846, 2734, 2734, // #5479
+ 4, 250893, 250893, 509, 509, // #5480
+ 40, 250944, 250944, 3376, 3376, // #5481
+ 47, 251020, 251020, 3420, 3420, // #5482
+ 2, 251072, 251072, 416, 416, // #5483
+ 3, 251102, 251102, 2734, 2734, // #5484
+ 4, 251149, 251149, 509, 509, // #5485
+ 40, 251200, 251200, 3376, 3376, // #5486
+ 47, 251276, 251276, 3420, 3420, // #5487
+ 2, 251336, 251336, 824, 824, // #5488
+ 3, 251358, 251358, 2734, 2734, // #5489
+ 4, 251405, 251405, 509, 509, // #5490
+ 40, 251456, 251456, 3376, 3376, // #5491
+ 47, 251532, 251532, 3420, 3420, // #5492
+ 2, 251584, 251584, 1232, 1232, // #5493
+ 3, 251614, 251614, 2734, 2734, // #5494
+ 4, 251661, 251661, 509, 509, // #5495
+ 40, 251712, 251712, 3376, 3376, // #5496
+ 47, 251788, 251788, 3420, 3420, // #5497
+ 2, 251848, 251848, 1640, 1640, // #5498
+ 3, 251870, 251870, 2734, 2734, // #5499
+ 4, 251917, 251917, 509, 509, // #5500
+ 40, 251968, 251968, 3376, 3376, // #5501
+ 47, 252044, 252044, 3420, 3420, // #5502
+ 2, 252096, 252096, 2048, 2048, // #5503
+ 3, 252126, 252126, 2734, 2734, // #5504
+ 4, 252173, 252173, 509, 509, // #5505
+ 40, 252224, 252224, 3376, 3376, // #5506
+ 47, 252300, 252300, 3420, 3420, // #5507
+ 2, 252360, 252360, 2456, 2456, // #5508
+ 3, 252382, 252382, 2734, 2734, // #5509
+ 4, 252429, 252429, 509, 509, // #5510
+ 40, 252480, 252480, 3376, 3376, // #5511
+ 47, 252556, 252556, 3420, 3420, // #5512
+ 2, 252616, 252616, 3272, 3272, // #5513
+ 3, 252638, 252638, 2734, 2734, // #5514
+ 4, 252685, 252685, 509, 509, // #5515
+ 40, 252736, 252736, 3376, 3376, // #5516
+ 47, 252812, 252812, 3420, 3420, // #5517
+ 2, 252872, 252872, 4088, 4088, // #5518
+ 3, 252894, 252894, 2734, 2734, // #5519
+ 4, 252941, 252941, 509, 509, // #5520
+ 40, 252992, 252992, 3376, 3376, // #5521
+ 47, 253068, 253068, 3420, 3420, // #5522
+ 2, 253128, 253128, 392, 392, // #5523
+ 3, 253150, 253150, 2734, 2734, // #5524
+ 4, 253197, 253197, 509, 509, // #5525
+ 40, 253248, 253248, 3376, 3376, // #5526
+ 47, 253324, 253324, 3420, 3420, // #5527
+ 2, 253376, 253376, 800, 800, // #5528
+ 3, 253406, 253406, 2734, 2734, // #5529
+ 4, 253453, 253453, 509, 509, // #5530
+ 40, 253504, 253504, 3376, 3376, // #5531
+ 47, 253580, 253580, 3420, 3420, // #5532
+ 2, 253640, 253640, 1208, 1208, // #5533
+ 3, 253662, 253662, 2734, 2734, // #5534
+ 4, 253709, 253709, 509, 509, // #5535
+ 40, 253760, 253760, 3376, 3376, // #5536
+ 47, 253836, 253836, 3420, 3420, // #5537
+ 2, 253888, 253888, 1616, 1616, // #5538
+ 3, 253918, 253918, 2734, 2734, // #5539
+ 4, 253965, 253965, 509, 509, // #5540
+ 40, 254016, 254016, 3376, 3376, // #5541
+ 47, 254092, 254092, 3420, 3420, // #5542
+ 2, 254152, 254152, 2024, 2024, // #5543
+ 3, 254174, 254174, 2734, 2734, // #5544
+ 4, 254221, 254221, 509, 509, // #5545
+ 40, 254272, 254272, 3376, 3376, // #5546
+ 47, 254348, 254348, 3420, 3420, // #5547
+ 2, 254400, 254400, 2432, 2432, // #5548
+ 3, 254430, 254430, 2734, 2734, // #5549
+ 4, 254477, 254477, 509, 509, // #5550
+ 40, 254528, 254528, 3376, 3376, // #5551
+ 47, 254604, 254604, 3420, 3420, // #5552
+ 2, 254664, 254664, 2840, 2840, // #5553
+ 3, 254686, 254686, 2734, 2734, // #5554
+ 4, 254733, 254733, 509, 509, // #5555
+ 40, 254784, 254784, 3376, 3376, // #5556
+ 47, 254860, 254860, 3420, 3420, // #5557
+ 2, 254912, 254912, 3248, 3248, // #5558
+ 3, 254942, 254942, 2734, 2734, // #5559
+ 4, 254989, 254989, 509, 509, // #5560
+ 40, 255040, 255040, 3376, 3376, // #5561
+ 47, 255116, 255116, 3420, 3420, // #5562
+ 2, 255176, 255176, 3656, 3656, // #5563
+ 3, 255198, 255198, 2734, 2734, // #5564
+ 4, 255245, 255245, 509, 509, // #5565
+ 40, 255296, 255296, 3376, 3376, // #5566
+ 47, 255372, 255372, 3420, 3420, // #5567
+ 2, 255424, 255424, 4064, 4064, // #5568
+ 3, 255454, 255454, 2734, 2734, // #5569
+ 4, 255501, 255501, 509, 509, // #5570
+ 40, 255552, 255552, 3376, 3376, // #5571
+ 47, 255628, 255628, 3420, 3420, // #5572
+ 2, 255680, 255680, 784, 784, // #5573
+ 3, 255710, 255710, 2734, 2734, // #5574
+ 4, 255757, 255757, 509, 509, // #5575
+ 40, 255808, 255808, 3376, 3376, // #5576
+ 47, 255884, 255884, 3420, 3420, // #5577
+ 2, 255936, 255936, 1600, 1600, // #5578
+ 3, 255966, 255966, 2734, 2734, // #5579
+ 4, 256013, 256013, 509, 509, // #5580
+ 40, 256064, 256064, 3376, 3376, // #5581
+ 47, 256140, 256140, 3420, 3420, // #5582
+ 2, 256192, 256192, 2000, 2000, // #5583
+ 3, 256222, 256222, 2734, 2734, // #5584
+ 4, 256269, 256269, 509, 509, // #5585
+ 40, 256320, 256320, 3376, 3376, // #5586
+ 47, 256396, 256396, 3420, 3420, // #5587
+ 2, 256456, 256456, 2408, 2408, // #5588
+ 3, 256478, 256478, 2734, 2734, // #5589
+ 4, 256525, 256525, 509, 509, // #5590
+ 40, 256576, 256576, 3376, 3376, // #5591
+ 47, 256652, 256652, 3420, 3420, // #5592
+ 2, 256704, 256704, 2816, 2816, // #5593
+ 3, 256734, 256734, 2734, 2734, // #5594
+ 4, 256781, 256781, 509, 509, // #5595
+ 40, 256832, 256832, 3376, 3376, // #5596
+ 47, 256908, 256908, 3420, 3420, // #5597
+ 2, 256960, 256960, 3216, 3216, // #5598
+ 3, 256990, 256990, 2734, 2734, // #5599
+ 4, 257037, 257037, 509, 509, // #5600
+ 40, 257088, 257088, 3376, 3376, // #5601
+ 47, 257164, 257164, 3420, 3420, // #5602
+ 2, 257224, 257224, 3624, 3624, // #5603
+ 3, 257246, 257246, 2734, 2734, // #5604
+ 4, 257293, 257293, 509, 509, // #5605
+ 40, 257344, 257344, 3376, 3376, // #5606
+ 47, 257420, 257420, 3420, 3420, // #5607
+ 2, 257480, 257480, 4040, 4040, // #5608
+ 3, 257502, 257502, 2734, 2734, // #5609
+ 4, 257549, 257549, 509, 509, // #5610
+ 40, 257600, 257600, 3376, 3376, // #5611
+ 47, 257676, 257676, 3420, 3420, // #5612
+ 2, 257728, 257728, 352, 352, // #5613
+ 3, 257758, 257758, 2734, 2734, // #5614
+ 4, 257805, 257805, 509, 509, // #5615
+ 40, 257856, 257856, 3376, 3376, // #5616
+ 47, 257932, 257932, 3420, 3420, // #5617
+ 2, 257992, 257992, 760, 760, // #5618
+ 3, 258014, 258014, 2734, 2734, // #5619
+ 4, 258061, 258061, 509, 509, // #5620
+ 40, 258112, 258112, 3376, 3376, // #5621
+ 47, 258188, 258188, 3420, 3420, // #5622
+ 2, 258240, 258240, 1168, 1168, // #5623
+ 3, 258270, 258270, 2734, 2734, // #5624
+ 4, 258317, 258317, 509, 509, // #5625
+ 40, 258368, 258368, 3376, 3376, // #5626
+ 47, 258444, 258444, 3420, 3420, // #5627
+ 2, 258504, 258504, 1576, 1576, // #5628
+ 3, 258526, 258526, 2734, 2734, // #5629
+ 4, 258573, 258573, 509, 509, // #5630
+ 40, 258624, 258624, 3376, 3376, // #5631
+ 47, 258700, 258700, 3420, 3420, // #5632
+ 2, 258760, 258760, 2392, 2392, // #5633
+ 3, 258782, 258782, 2734, 2734, // #5634
+ 4, 258829, 258829, 509, 509, // #5635
+ 40, 258880, 258880, 3376, 3376, // #5636
+ 47, 258956, 258956, 3420, 3420, // #5637
+ 2, 259016, 259016, 3208, 3208, // #5638
+ 3, 259038, 259038, 2734, 2734, // #5639
+ 4, 259085, 259085, 509, 509, // #5640
+ 40, 259136, 259136, 3376, 3376, // #5641
+ 47, 259212, 259212, 3420, 3420, // #5642
+ 2, 259272, 259272, 3608, 3608, // #5643
+ 3, 259294, 259294, 2734, 2734, // #5644
+ 4, 259341, 259341, 509, 509, // #5645
+ 40, 259392, 259392, 3376, 3376, // #5646
+ 47, 259468, 259468, 3420, 3420, // #5647
+ 2, 259520, 259520, 4016, 4016, // #5648
+ 3, 259550, 259550, 2734, 2734, // #5649
+ 4, 259597, 259597, 509, 509, // #5650
+ 40, 259648, 259648, 3376, 3376, // #5651
+ 47, 259724, 259724, 3420, 3420, // #5652
+ 2, 259784, 259784, 328, 328, // #5653
+ 3, 259806, 259806, 2734, 2734, // #5654
+ 4, 259853, 259853, 509, 509, // #5655
+ 40, 259904, 259904, 3376, 3376, // #5656
+ 47, 259980, 259980, 3420, 3420, // #5657
+ 2, 260040, 260040, 728, 728, // #5658
+ 3, 260062, 260062, 2734, 2734, // #5659
+ 4, 260109, 260109, 509, 509, // #5660
+ 40, 260160, 260160, 3376, 3376, // #5661
+ 47, 260236, 260236, 3420, 3420, // #5662
+ 2, 260288, 260288, 1136, 1136, // #5663
+ 3, 260318, 260318, 2734, 2734, // #5664
+ 4, 260365, 260365, 509, 509, // #5665
+ 40, 260416, 260416, 3376, 3376, // #5666
+ 47, 260492, 260492, 3420, 3420, // #5667
+ 2, 260552, 260552, 1544, 1544, // #5668
+ 3, 260574, 260574, 2734, 2734, // #5669
+ 4, 260621, 260621, 509, 509, // #5670
+ 40, 260672, 260672, 3376, 3376, // #5671
+ 47, 260748, 260748, 3420, 3420, // #5672
+ 2, 260800, 260800, 1952, 1952, // #5673
+ 3, 260830, 260830, 2734, 2734, // #5674
+ 4, 260877, 260877, 509, 509, // #5675
+ 40, 260928, 260928, 3376, 3376, // #5676
+ 47, 261004, 261004, 3420, 3420, // #5677
+ 2, 261056, 261056, 2368, 2368, // #5678
+ 3, 261086, 261086, 2734, 2734, // #5679
+ 4, 261133, 261133, 509, 509, // #5680
+ 40, 261184, 261184, 3376, 3376, // #5681
+ 47, 261260, 261260, 3420, 3420, // #5682
+ 2, 261320, 261320, 2776, 2776, // #5683
+ 3, 261342, 261342, 2734, 2734, // #5684
+ 4, 261389, 261389, 509, 509, // #5685
+ 40, 261440, 261440, 3376, 3376, // #5686
+ 47, 261516, 261516, 3420, 3420, // #5687
+ 2, 261568, 261568, 3184, 3184, // #5688
+ 3, 261598, 261598, 2734, 2734, // #5689
+ 4, 261645, 261645, 509, 509, // #5690
+ 40, 261696, 261696, 3376, 3376, // #5691
+ 47, 261772, 261772, 3420, 3420, // #5692
+ 2, 261824, 261824, 4000, 4000, // #5693
+ 3, 261854, 261854, 2734, 2734, // #5694
+ 4, 261901, 261901, 509, 509, // #5695
+ 40, 261952, 261952, 3376, 3376, // #5696
+ 47, 262028, 262028, 3420, 3420, // #5697
+ 2, 262080, 262080, 720, 720, // #5698
+ 3, 262110, 262110, 2734, 2734, // #5699
+ 4, 262157, 262157, 509, 509, // #5700
+ 40, 262208, 262208, 3376, 3376, // #5701
+ 47, 262284, 262284, 3420, 3420, // #5702
+ 2, 262336, 262336, 1120, 1120, // #5703
+ 3, 262366, 262366, 2734, 2734, // #5704
+ 4, 262413, 262413, 509, 509, // #5705
+ 40, 262464, 262464, 3376, 3376, // #5706
+ 47, 262540, 262540, 3420, 3420, // #5707
+ 2, 262600, 262600, 1528, 1528, // #5708
+ 3, 262622, 262622, 2734, 2734, // #5709
+ 4, 262669, 262669, 509, 509, // #5710
+ 40, 262720, 262720, 3376, 3376, // #5711
+ 47, 262796, 262796, 3420, 3420, // #5712
+ 2, 262848, 262848, 1936, 1936, // #5713
+ 3, 262878, 262878, 2734, 2734, // #5714
+ 4, 262925, 262925, 509, 509, // #5715
+ 40, 262976, 262976, 3376, 3376, // #5716
+ 47, 263052, 263052, 3420, 3420, // #5717
+ 2, 263104, 263104, 2336, 2336, // #5718
+ 3, 263134, 263134, 2734, 2734, // #5719
+ 4, 263181, 263181, 509, 509, // #5720
+ 40, 263232, 263232, 3376, 3376, // #5721
+ 47, 263308, 263308, 3420, 3420, // #5722
+ 2, 263368, 263368, 2744, 2744, // #5723
+ 3, 263390, 263390, 2734, 2734, // #5724
+ 4, 263437, 263437, 509, 509, // #5725
+ 40, 263488, 263488, 3376, 3376, // #5726
+ 47, 263564, 263564, 3420, 3420, // #5727
+ 2, 263616, 263616, 3152, 3152, // #5728
+ 3, 263646, 263646, 2734, 2734, // #5729
+ 4, 263693, 263693, 509, 509, // #5730
+ 40, 263744, 263744, 3376, 3376, // #5731
+ 47, 263820, 263820, 3420, 3420, // #5732
+ 2, 263880, 263880, 3560, 3560, // #5733
+ 3, 263902, 263902, 2734, 2734, // #5734
+ 4, 263949, 263949, 509, 509, // #5735
+ 40, 264000, 264000, 3376, 3376, // #5736
+ 47, 264076, 264076, 3420, 3420, // #5737
+ 7, 264132, 264132, 1684, 1684, // #5738
+ 7, 264146, 264146, 386, 386, // #5739
+ 11, 264172, 264172, 1692, 1692, // #5740
+ 5, 264200, 264200, 1704, 1704, // #5741
+ 5, 264222, 264222, 1710, 1710, // #5742
+ 6, 264243, 264243, 131, 131, // #5743
+ 7, 264256, 264256, 2464, 2464, // #5744
+ 2, 264280, 264280, 2856, 2856, // #5745
+ 3, 264302, 264302, 2734, 2734, // #5746
+ 14, 264320, 264320, 2416, 2416, // #5747
+ 40, 264384, 264384, 3376, 3376, // #5748
+ 47, 264460, 264460, 3420, 3420, // #5749
+ 5, 264512, 264512, 1872, 1872, // #5750
+ 11, 264536, 264536, 3016, 3016, // #5751
+ 12, 264565, 264565, 2789, 2789, // #5752
+ 12, 264592, 264592, 624, 624, // #5753
+ 40, 264640, 264640, 3376, 3376, // #5754
+ 47, 264716, 264716, 3420, 3420, // #5755
+ 7, 264768, 264768, 2464, 2464, // #5756
+ 2, 264784, 264784, 3136, 3136, // #5757
+ 3, 264814, 264814, 2734, 2734, // #5758
+ 14, 264832, 264832, 1488, 1488, // #5759
+ 40, 264896, 264896, 3376, 3376, // #5760
+ 47, 264972, 264972, 3420, 3420, // #5761
+ 5, 265024, 265024, 1872, 1872, // #5762
+ 8, 265040, 265040, 752, 752, // #5763
+ 12, 265061, 265061, 2789, 2789, // #5764
+ 12, 265088, 265088, 3072, 3072, // #5765
+ 40, 265152, 265152, 3376, 3376, // #5766
+ 47, 265228, 265228, 3420, 3420, // #5767
+ 7, 265280, 265280, 2464, 2464, // #5768
+ 2, 265304, 265304, 872, 872, // #5769
+ 3, 265326, 265326, 2734, 2734, // #5770
+ 18, 265344, 265344, 3600, 3600, // #5771
+ 40, 265408, 265408, 3376, 3376, // #5772
+ 47, 265484, 265484, 3420, 3420, // #5773
+ 5, 265536, 265536, 1872, 1872, // #5774
+ 8, 265552, 265552, 992, 992, // #5775
+ 12, 265573, 265573, 2789, 2789, // #5776
+ 16, 265600, 265600, 3744, 3744, // #5777
+ 40, 265664, 265664, 3376, 3376, // #5778
+ 47, 265740, 265740, 3420, 3420, // #5779
+ 7, 265792, 265792, 2464, 2464, // #5780
+ 2, 265808, 265808, 1120, 1120, // #5781
+ 3, 265838, 265838, 2734, 2734, // #5782
+ 12, 265864, 265864, 280, 280, // #5783
+ 40, 265920, 265920, 3376, 3376, // #5784
+ 47, 265996, 265996, 3420, 3420, // #5785
+ 5, 266048, 266048, 1872, 1872, // #5786
+ 2, 266064, 266064, 1232, 1232, // #5787
+ 12, 266085, 266085, 2789, 2789, // #5788
+ 10, 266112, 266112, 2944, 2944, // #5789
+ 40, 266176, 266176, 3376, 3376, // #5790
+ 47, 266252, 266252, 3420, 3420, // #5791
+ 7, 266304, 266304, 2464, 2464, // #5792
+ 2, 266320, 266320, 1344, 1344, // #5793
+ 3, 266350, 266350, 2734, 2734, // #5794
+ 12, 266376, 266376, 3224, 3224, // #5795
+ 40, 266432, 266432, 3376, 3376, // #5796
+ 47, 266508, 266508, 3420, 3420, // #5797
+ 5, 266560, 266560, 1872, 1872, // #5798
+ 11, 266576, 266576, 1456, 1456, // #5799
+ 12, 266597, 266597, 2789, 2789, // #5800
+ 10, 266632, 266632, 3000, 3000, // #5801
+ 40, 266688, 266688, 3376, 3376, // #5802
+ 47, 266764, 266764, 3420, 3420, // #5803
+ 7, 266816, 266816, 2464, 2464, // #5804
+ 5, 266832, 266832, 1872, 1872, // #5805
+ 6, 266862, 266862, 414, 414, // #5806
+ 4, 266888, 266888, 376, 376, // #5807
+ 9, 266909, 266909, 2989, 2989, // #5808
+ 4, 266936, 266936, 376, 376, // #5809
+ 1, 266954, 266954, 1226, 1226, // #5810
+ 1, 266972, 266972, 1228, 1228, // #5811
+ 18, 266980, 266980, 3012, 3012, // #5812
+ 7, 267012, 267012, 1684, 1684, // #5813
+ 5, 267033, 267033, 2889, 2889, // #5814
+ 2, 267048, 267048, 3512, 3512, // #5815
+ 3, 267070, 267070, 2734, 2734, // #5816
+ 4, 267149, 267149, 509, 509, // #5817
+ 40, 267200, 267200, 3376, 3376, // #5818
+ 47, 267276, 267276, 3420, 3420, // #5819
+ 7, 267330, 267330, 386, 386, // #5820
+ 5, 267353, 267353, 2889, 2889, // #5821
+ 2, 267368, 267368, 4008, 4008, // #5822
+ 3, 267390, 267390, 2734, 2734, // #5823
+ 4, 267469, 267469, 509, 509, // #5824
+ 40, 267520, 267520, 3376, 3376, // #5825
+ 47, 267596, 267596, 3420, 3420, // #5826
+ 11, 267660, 267660, 1692, 1692, // #5827
+ 5, 267689, 267689, 2889, 2889, // #5828
+ 2, 267704, 267704, 3400, 3400, // #5829
+ 3, 267726, 267726, 2734, 2734, // #5830
+ 4, 267789, 267789, 509, 509, // #5831
+ 40, 267840, 267840, 3376, 3376, // #5832
+ 47, 267916, 267916, 3420, 3420, // #5833
+ 5, 267976, 267976, 1704, 1704, // #5834
+ 5, 267993, 267993, 2889, 2889, // #5835
+ 2, 268008, 268008, 1160, 1160, // #5836
+ 3, 268030, 268030, 2734, 2734, // #5837
+ 4, 268109, 268109, 509, 509, // #5838
+ 40, 268160, 268160, 3376, 3376, // #5839
+ 47, 268236, 268236, 3420, 3420, // #5840
+ 5, 268302, 268302, 1710, 1710, // #5841
+ 5, 268329, 268329, 2889, 2889, // #5842
+ 2, 268336, 268336, 2768, 2768, // #5843
+ 3, 268366, 268366, 2734, 2734, // #5844
+ 4, 268429, 268429, 509, 509, // #5845
+ 40, 268480, 268480, 3376, 3376, // #5846
+ 47, 268556, 268556, 3420, 3420, // #5847
+ 6, 268611, 268611, 131, 131, // #5848
+ 5, 268633, 268633, 2889, 2889, // #5849
+ 1, 268648, 268648, 920, 920, // #5850
+ 1, 268658, 268658, 4018, 4018, // #5851
+ 13, 268673, 268673, 673, 673, // #5852
+ 9, 268688, 268688, 832, 832, // #5853
+ 5, 268713, 268713, 1433, 1433, // #5854
+ 25, 268743, 268743, 631, 631, // #5855
+ 1, 268794, 268794, 842, 842, // #5856
+ 1, 268812, 268812, 1228, 1228, // #5857
+ 1, 268828, 268828, 1228, 1228, // #5858
+ 1, 268838, 268838, 2390, 2390, // #5859
+ 8, 268849, 268849, 577, 577, // #5860
+ 5, 268867, 268867, 1747, 1747, // #5861
+ 27, 268882, 268882, 2018, 2018, // #5862
+ 48, 268928, 268928, 2416, 2416, // #5863
+ 29, 269006, 269006, 910, 910, // #5864
+ 33, 269040, 269040, 1984, 1984, // #5865
+ 8, 269089, 269089, 577, 577, // #5866
+ 5, 269107, 269107, 1747, 1747, // #5867
+ 27, 269122, 269122, 2018, 2018, // #5868
+ 48, 269184, 269184, 2416, 2416, // #5869
+ 29, 269262, 269262, 910, 910, // #5870
+ 33, 269296, 269296, 1984, 1984, // #5871
+ 8, 269345, 269345, 577, 577, // #5872
+ 5, 269363, 269363, 1747, 1747, // #5873
+ 27, 269378, 269378, 2018, 2018, // #5874
+ 48, 269440, 269440, 2416, 2416, // #5875
+ 29, 269518, 269518, 910, 910, // #5876
+ 33, 269552, 269552, 1984, 1984, // #5877
+ 8, 269601, 269601, 577, 577, // #5878
+ 5, 269619, 269619, 1747, 1747, // #5879
+ 27, 269634, 269634, 2018, 2018, // #5880
+ 48, 269696, 269696, 2416, 2416, // #5881
+ 29, 269774, 269774, 910, 910, // #5882
+ 33, 269808, 269808, 1984, 1984, // #5883
+ 8, 269857, 269857, 577, 577, // #5884
+ 5, 269875, 269875, 1747, 1747, // #5885
+ 27, 269890, 269890, 2018, 2018, // #5886
+ 48, 269952, 269952, 2416, 2416, // #5887
+ 29, 270030, 270030, 910, 910, // #5888
+ 33, 270064, 270064, 1984, 1984, // #5889
+ 8, 270113, 270113, 577, 577, // #5890
+ 5, 270131, 270131, 1747, 1747, // #5891
+ 27, 270146, 270146, 2018, 2018, // #5892
+ 48, 270208, 270208, 2416, 2416, // #5893
+ 29, 270286, 270286, 910, 910, // #5894
+ 33, 270320, 270320, 1984, 1984, // #5895
+ 1, 270378, 270378, 842, 842, // #5896
+ 1, 270396, 270396, 1228, 1228, // #5897
+ 1, 270412, 270412, 1228, 1228, // #5898
+ 1, 270422, 270422, 2390, 2390, // #5899
+ 8, 270433, 270433, 577, 577, // #5900
+ 5, 270451, 270451, 1747, 1747, // #5901
+ 27, 270466, 270466, 2018, 2018, // #5902
+ 48, 270528, 270528, 2416, 2416, // #5903
+ 29, 270606, 270606, 910, 910, // #5904
+ 8, 270641, 270641, 577, 577, // #5905
+ 5, 270659, 270659, 1747, 1747, // #5906
+ 27, 270674, 270674, 2018, 2018, // #5907
+ 48, 270720, 270720, 2416, 2416, // #5908
+ 29, 270798, 270798, 910, 910, // #5909
+ 8, 270833, 270833, 577, 577, // #5910
+ 5, 270851, 270851, 1747, 1747, // #5911
+ 27, 270866, 270866, 2018, 2018, // #5912
+ 48, 270912, 270912, 2416, 2416, // #5913
+ 29, 270990, 270990, 910, 910, // #5914
+ 8, 271025, 271025, 577, 577, // #5915
+ 5, 271043, 271043, 1747, 1747, // #5916
+ 27, 271058, 271058, 2018, 2018, // #5917
+ 48, 271104, 271104, 2416, 2416, // #5918
+ 29, 271182, 271182, 910, 910, // #5919
+ 8, 271217, 271217, 577, 577, // #5920
+ 5, 271235, 271235, 1747, 1747, // #5921
+ 27, 271250, 271250, 2018, 2018, // #5922
+ 48, 271296, 271296, 2416, 2416, // #5923
+ 29, 271374, 271374, 910, 910, // #5924
+ 8, 271409, 271409, 577, 577, // #5925
+ 5, 271427, 271427, 1747, 1747, // #5926
+ 27, 271442, 271442, 2018, 2018, // #5927
+ 48, 271488, 271488, 2416, 2416, // #5928
+ 29, 271566, 271566, 910, 910, // #5929
+ 1, 271610, 271610, 842, 842, // #5930
+ 1, 271628, 271628, 1228, 1228, // #5931
+ 1, 271644, 271644, 1228, 1228, // #5932
+ 1, 271654, 271654, 2390, 2390, // #5933
+ 8, 271665, 271665, 577, 577, // #5934
+ 5, 271683, 271683, 1747, 1747, // #5935
+ 27, 271698, 271698, 2018, 2018, // #5936
+ 48, 271744, 271744, 2416, 2416, // #5937
+ 29, 271822, 271822, 910, 910, // #5938
+ 8, 271857, 271857, 577, 577, // #5939
+ 5, 271875, 271875, 1747, 1747, // #5940
+ 27, 271890, 271890, 2018, 2018, // #5941
+ 48, 271936, 271936, 2416, 2416, // #5942
+ 29, 272014, 272014, 910, 910, // #5943
+ 8, 272049, 272049, 577, 577, // #5944
+ 5, 272067, 272067, 1747, 1747, // #5945
+ 27, 272082, 272082, 2018, 2018, // #5946
+ 48, 272128, 272128, 2416, 2416, // #5947
+ 29, 272206, 272206, 910, 910, // #5948
+ 8, 272241, 272241, 577, 577, // #5949
+ 5, 272259, 272259, 1747, 1747, // #5950
+ 27, 272274, 272274, 2018, 2018, // #5951
+ 48, 272320, 272320, 2416, 2416, // #5952
+ 29, 272398, 272398, 910, 910, // #5953
+ 8, 272433, 272433, 577, 577, // #5954
+ 5, 272451, 272451, 1747, 1747, // #5955
+ 27, 272466, 272466, 2018, 2018, // #5956
+ 48, 272512, 272512, 2416, 2416, // #5957
+ 29, 272590, 272590, 910, 910, // #5958
+ 8, 272625, 272625, 577, 577, // #5959
+ 5, 272643, 272643, 1747, 1747, // #5960
+ 27, 272658, 272658, 2018, 2018, // #5961
+ 48, 272704, 272704, 2416, 2416, // #5962
+ 29, 272782, 272782, 910, 910, // #5963
+ 8, 272817, 272817, 577, 577, // #5964
+ 5, 272835, 272835, 1747, 1747, // #5965
+ 27, 272850, 272850, 2018, 2018, // #5966
+ 48, 272896, 272896, 2416, 2416, // #5967
+ 29, 272974, 272974, 910, 910, // #5968
+ 8, 273009, 273009, 577, 577, // #5969
+ 5, 273027, 273027, 1747, 1747, // #5970
+ 27, 273042, 273042, 2018, 2018, // #5971
+ 48, 273088, 273088, 2416, 2416, // #5972
+ 29, 273166, 273166, 910, 910, // #5973
+ 8, 273201, 273201, 577, 577, // #5974
+ 5, 273219, 273219, 1747, 1747, // #5975
+ 27, 273234, 273234, 2018, 2018, // #5976
+ 48, 273280, 273280, 2416, 2416, // #5977
+ 29, 273358, 273358, 910, 910, // #5978
+ 8, 273393, 273393, 577, 577, // #5979
+ 5, 273411, 273411, 1747, 1747, // #5980
+ 27, 273426, 273426, 2018, 2018, // #5981
+ 48, 273472, 273472, 2416, 2416, // #5982
+ 29, 273550, 273550, 910, 910, // #5983
+ 8, 273585, 273585, 577, 577, // #5984
+ 5, 273603, 273603, 1747, 1747, // #5985
+ 27, 273618, 273618, 2018, 2018, // #5986
+ 48, 273664, 273664, 2416, 2416, // #5987
+ 29, 273742, 273742, 910, 910, // #5988
+ 8, 273777, 273777, 577, 577, // #5989
+ 5, 273795, 273795, 1747, 1747, // #5990
+ 27, 273810, 273810, 2018, 2018, // #5991
+ 48, 273856, 273856, 2416, 2416, // #5992
+ 29, 273934, 273934, 910, 910, // #5993
+ 1, 273978, 273978, 842, 842, // #5994
+ 1, 273996, 273996, 1228, 1228, // #5995
+ 1, 274012, 274012, 1228, 1228, // #5996
+ 1, 274022, 274022, 2390, 2390, // #5997
+ 8, 274033, 274033, 577, 577, // #5998
+ 5, 274051, 274051, 1747, 1747, // #5999
+ 27, 274066, 274066, 2018, 2018, // #6000
+ 48, 274112, 274112, 2416, 2416, // #6001
+ 29, 274190, 274190, 910, 910, // #6002
+ 8, 274225, 274225, 577, 577, // #6003
+ 5, 274243, 274243, 1747, 1747, // #6004
+ 27, 274258, 274258, 2018, 2018, // #6005
+ 48, 274304, 274304, 2416, 2416, // #6006
+ 29, 274382, 274382, 910, 910, // #6007
+ 8, 274417, 274417, 577, 577, // #6008
+ 5, 274435, 274435, 1747, 1747, // #6009
+ 27, 274450, 274450, 2018, 2018, // #6010
+ 48, 274496, 274496, 2416, 2416, // #6011
+ 29, 274574, 274574, 910, 910, // #6012
+ 8, 274609, 274609, 577, 577, // #6013
+ 5, 274627, 274627, 1747, 1747, // #6014
+ 27, 274642, 274642, 2018, 2018, // #6015
+ 48, 274688, 274688, 2416, 2416, // #6016
+ 29, 274766, 274766, 910, 910, // #6017
+ 8, 274801, 274801, 577, 577, // #6018
+ 5, 274819, 274819, 1747, 1747, // #6019
+ 27, 274834, 274834, 2018, 2018, // #6020
+ 48, 274880, 274880, 2416, 2416, // #6021
+ 29, 274958, 274958, 910, 910, // #6022
+ 8, 274993, 274993, 577, 577, // #6023
+ 5, 275011, 275011, 1747, 1747, // #6024
+ 27, 275026, 275026, 2018, 2018, // #6025
+ 48, 275072, 275072, 2416, 2416, // #6026
+ 29, 275150, 275150, 910, 910, // #6027
+ 8, 275185, 275185, 577, 577, // #6028
+ 5, 275203, 275203, 1747, 1747, // #6029
+ 27, 275218, 275218, 2018, 2018, // #6030
+ 48, 275264, 275264, 2416, 2416, // #6031
+ 29, 275342, 275342, 910, 910, // #6032
+ 8, 275377, 275377, 577, 577, // #6033
+ 5, 275395, 275395, 1747, 1747, // #6034
+ 27, 275410, 275410, 2018, 2018, // #6035
+ 48, 275456, 275456, 2416, 2416, // #6036
+ 29, 275534, 275534, 910, 910, // #6037
+ 8, 275569, 275569, 577, 577, // #6038
+ 5, 275587, 275587, 1747, 1747, // #6039
+ 27, 275602, 275602, 2018, 2018, // #6040
+ 48, 275648, 275648, 2416, 2416, // #6041
+ 29, 275726, 275726, 910, 910, // #6042
+ 8, 275761, 275761, 577, 577, // #6043
+ 5, 275779, 275779, 1747, 1747, // #6044
+ 27, 275794, 275794, 2018, 2018, // #6045
+ 48, 275840, 275840, 2416, 2416, // #6046
+ 29, 275918, 275918, 910, 910, // #6047
+ 8, 275953, 275953, 577, 577, // #6048
+ 5, 275971, 275971, 1747, 1747, // #6049
+ 27, 275986, 275986, 2018, 2018, // #6050
+ 48, 276032, 276032, 2416, 2416, // #6051
+ 29, 276110, 276110, 910, 910, // #6052
+ 8, 276145, 276145, 577, 577, // #6053
+ 5, 276163, 276163, 1747, 1747, // #6054
+ 27, 276178, 276178, 2018, 2018, // #6055
+ 48, 276224, 276224, 2416, 2416, // #6056
+ 29, 276302, 276302, 910, 910, // #6057
+ 1, 276346, 276346, 842, 842, // #6058
+ 1, 276364, 276364, 1228, 1228, // #6059
+ 8, 276372, 276372, 3492, 3492, // #6060
+ 6, 276384, 276384, 1568, 1568, // #6061
+ 8, 276404, 276404, 3492, 3492, // #6062
+ 6, 276416, 276416, 128, 128, // #6063
+ 8, 276436, 276436, 3492, 3492, // #6064
+ 6, 276456, 276456, 104, 104, // #6065
+ 8, 276468, 276468, 3492, 3492, // #6066
+ 6, 276480, 276480, 496, 496, // #6067
+ 8, 276500, 276500, 3492, 3492, // #6068
+ 6, 276520, 276520, 3928, 3928, // #6069
+ 8, 276532, 276532, 3492, 3492, // #6070
+ 6, 276544, 276544, 1968, 1968, // #6071
+ 8, 276564, 276564, 3492, 3492, // #6072
+ 6, 276584, 276584, 312, 312, // #6073
+ 8, 276596, 276596, 3492, 3492, // #6074
+ 6, 276608, 276608, 448, 448, // #6075
+ 8, 276624, 276624, 1552, 1552, // #6076
+ 16, 276680, 276680, 1528, 1528, // #6077
+ 1, 276706, 276706, 4018, 4018, // #6078
+ 8, 276724, 276724, 3492, 3492, // #6079
+ 6, 276744, 276744, 104, 104, // #6080
+ 8, 276756, 276756, 3492, 3492, // #6081
+ 6, 276776, 276776, 312, 312, // #6082
+ 8, 276788, 276788, 3492, 3492, // #6083
+ 6, 276800, 276800, 3920, 3920, // #6084
+ 8, 276820, 276820, 3492, 3492, // #6085
+ 6, 276840, 276840, 40, 40, // #6086
+ 8, 276852, 276852, 3492, 3492, // #6087
+ 6, 276864, 276864, 128, 128, // #6088
+ 8, 276884, 276884, 3492, 3492, // #6089
+ 6, 276896, 276896, 2144, 2144, // #6090
+ 8, 276916, 276916, 3492, 3492, // #6091
+ 6, 276936, 276936, 3912, 3912, // #6092
+ 8, 276948, 276948, 3492, 3492, // #6093
+ 6, 276960, 276960, 448, 448, // #6094
+ 8, 276976, 276976, 2608, 2608, // #6095
+ 16, 277000, 277000, 1528, 1528, // #6096
+ 1, 277026, 277026, 4018, 4018, // #6097
+ 8, 277044, 277044, 3492, 3492, // #6098
+ 6, 277064, 277064, 104, 104, // #6099
+ 8, 277076, 277076, 3492, 3492, // #6100
+ 6, 277088, 277088, 1968, 1968, // #6101
+ 8, 277108, 277108, 3492, 3492, // #6102
+ 6, 277120, 277120, 128, 128, // #6103
+ 8, 277140, 277140, 3492, 3492, // #6104
+ 6, 277152, 277152, 2144, 2144, // #6105
+ 8, 277172, 277172, 3492, 3492, // #6106
+ 6, 277184, 277184, 3152, 3152, // #6107
+ 8, 277204, 277204, 3492, 3492, // #6108
+ 6, 277224, 277224, 40, 40, // #6109
+ 8, 277236, 277236, 3492, 3492, // #6110
+ 6, 277248, 277248, 2880, 2880, // #6111
+ 8, 277268, 277268, 3492, 3492, // #6112
+ 6, 277288, 277288, 312, 312, // #6113
+ 8, 277296, 277296, 1440, 1440, // #6114
+ 16, 277320, 277320, 1528, 1528, // #6115
+ 1, 277346, 277346, 4018, 4018, // #6116
+ 8, 277364, 277364, 3492, 3492, // #6117
+ 6, 277376, 277376, 448, 448, // #6118
+ 8, 277396, 277396, 3492, 3492, // #6119
+ 6, 277416, 277416, 104, 104, // #6120
+ 8, 277428, 277428, 3492, 3492, // #6121
+ 6, 277440, 277440, 1968, 1968, // #6122
+ 8, 277460, 277460, 3492, 3492, // #6123
+ 6, 277480, 277480, 3928, 3928, // #6124
+ 8, 277492, 277492, 3492, 3492, // #6125
+ 6, 277504, 277504, 2144, 2144, // #6126
+ 8, 277524, 277524, 3492, 3492, // #6127
+ 6, 277536, 277536, 3152, 3152, // #6128
+ 8, 277556, 277556, 3492, 3492, // #6129
+ 6, 277576, 277576, 3912, 3912, // #6130
+ 8, 277588, 277588, 3492, 3492, // #6131
+ 6, 277600, 277600, 2880, 2880, // #6132
+ 8, 277616, 277616, 2608, 2608, // #6133
+ 16, 277640, 277640, 1528, 1528, // #6134
+ 1, 277666, 277666, 4018, 4018, // #6135
+ 1, 277692, 277692, 1228, 1228, // #6136
+ 44, 277704, 277704, 1512, 1512, // #6137
+ 16, 277764, 277764, 1924, 1924, // #6138
+ 16, 277796, 277796, 1924, 1924, // #6139
+ 12, 277836, 277836, 3916, 3916, // #6140
+ 23, 277865, 277865, 3929, 3929, // #6141
+ 16, 277953, 277953, 3953, 3953, // #6142
+ 14, 277985, 277985, 1569, 1569, // #6143
+ 8, 278000, 278000, 1584, 1584, // #6144
+ 4, 278016, 278016, 1600, 1600, // #6145
+ 9, 278037, 278037, 1605, 1605, // #6146
+ 6, 278063, 278063, 1615, 1615, // #6147
+ 11, 278086, 278086, 246, 246, // #6148
+ 16, 278113, 278113, 2433, 2433, // #6149
+ 6, 278150, 278150, 3734, 3734, // #6150
+ 7, 278173, 278173, 3741, 3741, // #6151
+ 20, 278221, 278221, 45, 45, // #6152
+ 1, 278266, 278266, 1226, 1226, // #6153
+ 1, 278284, 278284, 1228, 1228, // #6154
+ 1, 278288, 278288, 2752, 2752, // #6155
+ 1, 278304, 278304, 2752, 2752, // #6156
+ 8, 278321, 278321, 2945, 2945, // #6157
+ 20, 278345, 278345, 2025, 2025, // #6158
+ 20, 278377, 278377, 2025, 2025, // #6159
+ 20, 278409, 278409, 2025, 2025, // #6160
+ 8, 278443, 278443, 1243, 1243, // #6161
+ 20, 278473, 278473, 2025, 2025, // #6162
+ 3, 278498, 278498, 1778, 1778, // #6163
+ 5, 278520, 278520, 1800, 1800, // #6164
+ 9, 278542, 278542, 1806, 1806, // #6165
+ 8, 278568, 278568, 1816, 1816, // #6166
+ 7, 278593, 278593, 1825, 1825, // #6167
+ 4, 278617, 278617, 1833, 1833, // #6168
+ 3, 278638, 278638, 1838, 1838, // #6169
+ 6, 278658, 278658, 1842, 1842, // #6170
+ 4, 278735, 278735, 1919, 1919, // #6171
+ 3, 278761, 278761, 1849, 1849, // #6172
+ 5, 278797, 278797, 1853, 1853, // #6173
+ 3, 278819, 278819, 1859, 1859, // #6174
+ 6, 278839, 278839, 1863, 1863, // #6175
+ 4, 278862, 278862, 1870, 1870, // #6176
+ 5, 278883, 278883, 1875, 1875, // #6177
+ 3, 278905, 278905, 1881, 1881, // #6178
+ 6, 278925, 278925, 1885, 1885, // #6179
+ 4, 278948, 278948, 1892, 1892, // #6180
+ 4, 278969, 278969, 1897, 1897, // #6181
+ 4, 278990, 278990, 1902, 1902, // #6182
+ 7, 279011, 279011, 1907, 1907, // #6183
+ 8, 279051, 279051, 1915, 1915, // #6184
+ 6, 279076, 279076, 1924, 1924, // #6185
+ 6, 279099, 279099, 1931, 1931, // #6186
+ 4, 279122, 279122, 1938, 1938, // #6187
+ 10, 279143, 279143, 1943, 1943, // #6188
+ 11, 279170, 279170, 1954, 1954, // #6189
+ 6, 279198, 279198, 1966, 1966, // #6190
+ 6, 279221, 279221, 1973, 1973, // #6191
+ 5, 279244, 279244, 1980, 1980, // #6192
+ 10, 279266, 279266, 1986, 1986, // #6193
+ 5, 279293, 279293, 1997, 1997, // #6194
+ 5, 279315, 279315, 2003, 2003, // #6195
+ 5, 279337, 279337, 2009, 2009, // #6196
+ 6, 279359, 279359, 2015, 2015, // #6197
+ 3, 279382, 279382, 2022, 2022, // #6198
+ 2, 279400, 279400, 1928, 1928, // #6199
+ 3, 279418, 279418, 2026, 2026, // #6200
+ 3, 279438, 279438, 2030, 2030, // #6201
+ 8, 279467, 279467, 1243, 1243, // #6202
+ 20, 279497, 279497, 2025, 2025, // #6203
+ 3, 279522, 279522, 1778, 1778, // #6204
+ 5, 279544, 279544, 1800, 1800, // #6205
+ 9, 279566, 279566, 1806, 1806, // #6206
+ 8, 279592, 279592, 1816, 1816, // #6207
+ 7, 279617, 279617, 1825, 1825, // #6208
+ 4, 279641, 279641, 1833, 1833, // #6209
+ 3, 279662, 279662, 1838, 1838, // #6210
+ 6, 279682, 279682, 1842, 1842, // #6211
+ 4, 279759, 279759, 1919, 1919, // #6212
+ 3, 279785, 279785, 1849, 1849, // #6213
+ 5, 279821, 279821, 1853, 1853, // #6214
+ 3, 279843, 279843, 1859, 1859, // #6215
+ 6, 279863, 279863, 1863, 1863, // #6216
+ 4, 279886, 279886, 1870, 1870, // #6217
+ 5, 279907, 279907, 1875, 1875, // #6218
+ 3, 279929, 279929, 1881, 1881, // #6219
+ 6, 279949, 279949, 1885, 1885, // #6220
+ 4, 279972, 279972, 1892, 1892, // #6221
+ 4, 279993, 279993, 1897, 1897, // #6222
+ 4, 280014, 280014, 1902, 1902, // #6223
+ 7, 280035, 280035, 1907, 1907, // #6224
+ 8, 280075, 280075, 1915, 1915, // #6225
+ 6, 280100, 280100, 1924, 1924, // #6226
+ 6, 280123, 280123, 1931, 1931, // #6227
+ 4, 280146, 280146, 1938, 1938, // #6228
+ 10, 280167, 280167, 1943, 1943, // #6229
+ 11, 280194, 280194, 1954, 1954, // #6230
+ 6, 280222, 280222, 1966, 1966, // #6231
+ 6, 280245, 280245, 1973, 1973, // #6232
+ 5, 280268, 280268, 1980, 1980, // #6233
+ 10, 280290, 280290, 1986, 1986, // #6234
+ 5, 280317, 280317, 1997, 1997, // #6235
+ 5, 280339, 280339, 2003, 2003, // #6236
+ 5, 280361, 280361, 2009, 2009, // #6237
+ 6, 280383, 280383, 2015, 2015, // #6238
+ 3, 280406, 280406, 2022, 2022, // #6239
+ 2, 280424, 280424, 1928, 1928, // #6240
+ 3, 280442, 280442, 2026, 2026, // #6241
+ 3, 280462, 280462, 2030, 2030, // #6242
+ 10, 280484, 280484, 756, 756, // #6243
+ 17, 280509, 280509, 749, 749, // #6244
+ 3, 280536, 280536, 3000, 3000, // #6245
+ 3, 280552, 280552, 3000, 3000, // #6246
+ 3, 280568, 280568, 3000, 3000, // #6247
+ 3, 280584, 280584, 3000, 3000, // #6248
+ 2, 280596, 280596, 36, 36, // #6249
+ 2, 280614, 280614, 854, 854, // #6250
+ 2, 280635, 280635, 43, 43, // #6251
+ 2, 280647, 280647, 1175, 1175, // #6252
+ 2, 280662, 280662, 3142, 3142, // #6253
+ 2, 280687, 280687, 1503, 1503, // #6254
+ 2, 280717, 280717, 1181, 1181, // #6255
+ 2, 280730, 280730, 1178, 1178, // #6256
+ 2, 280749, 280749, 4061, 4061, // #6257
+ 2, 280760, 280760, 1752, 1752, // #6258
+ 2, 280781, 280781, 1181, 1181, // #6259
+ 2, 280784, 280784, 1184, 1184, // #6260
+ 2, 280803, 280803, 1859, 1859, // #6261
+ 2, 280824, 280824, 952, 952, // #6262
+ 2, 280845, 280845, 2269, 2269, // #6263
+ 2, 280848, 280848, 2480, 2480, // #6264
+ 2, 280869, 280869, 3813, 3813, // #6265
+ 9, 280892, 280892, 1228, 1228, // #6266
+ 4, 280918, 280918, 1238, 1238, // #6267
+ 8, 280939, 280939, 1243, 1243, // #6268
+ 5, 280964, 280964, 1252, 1252, // #6269
+ 8, 280986, 280986, 1258, 1258, // #6270
+ 18, 281027, 281027, 1267, 1267, // #6271
+ 20, 281065, 281065, 2025, 2025, // #6272
+ 20, 281097, 281097, 2025, 2025, // #6273
+ 20, 281129, 281129, 2025, 2025, // #6274
+ 20, 281161, 281161, 2025, 2025, // #6275
+ 20, 281193, 281193, 2025, 2025, // #6276
+ 20, 281225, 281225, 2025, 2025, // #6277
+ 20, 281257, 281257, 2025, 2025, // #6278
+ 20, 281289, 281289, 2025, 2025, // #6279
+ 20, 281321, 281321, 2025, 2025, // #6280
+ 20, 281353, 281353, 2025, 2025, // #6281
+ 20, 281385, 281385, 2025, 2025, // #6282
+ 20, 281417, 281417, 2025, 2025, // #6283
+ 20, 281449, 281449, 2025, 2025, // #6284
+ 20, 281481, 281481, 2025, 2025, // #6285
+ 3, 281519, 281519, 495, 495, // #6286
+ 3, 281551, 281551, 495, 495, // #6287
+ 3, 281583, 281583, 495, 495, // #6288
+ 3, 281615, 281615, 495, 495, // #6289
+ 3, 281647, 281647, 495, 495, // #6290
+ 3, 281679, 281679, 495, 495, // #6291
+ 3, 281711, 281711, 495, 495, // #6292
+ 3, 281743, 281743, 495, 495, // #6293
+ 3, 281775, 281775, 495, 495, // #6294
+ 3, 281807, 281807, 495, 495, // #6295
+ 3, 281839, 281839, 495, 495, // #6296
+ 3, 281871, 281871, 495, 495, // #6297
+ 3, 281903, 281903, 495, 495, // #6298
+ 3, 281935, 281935, 495, 495, // #6299
+ 21, 281959, 281959, 599, 599, // #6300
+ 10, 281988, 281988, 756, 756, // #6301
+ 11, 282002, 282002, 642, 642, // #6302
+ 3, 282024, 282024, 3000, 3000, // #6303
+ 10, 282036, 282036, 756, 756, // #6304
+ 17, 282061, 282061, 749, 749, // #6305
+ 3, 282088, 282088, 3000, 3000, // #6306
+ 3, 282104, 282104, 3000, 3000, // #6307
+ 3, 282120, 282120, 3000, 3000, // #6308
+ 3, 282136, 282136, 3000, 3000, // #6309
+ 1, 282147, 282147, 2339, 2339, // #6310
+ 10, 282164, 282164, 756, 756, // #6311
+ 17, 282189, 282189, 749, 749, // #6312
+ 3, 282216, 282216, 3000, 3000, // #6313
+ 3, 282232, 282232, 3000, 3000, // #6314
+ 3, 282248, 282248, 3000, 3000, // #6315
+ 3, 282264, 282264, 3000, 3000, // #6316
+ 1, 282275, 282275, 2339, 2339, // #6317
+ 2, 282290, 282290, 674, 674, // #6318
+ 19, 282314, 282314, 2650, 2650, // #6319
+ 10, 282340, 282340, 756, 756, // #6320
+ 11, 282354, 282354, 642, 642, // #6321
+ 3, 282376, 282376, 3000, 3000, // #6322
+ 10, 282388, 282388, 756, 756, // #6323
+ 17, 282413, 282413, 749, 749, // #6324
+ 3, 282440, 282440, 3000, 3000, // #6325
+ 3, 282456, 282456, 3000, 3000, // #6326
+ 3, 282472, 282472, 3000, 3000, // #6327
+ 3, 282488, 282488, 3000, 3000, // #6328
+ 1, 282499, 282499, 2339, 2339, // #6329
+ 10, 282512, 282512, 1120, 1120, // #6330
+ 5, 282539, 282539, 2843, 2843, // #6331
+ 22, 282572, 282572, 2460, 2460, // #6332
+ 40, 282624, 282624, 3376, 3376, // #6333
+ 47, 282700, 282700, 3420, 3420, // #6334
+ 19, 282762, 282762, 2650, 2650, // #6335
+ 10, 282788, 282788, 756, 756, // #6336
+ 11, 282802, 282802, 642, 642, // #6337
+ 3, 282824, 282824, 3000, 3000, // #6338
+ 10, 282836, 282836, 756, 756, // #6339
+ 17, 282861, 282861, 749, 749, // #6340
+ 3, 282888, 282888, 3000, 3000, // #6341
+ 3, 282904, 282904, 3000, 3000, // #6342
+ 3, 282920, 282920, 3000, 3000, // #6343
+ 3, 282936, 282936, 3000, 3000, // #6344
+ 1, 282947, 282947, 2339, 2339, // #6345
+ 10, 282964, 282964, 756, 756, // #6346
+ 17, 282989, 282989, 749, 749, // #6347
+ 3, 283016, 283016, 3000, 3000, // #6348
+ 3, 283032, 283032, 3000, 3000, // #6349
+ 3, 283048, 283048, 3000, 3000, // #6350
+ 3, 283064, 283064, 3000, 3000, // #6351
+ 1, 283075, 283075, 2339, 2339, // #6352
+ 10, 283088, 283088, 3488, 3488, // #6353
+ 5, 283115, 283115, 2843, 2843, // #6354
+ 22, 283148, 283148, 2460, 2460, // #6355
+ 40, 283200, 283200, 3376, 3376, // #6356
+ 47, 283276, 283276, 3420, 3420, // #6357
+ 2, 283330, 283330, 674, 674, // #6358
+ 4, 283352, 283352, 2504, 2504, // #6359
+ 4, 283369, 283369, 2729, 2729, // #6360
+ 28, 283400, 283400, 808, 808, // #6361
+ 40, 283456, 283456, 3376, 3376, // #6362
+ 47, 283532, 283532, 3420, 3420, // #6363
+ 5, 283584, 283584, 3600, 3600, // #6364
+ 4, 283609, 283609, 2729, 2729, // #6365
+ 28, 283656, 283656, 808, 808, // #6366
+ 40, 283712, 283712, 3376, 3376, // #6367
+ 47, 283788, 283788, 3420, 3420, // #6368
+ 4, 283848, 283848, 2632, 2632, // #6369
+ 4, 283865, 283865, 2729, 2729, // #6370
+ 28, 283877, 283877, 837, 837, // #6371
+ 40, 283968, 283968, 3376, 3376, // #6372
+ 47, 284044, 284044, 3420, 3420, // #6373
+ 5, 284096, 284096, 3808, 3808, // #6374
+ 4, 284121, 284121, 2729, 2729, // #6375
+ 28, 284133, 284133, 837, 837, // #6376
+ 40, 284224, 284224, 3376, 3376, // #6377
+ 47, 284300, 284300, 3420, 3420, // #6378
+ 1, 284360, 284360, 2760, 2760, // #6379
+ 3, 284382, 284382, 2734, 2734, // #6380
+ 28, 284402, 284402, 866, 866, // #6381
+ 40, 284480, 284480, 3376, 3376, // #6382
+ 47, 284556, 284556, 3420, 3420, // #6383
+ 1, 284616, 284616, 2888, 2888, // #6384
+ 3, 284638, 284638, 2734, 2734, // #6385
+ 28, 284687, 284687, 895, 895, // #6386
+ 40, 284736, 284736, 3376, 3376, // #6387
+ 47, 284812, 284812, 3420, 3420, // #6388
+ 1, 284864, 284864, 752, 752, // #6389
+ 3, 284894, 284894, 2734, 2734, // #6390
+ 17, 284925, 284925, 941, 941, // #6391
+ 40, 284992, 284992, 3376, 3376, // #6392
+ 47, 285068, 285068, 3420, 3420, // #6393
+ 1, 285120, 285120, 3376, 3376, // #6394
+ 3, 285150, 285150, 2734, 2734, // #6395
+ 12, 285169, 285169, 1025, 1025, // #6396
+ 40, 285184, 285184, 3376, 3376, // #6397
+ 47, 285260, 285260, 3420, 3420, // #6398
+ 1, 285312, 285312, 3488, 3488, // #6399
+ 3, 285342, 285342, 2734, 2734, // #6400
+ 8, 285391, 285391, 1087, 1087, // #6401
+ 40, 285440, 285440, 3376, 3376, // #6402
+ 47, 285516, 285516, 3420, 3420, // #6403
+ 1, 285568, 285568, 3600, 3600, // #6404
+ 3, 285598, 285598, 2734, 2734, // #6405
+ 13, 285624, 285624, 1096, 1096, // #6406
+ 40, 285696, 285696, 3376, 3376, // #6407
+ 47, 285772, 285772, 3420, 3420, // #6408
+ 16, 285836, 285836, 604, 604, // #6409
+ 10, 285860, 285860, 756, 756, // #6410
+ 11, 285874, 285874, 642, 642, // #6411
+ 3, 285896, 285896, 3000, 3000, // #6412
+ 10, 285908, 285908, 756, 756, // #6413
+ 17, 285933, 285933, 749, 749, // #6414
+ 3, 285960, 285960, 3000, 3000, // #6415
+ 3, 285976, 285976, 3000, 3000, // #6416
+ 3, 285992, 285992, 3000, 3000, // #6417
+ 3, 286008, 286008, 3000, 3000, // #6418
+ 1, 286019, 286019, 2339, 2339, // #6419
+ 10, 286039, 286039, 1431, 1431, // #6420
+ 4, 286066, 286066, 3106, 3106, // #6421
+ 4, 286082, 286082, 3106, 3106, // #6422
+ 4, 286103, 286103, 3111, 3111, // #6423
+ 4, 286119, 286119, 3111, 3111, // #6424
+ 5, 286129, 286129, 673, 673, // #6425
+ 5, 286145, 286145, 673, 673, // #6426
+ 8, 286172, 286172, 3116, 3116, // #6427
+ 8, 286204, 286204, 3116, 3116, // #6428
+ 4, 286228, 286228, 1588, 1588, // #6429
+ 4, 286244, 286244, 1588, 1588, // #6430
+ 4, 286256, 286256, 2560, 2560, // #6431
+ 4, 286272, 286272, 2560, 2560, // #6432
+ 4, 286296, 286296, 1384, 1384, // #6433
+ 4, 286312, 286312, 1384, 1384, // #6434
+ 4, 286325, 286325, 3125, 3125, // #6435
+ 4, 286341, 286341, 3125, 3125, // #6436
+ 7, 286410, 286410, 3130, 3130, // #6437
+ 7, 286474, 286474, 3130, 3130, // #6438
+ 8, 286498, 286498, 3138, 3138, // #6439
+ 8, 286514, 286514, 3138, 3138, // #6440
+ 4, 286540, 286540, 588, 588, // #6441
+ 4, 286572, 286572, 588, 588, // #6442
+ 11, 286603, 286603, 3147, 3147, // #6443
+ 11, 286635, 286635, 3147, 3147, // #6444
+ 7, 286663, 286663, 3159, 3159, // #6445
+ 7, 286679, 286679, 3159, 3159, // #6446
+ 8, 286703, 286703, 3167, 3167, // #6447
+ 8, 286735, 286735, 3167, 3167, // #6448
+ 5, 286758, 286758, 1078, 1078, // #6449
+ 5, 286774, 286774, 1078, 1078, // #6450
+ 5, 286792, 286792, 3176, 3176, // #6451
+ 5, 286808, 286808, 3176, 3176, // #6452
+ 8, 286830, 286830, 3182, 3182, // #6453
+ 8, 286862, 286862, 3182, 3182, // #6454
+ 9, 286887, 286887, 3191, 3191, // #6455
+ 9, 286919, 286919, 3191, 3191, // #6456
+ 8, 286945, 286945, 3201, 3201, // #6457
+ 8, 286961, 286961, 3201, 3201, // #6458
+ 11, 286986, 286986, 3210, 3210, // #6459
+ 11, 287018, 287018, 3210, 3210, // #6460
+ 5, 287046, 287046, 3222, 3222, // #6461
+ 5, 287062, 287062, 3222, 3222, // #6462
+ 5, 287084, 287084, 3228, 3228, // #6463
+ 5, 287116, 287116, 3228, 3228, // #6464
+ 7, 287138, 287138, 3234, 3234, // #6465
+ 7, 287154, 287154, 3234, 3234, // #6466
+ 5, 287178, 287178, 3242, 3242, // #6467
+ 5, 287194, 287194, 3242, 3242, // #6468
+ 2, 287200, 287200, 3248, 3248, // #6469
+ 2, 287216, 287216, 3248, 3248, // #6470
+ 7, 287239, 287239, 487, 487, // #6471
+ 7, 287255, 287255, 487, 487, // #6472
+ 7, 287279, 287279, 479, 479, // #6473
+ 7, 287311, 287311, 479, 479, // #6474
+ 3, 287331, 287331, 3251, 3251, // #6475
+ 3, 287351, 287351, 3255, 3255, // #6476
+ 7, 287365, 287365, 2901, 2901, // #6477
+ 7, 287435, 287435, 3259, 3259, // #6478
+ 5, 287459, 287459, 3267, 3267, // #6479
+ 6, 287481, 287481, 3273, 3273, // #6480
+ 5, 287488, 287488, 3280, 3280, // #6481
+ 4, 287510, 287510, 3286, 3286, // #6482
+ 5, 287528, 287528, 2136, 2136, // #6483
+ 4, 287550, 287550, 2158, 2158, // #6484
+ 4, 287572, 287572, 3892, 3892, // #6485
+ 6, 287595, 287595, 203, 203, // #6486
+ 5, 287617, 287617, 673, 673, // #6487
+ 5, 287635, 287635, 3267, 3267, // #6488
+ 6, 287659, 287659, 3291, 3291, // #6489
+ 4, 287688, 287688, 1384, 1384, // #6490
+ 4, 287702, 287702, 774, 774, // #6491
+ 6, 287714, 287714, 3298, 3298, // #6492
+ 6, 287737, 287737, 3305, 3305, // #6493
+ 9, 287744, 287744, 3312, 3312, // #6494
+ 6, 287770, 287770, 3322, 3322, // #6495
+ 4, 287796, 287796, 388, 388, // #6496
+ 3, 287810, 287810, 3970, 3970, // #6497
+ 5, 287827, 287827, 1539, 1539, // #6498
+ 6, 287841, 287841, 3329, 3329, // #6499
+ 3, 287864, 287864, 3336, 3336, // #6500
+ 6, 287884, 287884, 3340, 3340, // #6501
+ 7, 287907, 287907, 3347, 3347, // #6502
+ 7, 287923, 287923, 3379, 3379, // #6503
+ 7, 287947, 287947, 3355, 3355, // #6504
+ 7, 287971, 287971, 3363, 3363, // #6505
+ 5, 287997, 287997, 781, 781, // #6506
+ 5, 288027, 288027, 3371, 3371, // #6507
+ 9, 288049, 288049, 3377, 3377, // #6508
+ 7, 288075, 288075, 3387, 3387, // #6509
+ 7, 288099, 288099, 3395, 3395, // #6510
+ 6, 288113, 288113, 3825, 3825, // #6511
+ 7, 288139, 288139, 3403, 3403, // #6512
+ 9, 288163, 288163, 3411, 3411, // #6513
+ 6, 288189, 288189, 3421, 3421, // #6514
+ 8, 288212, 288212, 3428, 3428, // #6515
+ 11, 288237, 288237, 3437, 3437, // #6516
+ 6, 288265, 288265, 3449, 3449, // #6517
+ 5, 288272, 288272, 3456, 3456, // #6518
+ 3, 288300, 288300, 1196, 1196, // #6519
+ 2, 288318, 288318, 2206, 2206, // #6520
+ 1, 288339, 288339, 3779, 3779, // #6521
+ 2, 288358, 288358, 3462, 3462, // #6522
+ 2, 288377, 288377, 3465, 3465, // #6523
+ 5, 288385, 288385, 673, 673, // #6524
+ 5, 288412, 288412, 3468, 3468, // #6525
+ 2, 288437, 288437, 3813, 3813, // #6526
+ 5, 288450, 288450, 3474, 3474, // #6527
+ 2, 288472, 288472, 3480, 3480, // #6528
+ 5, 288491, 288491, 3483, 3483, // #6529
+ 5, 288525, 288525, 3389, 3389, // #6530
+ 3, 288559, 288559, 1567, 1567, // #6531
+ 3, 288586, 288586, 2122, 2122, // #6532
+ 6, 288601, 288601, 3273, 3273, // #6533
+ 4, 288609, 288609, 3489, 3489, // #6534
+ 5, 288630, 288630, 1862, 1862, // #6535
+ 4, 288646, 288646, 3494, 3494, // #6536
+ 1, 288660, 288660, 2740, 2740, // #6537
+ 2, 288672, 288672, 1264, 1264, // #6538
+ 3, 288699, 288699, 3499, 3499, // #6539
+ 1, 288714, 288714, 3642, 3642, // #6540
+ 2, 288730, 288730, 778, 778, // #6541
+ 4, 288751, 288751, 3503, 3503, // #6542
+ 2, 288768, 288768, 3968, 3968, // #6543
+ 4, 288788, 288788, 3508, 3508, // #6544
+ 3, 288809, 288809, 3513, 3513, // #6545
+ 3, 288829, 288829, 3517, 3517, // #6546
+ 1, 288848, 288848, 848, 848, // #6547
+ 4, 288875, 288875, 827, 827, // #6548
+ 2, 288885, 288885, 1301, 1301, // #6549
+ 4, 288909, 288909, 3469, 3469, // #6550
+ 2, 288929, 288929, 3521, 3521, // #6551
+ 2, 288948, 288948, 3524, 3524, // #6552
+ 2, 288967, 288967, 3527, 3527, // #6553
+ 2, 288986, 288986, 3530, 3530, // #6554
+ 2, 289005, 289005, 3533, 3533, // #6555
+ 2, 289008, 289008, 3536, 3536, // #6556
+ 4, 289029, 289029, 1925, 1925, // #6557
+ 2, 289053, 289053, 1325, 1325, // #6558
+ 2, 289059, 289059, 3539, 3539, // #6559
+ 2, 289078, 289078, 3542, 3542, // #6560
+ 3, 289097, 289097, 3545, 3545, // #6561
+ 3, 289117, 289117, 3549, 3549, // #6562
+ 2, 289138, 289138, 2802, 2802, // #6563
+ 4, 289161, 289161, 3177, 3177, // #6564
+ 4, 289169, 289169, 3553, 3553, // #6565
+ 6, 289188, 289188, 852, 852, // #6566
+ 2, 289201, 289201, 3505, 3505, // #6567
+ 4, 289228, 289228, 3484, 3484, // #6568
+ 10, 289254, 289254, 3558, 3558, // #6569
+ 3, 289281, 289281, 3569, 3569, // #6570
+ 1, 289302, 289302, 3830, 3830, // #6571
+ 7, 289317, 289317, 2901, 2901, // #6572
+ 1, 289337, 289337, 3881, 3881, // #6573
+ 2, 289347, 289347, 1779, 1779, // #6574
+ 2, 289362, 289362, 2066, 2066, // #6575
+ 3, 289383, 289383, 3495, 3495, // #6576
+ 4, 289405, 289405, 2141, 2141, // #6577
+ 4, 289436, 289436, 2284, 2284, // #6578
+ 2, 289459, 289459, 1779, 1779, // #6579
+ 2, 289474, 289474, 2066, 2066, // #6580
+ 3, 289495, 289495, 3495, 3495, // #6581
+ 4, 289517, 289517, 2141, 2141, // #6582
+ 4, 289548, 289548, 2284, 2284, // #6583
+ 33, 289576, 289576, 392, 392, // #6584
+ 13, 289627, 289627, 2027, 2027, // #6585
+ 9, 289649, 289649, 2225, 2225, // #6586
+ 4, 289677, 289677, 2333, 2333, // #6587
+ 9, 289697, 289697, 2401, 2401, // #6588
+ 6, 289725, 289725, 2477, 2477, // #6589
+ 6, 289757, 289757, 2477, 2477, // #6590
+ 6, 289789, 289789, 2477, 2477, // #6591
+ 6, 289821, 289821, 2477, 2477, // #6592
+ 14, 289845, 289845, 2469, 2469, // #6593
+ 4, 289874, 289874, 306, 306, // #6594
+ 10, 289893, 289893, 3333, 3333, // #6595
+ 14, 289909, 289909, 3349, 3349, // #6596
+ 11, 289945, 289945, 3369, 3369, // #6597
+ 12, 289996, 289996, 3388, 3388, // #6598
+ 13, 290016, 290016, 3408, 3408, // #6599
+ 12, 290035, 290035, 3427, 3427, // #6600
+ 12, 290054, 290054, 3446, 3446, // #6601
+ 12, 290090, 290090, 3466, 3466, // #6602
+ 19, 290112, 290112, 3488, 3488, // #6603
+ 23, 290145, 290145, 3521, 3521, // #6604
+ 13, 290190, 290190, 3550, 3550, // #6605
+ 7, 290208, 290208, 3568, 3568, // #6606
+ 16, 290226, 290226, 3586, 3586, // #6607
+ 15, 290269, 290269, 3613, 3613, // #6608
+ 3, 290289, 290289, 3633, 3633, // #6609
+ 9, 290316, 290316, 3644, 3644, // #6610
+ 17, 290336, 290336, 3664, 3664, // #6611
+ 17, 290375, 290375, 3687, 3687, // #6612
+ 15, 290403, 290403, 3715, 3715, // #6613
+ 12, 290432, 290432, 3744, 3744, // #6614
+ 5, 290458, 290458, 3770, 3770, // #6615
+ 7, 290479, 290479, 3791, 3791, // #6616
+ 19, 290500, 290500, 3812, 3812, // #6617
+ 4, 290537, 290537, 3545, 3545, // #6618
+ 5, 290546, 290546, 3858, 3858, // #6619
+ 9, 290570, 290570, 3882, 3882, // #6620
+ 12, 290596, 290596, 2484, 2484, // #6621
+ 3, 290632, 290632, 1432, 1432, // #6622
+ 1, 290643, 290643, 2339, 2339, // #6623
+ 17, 290662, 290662, 2502, 2502, // #6624
+ 15, 290696, 290696, 2520, 2520, // #6625
+ 4, 290732, 290732, 3132, 3132, // #6626
+ 10, 290756, 290756, 756, 756, // #6627
+ 11, 290770, 290770, 642, 642, // #6628
+ 2, 290788, 290788, 3428, 3428, // #6629
+ 3, 290808, 290808, 3000, 3000, // #6630
+ 10, 290820, 290820, 756, 756, // #6631
+ 1, 290842, 290842, 1226, 1226, // #6632
+ 1, 290860, 290860, 1228, 1228, // #6633
+ 17, 290877, 290877, 749, 749, // #6634
+ 3, 290904, 290904, 3000, 3000, // #6635
+ 3, 290920, 290920, 3000, 3000, // #6636
+ 11, 290936, 290936, 2536, 2536, // #6637
+ 7, 291018, 291018, 2618, 2618, // #6638
+ 14, 291075, 291075, 2675, 2675, // #6639
+ 8, 291112, 291112, 2376, 2376, // #6640
+ 6, 291143, 291143, 2663, 2663, // #6641
+ 8, 291160, 291160, 2376, 2376, // #6642
+ 6, 291191, 291191, 2663, 2663, // #6643
+ 1, 291210, 291210, 1226, 1226, // #6644
+ 1, 291228, 291228, 1228, 1228, // #6645
+ 10, 291236, 291236, 756, 756, // #6646
+ 17, 291261, 291261, 749, 749, // #6647
+ 3, 291288, 291288, 3000, 3000, // #6648
+ 3, 291304, 291304, 3000, 3000, // #6649
+ 3, 291320, 291320, 3000, 3000, // #6650
+ 3, 291336, 291336, 3000, 3000, // #6651
+ 22, 291407, 291407, 2687, 2687, // #6652
+ 12, 291452, 291452, 3916, 3916, // #6653
+ 23, 291481, 291481, 3929, 3929, // #6654
+ 16, 291521, 291521, 3953, 3953, // #6655
+ 14, 291553, 291553, 1569, 1569, // #6656
+ 8, 291568, 291568, 1584, 1584, // #6657
+ 4, 291584, 291584, 1600, 1600, // #6658
+ 9, 291605, 291605, 1605, 1605, // #6659
+ 6, 291631, 291631, 1615, 1615, // #6660
+ 6, 291651, 291651, 1491, 1491, // #6661
+ 10, 291664, 291664, 1728, 1728, // #6662
+ 31, 291720, 291720, 488, 488, // #6663
+ 5, 291762, 291762, 2978, 2978, // #6664
+ 4, 291784, 291784, 1176, 1176, // #6665
+ 40, 291840, 291840, 3376, 3376, // #6666
+ 47, 291916, 291916, 3420, 3420, // #6667
+ 10, 291968, 291968, 1728, 1728, // #6668
+ 31, 291992, 291992, 584, 584, // #6669
+ 5, 292034, 292034, 2978, 2978, // #6670
+ 8, 292052, 292052, 932, 932, // #6671
+ 40, 292096, 292096, 3376, 3376, // #6672
+ 47, 292172, 292172, 3420, 3420, // #6673
+ 10, 292224, 292224, 1728, 1728, // #6674
+ 30, 292296, 292296, 952, 952, // #6675
+ 5, 292338, 292338, 2978, 2978, // #6676
+ 11, 292360, 292360, 920, 920, // #6677
+ 40, 292416, 292416, 3376, 3376, // #6678
+ 47, 292492, 292492, 3420, 3420, // #6679
+ 3, 292544, 292544, 2496, 2496, // #6680
+ 3, 292574, 292574, 2734, 2734, // #6681
+ 19, 292603, 292603, 747, 747, // #6682
+ 40, 292672, 292672, 3376, 3376, // #6683
+ 47, 292748, 292748, 3420, 3420, // #6684
+ 3, 292800, 292800, 2896, 2896, // #6685
+ 3, 292830, 292830, 2734, 2734, // #6686
+ 13, 292879, 292879, 767, 767, // #6687
+ 40, 292928, 292928, 3376, 3376, // #6688
+ 47, 293004, 293004, 3420, 3420, // #6689
+ 1, 293056, 293056, 3104, 3104, // #6690
+ 3, 293086, 293086, 2734, 2734, // #6691
+ 13, 293130, 293130, 122, 122, // #6692
+ 40, 293184, 293184, 3376, 3376, // #6693
+ 47, 293260, 293260, 3420, 3420, // #6694
+ 1, 293312, 293312, 2688, 2688, // #6695
+ 3, 293342, 293342, 2734, 2734, // #6696
+ 16, 293373, 293373, 781, 781, // #6697
+ 40, 293440, 293440, 3376, 3376, // #6698
+ 47, 293516, 293516, 3420, 3420, // #6699
+ 4, 293568, 293568, 3936, 3936, // #6700
+ 4, 293593, 293593, 2729, 2729, // #6701
+ 20, 293614, 293614, 798, 798, // #6702
+ 40, 293696, 293696, 3376, 3376, // #6703
+ 47, 293772, 293772, 3420, 3420, // #6704
+ 17, 293828, 293828, 3492, 3492, // #6705
+ 5, 293859, 293859, 3395, 3395, // #6706
+ 11, 293885, 293885, 3357, 3357, // #6707
+ 12, 293912, 293912, 2712, 2712, // #6708
+ 5, 293939, 293939, 563, 563, // #6709
+ 10, 293952, 293952, 2816, 2816, // #6710
+ 1, 293968, 293968, 1888, 1888, // #6711
+ 3, 293998, 293998, 2734, 2734, // #6712
+ 10, 294024, 294024, 1896, 1896, // #6713
+ 40, 294080, 294080, 3376, 3376, // #6714
+ 47, 294156, 294156, 3420, 3420, // #6715
+ 7, 294208, 294208, 2256, 2256, // #6716
+ 1, 294239, 294239, 3103, 3103, // #6717
+ 1, 294257, 294257, 1361, 1361, // #6718
+ 1, 294274, 294274, 978, 978, // #6719
+ 32, 294293, 294293, 2309, 2309, // #6720
+ 1, 294348, 294348, 380, 380, // #6721
+ 17, 294359, 294359, 3351, 3351, // #6722
+ 1, 294384, 294384, 3008, 3008, // #6723
+ 6, 294406, 294406, 3414, 3414, // #6724
+ 17, 294419, 294419, 291, 291, // #6725
+ 3, 294457, 294457, 3369, 3369, // #6726
+ 3, 294464, 294464, 3536, 3536, // #6727
+ 19, 294488, 294488, 808, 808, // #6728
+ 20, 294519, 294519, 1863, 1863, // #6729
+ 12, 294551, 294551, 551, 551, // #6730
+ 7, 294576, 294576, 2256, 2256, // #6731
+ 1, 294607, 294607, 3103, 3103, // #6732
+ 1, 294625, 294625, 1361, 1361, // #6733
+ 1, 294642, 294642, 978, 978, // #6734
+ 42, 294660, 294660, 2708, 2708, // #6735
+ 1, 294716, 294716, 380, 380, // #6736
+ 40, 294724, 294724, 932, 932, // #6737
+ 12, 294775, 294775, 551, 551, // #6738
+ 7, 294800, 294800, 2256, 2256, // #6739
+ 1, 294831, 294831, 3103, 3103, // #6740
+ 1, 294849, 294849, 1361, 1361, // #6741
+ 1, 294866, 294866, 978, 978, // #6742
+ 42, 294916, 294916, 2548, 2548, // #6743
+ 1, 294972, 294972, 380, 380, // #6744
+ 14, 294989, 294989, 589, 589, // #6745
+ 7, 295008, 295008, 2256, 2256, // #6746
+ 1, 295039, 295039, 3103, 3103, // #6747
+ 1, 295057, 295057, 1361, 1361, // #6748
+ 1, 295074, 295074, 978, 978, // #6749
+ 42, 295108, 295108, 2724, 2724, // #6750
+ 1, 295164, 295164, 380, 380, // #6751
+ 18, 295180, 295180, 604, 604, // #6752
+ 4, 295211, 295211, 2411, 2411, // #6753
+ 6, 295227, 295227, 843, 843, // #6754
+ 20, 295308, 295308, 124, 124, // #6755
+ 1, 295354, 295354, 1226, 1226, // #6756
+ 1, 295372, 295372, 1228, 1228, // #6757
+ 1, 295386, 295386, 3610, 3610, // #6758
+ 1, 295402, 295402, 3610, 3610, // #6759
+ 2, 295413, 295413, 2885, 2885, // #6760
+ 1, 295434, 295434, 3610, 3610, // #6761
+ 2, 295445, 295445, 2885, 2885, // #6762
+ 1, 295466, 295466, 3610, 3610, // #6763
+ 2, 295477, 295477, 2885, 2885, // #6764
+ 1, 295498, 295498, 3610, 3610, // #6765
+ 2, 295509, 295509, 2885, 2885, // #6766
+ 1, 295530, 295530, 3610, 3610, // #6767
+ 1, 295546, 295546, 3610, 3610, // #6768
+ 2, 295557, 295557, 2885, 2885, // #6769
+ 1, 295578, 295578, 3610, 3610, // #6770
+ 2, 295589, 295589, 2885, 2885, // #6771
+ 1, 295610, 295610, 3610, 3610, // #6772
+ 2, 295621, 295621, 2885, 2885, // #6773
+ 1, 295642, 295642, 3610, 3610, // #6774
+ 2, 295653, 295653, 2885, 2885, // #6775
+ 10, 295668, 295668, 756, 756, // #6776
+ 11, 295682, 295682, 642, 642, // #6777
+ 3, 295704, 295704, 3000, 3000, // #6778
+ 10, 295716, 295716, 756, 756, // #6779
+ 17, 295741, 295741, 749, 749, // #6780
+ 3, 295768, 295768, 3000, 3000, // #6781
+ 3, 295784, 295784, 3000, 3000, // #6782
+ 3, 295800, 295800, 3000, 3000, // #6783
+ 3, 295816, 295816, 3000, 3000, // #6784
+ 1, 295827, 295827, 2339, 2339, // #6785
+ 10, 295844, 295844, 756, 756, // #6786
+ 11, 295858, 295858, 642, 642, // #6787
+ 3, 295880, 295880, 3000, 3000, // #6788
+ 10, 295892, 295892, 756, 756, // #6789
+ 17, 295917, 295917, 749, 749, // #6790
+ 3, 295944, 295944, 3000, 3000, // #6791
+ 3, 295960, 295960, 3000, 3000, // #6792
+ 3, 295976, 295976, 3000, 3000, // #6793
+ 3, 295992, 295992, 3000, 3000, // #6794
+ 1, 296003, 296003, 2339, 2339, // #6795
+ 10, 296020, 296020, 756, 756, // #6796
+ 11, 296034, 296034, 642, 642, // #6797
+ 3, 296056, 296056, 3000, 3000, // #6798
+ 10, 296068, 296068, 756, 756, // #6799
+ 17, 296093, 296093, 749, 749, // #6800
+ 3, 296120, 296120, 3000, 3000, // #6801
+ 3, 296136, 296136, 3000, 3000, // #6802
+ 3, 296152, 296152, 3000, 3000, // #6803
+ 3, 296168, 296168, 3000, 3000, // #6804
+ 1, 296179, 296179, 2339, 2339, // #6805
+ 3, 296204, 296204, 204, 204, // #6806
+ 6, 296219, 296219, 843, 843, // #6807
+ 20, 296247, 296247, 103, 103, // #6808
+ 1, 296282, 296282, 3610, 3610, // #6809
+ 1, 296298, 296298, 3610, 3610, // #6810
+ 2, 296309, 296309, 2885, 2885, // #6811
+ 1, 296330, 296330, 3610, 3610, // #6812
+ 2, 296341, 296341, 2885, 2885, // #6813
+ 1, 296362, 296362, 3610, 3610, // #6814
+ 2, 296373, 296373, 2885, 2885, // #6815
+ 1, 296394, 296394, 3610, 3610, // #6816
+ 1, 296410, 296410, 3610, 3610, // #6817
+ 2, 296421, 296421, 2885, 2885, // #6818
+ 1, 296442, 296442, 3610, 3610, // #6819
+ 2, 296453, 296453, 2885, 2885, // #6820
+ 1, 296474, 296474, 3610, 3610, // #6821
+ 2, 296485, 296485, 2885, 2885, // #6822
+ 10, 296500, 296500, 756, 756, // #6823
+ 11, 296514, 296514, 642, 642, // #6824
+ 3, 296536, 296536, 3000, 3000, // #6825
+ 10, 296548, 296548, 756, 756, // #6826
+ 17, 296573, 296573, 749, 749, // #6827
+ 3, 296600, 296600, 3000, 3000, // #6828
+ 3, 296616, 296616, 3000, 3000, // #6829
+ 3, 296632, 296632, 3000, 3000, // #6830
+ 3, 296648, 296648, 3000, 3000, // #6831
+ 1, 296659, 296659, 2339, 2339, // #6832
+ 10, 296676, 296676, 756, 756, // #6833
+ 11, 296690, 296690, 642, 642, // #6834
+ 3, 296712, 296712, 3000, 3000, // #6835
+ 10, 296724, 296724, 756, 756, // #6836
+ 17, 296749, 296749, 749, 749, // #6837
+ 3, 296776, 296776, 3000, 3000, // #6838
+ 3, 296792, 296792, 3000, 3000, // #6839
+ 3, 296808, 296808, 3000, 3000, // #6840
+ 3, 296824, 296824, 3000, 3000, // #6841
+ 1, 296835, 296835, 2339, 2339, // #6842
+ 10, 296854, 296854, 326, 326, // #6843
+ 7, 296880, 296880, 2256, 2256, // #6844
+ 1, 296911, 296911, 3103, 3103, // #6845
+ 1, 296929, 296929, 1361, 1361, // #6846
+ 1, 296946, 296946, 978, 978, // #6847
+ 13, 296964, 296964, 3732, 3732, // #6848
+ 1, 297004, 297004, 380, 380, // #6849
+ 31, 297020, 297020, 28, 28, // #6850
+ 7, 297060, 297060, 1956, 1956, // #6851
+ 9, 297080, 297080, 3304, 3304, // #6852
+ 4, 297104, 297104, 3728, 3728, // #6853
+ 4, 297129, 297129, 2729, 2729, // #6854
+ 22, 297163, 297163, 555, 555, // #6855
+ 40, 297216, 297216, 3376, 3376, // #6856
+ 47, 297292, 297292, 3420, 3420, // #6857
+ 13, 297353, 297353, 201, 201, // #6858
+ 1, 297378, 297378, 4018, 4018, // #6859
+ 1, 297394, 297394, 4018, 4018, // #6860
+ 1, 297410, 297410, 4018, 4018, // #6861
+ 1, 297426, 297426, 4018, 4018, // #6862
+ 1, 297442, 297442, 4018, 4018, // #6863
+ 42, 297472, 297472, 1824, 1824, // #6864
+ 16, 297528, 297528, 2024, 2024, // #6865
+ 1, 297554, 297554, 4018, 4018, // #6866
+ 1, 297570, 297570, 4018, 4018, // #6867
+ 1, 297586, 297586, 4018, 4018, // #6868
+ 1, 297602, 297602, 4018, 4018, // #6869
+ 1, 297618, 297618, 4018, 4018, // #6870
+ 26, 297675, 297675, 683, 683, // #6871
+ 19, 297736, 297736, 888, 888, // #6872
+ 34, 297760, 297760, 2192, 2192, // #6873
+ 2, 297812, 297812, 2228, 2228, // #6874
+ 17, 297864, 297864, 2232, 2232, // #6875
+ 2, 297899, 297899, 2251, 2251, // #6876
+ 1, 297919, 297919, 2255, 2255, // #6877
+ 6, 297939, 297939, 3155, 3155, // #6878
+ 2, 297962, 297962, 2202, 2202, // #6879
+ 5, 297968, 297968, 3696, 3696, // #6880
+ 2, 297988, 297988, 3556, 3556, // #6881
+ 19, 298011, 298011, 3659, 3659, // #6882
+ 2, 298040, 298040, 3656, 3656, // #6883
+ 3, 298054, 298054, 358, 358, // #6884
+ 36, 298120, 298120, 568, 568, // #6885
+ 1, 298171, 298171, 3131, 3131, // #6886
+ 2, 298182, 298182, 2038, 2038, // #6887
+ 1, 298205, 298205, 3133, 3133, // #6888
+ 2, 298217, 298217, 2041, 2041, // #6889
+ 1, 298239, 298239, 3135, 3135, // #6890
+ 3, 298268, 298268, 2044, 2044, // #6891
+ 1, 298275, 298275, 3139, 3139, // #6892
+ 4, 298288, 298288, 2048, 2048, // #6893
+ 1, 298309, 298309, 3141, 3141, // #6894
+ 4, 298325, 298325, 2053, 2053, // #6895
+ 2, 298346, 298346, 2202, 2202, // #6896
+ 2, 298362, 298362, 2202, 2202, // #6897
+ 7, 298377, 298377, 3641, 3641, // #6898
+ 6, 298401, 298401, 3649, 3649, // #6899
+ 5, 298420, 298420, 1860, 1860, // #6900
+ 10, 298432, 298432, 1872, 1872, // #6901
+ 9, 298454, 298454, 1894, 1894, // #6902
+ 9, 298510, 298510, 1726, 1726, // #6903
+ 5, 298536, 298536, 2840, 2840, // #6904
+ 2, 298552, 298552, 3656, 3656, // #6905
+ 3, 298566, 298566, 358, 358, // #6906
+ 36, 298632, 298632, 568, 568, // #6907
+ 1, 298683, 298683, 3131, 3131, // #6908
+ 2, 298694, 298694, 2038, 2038, // #6909
+ 1, 298717, 298717, 3133, 3133, // #6910
+ 2, 298729, 298729, 2041, 2041, // #6911
+ 1, 298751, 298751, 3135, 3135, // #6912
+ 3, 298780, 298780, 2044, 2044, // #6913
+ 1, 298787, 298787, 3139, 3139, // #6914
+ 4, 298800, 298800, 2048, 2048, // #6915
+ 1, 298821, 298821, 3141, 3141, // #6916
+ 4, 298837, 298837, 2053, 2053, // #6917
+ 2, 298858, 298858, 2202, 2202, // #6918
+ 2, 298874, 298874, 2202, 2202, // #6919
+ 2, 298890, 298890, 2202, 2202, // #6920
+ 2, 298906, 298906, 2202, 2202, // #6921
+ 2, 298922, 298922, 2202, 2202, // #6922
+ 7, 298937, 298937, 3641, 3641, // #6923
+ 6, 298961, 298961, 3649, 3649, // #6924
+ 14, 298985, 298985, 1929, 1929, // #6925
+ 5, 299011, 299011, 563, 563, // #6926
+ 3, 299024, 299024, 832, 832, // #6927
+ 8, 299048, 299048, 2808, 2808, // #6928
+ 16, 299072, 299072, 880, 880, // #6929
+ 6, 299104, 299104, 2800, 2800, // #6930
+ 19, 299125, 299125, 101, 101, // #6931
+ 2, 299162, 299162, 2202, 2202, // #6932
+ 7, 299175, 299175, 487, 487, // #6933
+ 4, 299194, 299194, 410, 410, // #6934
+ 5, 299215, 299215, 415, 415, // #6935
+ 2, 299242, 299242, 2202, 2202, // #6936
+ 7, 299255, 299255, 487, 487, // #6937
+ 4, 299274, 299274, 410, 410, // #6938
+ 5, 299295, 299295, 415, 415, // #6939
+ 5, 299320, 299320, 856, 856, // #6940
+ 2, 299336, 299336, 3656, 3656, // #6941
+ 3, 299350, 299350, 358, 358, // #6942
+ 36, 299400, 299400, 568, 568, // #6943
+ 1, 299451, 299451, 3131, 3131, // #6944
+ 2, 299462, 299462, 2038, 2038, // #6945
+ 1, 299485, 299485, 3133, 3133, // #6946
+ 2, 299497, 299497, 2041, 2041, // #6947
+ 1, 299519, 299519, 3135, 3135, // #6948
+ 3, 299548, 299548, 2044, 2044, // #6949
+ 1, 299555, 299555, 3139, 3139, // #6950
+ 4, 299568, 299568, 2048, 2048, // #6951
+ 1, 299589, 299589, 3141, 3141, // #6952
+ 4, 299605, 299605, 2053, 2053, // #6953
+ 2, 299626, 299626, 2202, 2202, // #6954
+ 2, 299642, 299642, 2202, 2202, // #6955
+ 2, 299658, 299658, 2202, 2202, // #6956
+ 2, 299674, 299674, 2202, 2202, // #6957
+ 2, 299690, 299690, 2202, 2202, // #6958
+ 2, 299706, 299706, 2202, 2202, // #6959
+ 7, 299721, 299721, 3641, 3641, // #6960
+ 6, 299745, 299745, 3649, 3649, // #6961
+ 30, 299760, 299760, 800, 800, // #6962
+ 6, 299804, 299804, 3308, 3308, // #6963
+ 6, 299836, 299836, 3308, 3308, // #6964
+ 6, 299868, 299868, 3308, 3308, // #6965
+ 6, 299900, 299900, 3308, 3308, // #6966
+ 6, 299932, 299932, 3308, 3308, // #6967
+ 1, 299960, 299960, 2760, 2760, // #6968
+ 6, 299980, 299980, 3308, 3308, // #6969
+ 6, 300012, 300012, 3308, 3308, // #6970
+ 6, 300044, 300044, 3308, 3308, // #6971
+ 9, 300110, 300110, 1726, 1726, // #6972
+ 6, 300140, 300140, 3308, 3308, // #6973
+ 9, 300174, 300174, 1726, 1726, // #6974
+ 6, 300204, 300204, 3308, 3308, // #6975
+ 6, 300236, 300236, 3308, 3308, // #6976
+ 15, 300266, 300266, 2378, 2378, // #6977
+ 4, 300293, 300293, 3269, 3269, // #6978
+ 5, 300307, 300307, 563, 563, // #6979
+ 3, 300320, 300320, 1136, 1136, // #6980
+ 15, 300351, 300351, 4015, 4015, // #6981
+ 4, 300373, 300373, 3269, 3269, // #6982
+ 5, 300387, 300387, 563, 563, // #6983
+ 22, 300428, 300428, 3564, 3564, // #6984
+ 24, 300467, 300467, 3587, 3587, // #6985
+ 24, 300504, 300504, 4008, 4008, // #6986
+ 28, 300544, 300544, 3040, 3040, // #6987
+ 20, 300618, 300618, 3002, 3002, // #6988
+ 14, 300640, 300640, 288, 288, // #6989
+ 9, 300663, 300663, 3639, 3639, // #6990
+ 19, 300689, 300689, 3649, 3649, // #6991
+ 6, 300725, 300725, 3669, 3669, // #6992
+ 18, 300748, 300748, 3676, 3676, // #6993
+ 16, 300783, 300783, 3695, 3695, // #6994
+ 9, 300807, 300807, 3639, 3639, // #6995
+ 8, 300832, 300832, 3712, 3712, // #6996
+ 6, 300853, 300853, 3669, 3669, // #6997
+ 6, 300873, 300873, 3721, 3721, // #6998
+ 6, 300885, 300885, 3669, 3669, // #6999
+ 6, 300896, 300896, 3728, 3728, // #7000
+ 8, 300919, 300919, 3735, 3735, // #7001
+ 10, 300928, 300928, 3744, 3744, // #7002
+ 12, 300955, 300955, 3755, 3755, // #7003
+ 9, 301000, 301000, 3768, 3768, // #7004
+ 6, 301029, 301029, 3669, 3669, // #7005
+ 8, 301042, 301042, 3778, 3778, // #7006
+ 19, 301057, 301057, 3649, 3649, // #7007
+ 6, 301093, 301093, 3669, 3669, // #7008
+ 11, 301115, 301115, 3787, 3787, // #7009
+ 11, 301143, 301143, 3799, 3799, // #7010
+ 12, 301171, 301171, 3811, 3811, // #7011
+ 18, 301196, 301196, 3676, 3676, // #7012
+ 16, 301231, 301231, 3695, 3695, // #7013
+ 9, 301248, 301248, 3824, 3824, // #7014
+ 6, 301269, 301269, 3669, 3669, // #7015
+ 18, 301292, 301292, 3676, 3676, // #7016
+ 16, 301327, 301327, 3695, 3695, // #7017
+ 19, 301386, 301386, 3834, 3834, // #7018
+ 19, 301409, 301409, 3649, 3649, // #7019
+ 16, 301453, 301453, 3901, 3901, // #7020
+ 6, 301477, 301477, 3669, 3669, // #7021
+ 18, 301500, 301500, 3676, 3676, // #7022
+ 16, 301535, 301535, 3695, 3695, // #7023
+ 19, 301553, 301553, 3649, 3649, // #7024
+ 5, 301598, 301598, 3918, 3918, // #7025
+ 19, 301617, 301617, 3649, 3649, // #7026
+ 5, 301662, 301662, 3918, 3918, // #7027
+ 4, 301684, 301684, 3924, 3924, // #7028
+ 18, 301708, 301708, 3676, 3676, // #7029
+ 16, 301743, 301743, 3695, 3695, // #7030
+ 11, 301769, 301769, 3929, 3929, // #7031
+ 19, 301793, 301793, 3649, 3649, // #7032
+ 18, 301829, 301829, 3941, 3941, // #7033
+ 7, 301864, 301864, 3960, 3960, // #7034
+ 11, 301881, 301881, 3929, 3929, // #7035
+ 7, 301912, 301912, 3960, 3960, // #7036
+ 19, 301921, 301921, 3649, 3649, // #7037
+ 18, 301964, 301964, 3676, 3676, // #7038
+ 16, 301999, 301999, 3695, 3695, // #7039
+ 6, 302021, 302021, 3669, 3669, // #7040
+ 12, 302032, 302032, 3968, 3968, // #7041
+ 19, 302049, 302049, 3649, 3649, // #7042
+ 10, 302093, 302093, 3981, 3981, // #7043
+ 19, 302113, 302113, 3649, 3649, // #7044
+ 11, 302152, 302152, 3992, 3992, // #7045
+ 6, 302181, 302181, 3669, 3669, // #7046
+ 6, 302192, 302192, 128, 128, // #7047
+ 6, 302208, 302208, 3776, 3776, // #7048
+ 7, 302224, 302224, 1440, 1440, // #7049
+ 7, 302240, 302240, 32, 32, // #7050
+ 13, 302280, 302280, 2680, 2680, // #7051
+ 7, 302313, 302313, 3641, 3641, // #7052
+ 6, 302337, 302337, 3649, 3649, // #7053
+ 12, 302415, 302415, 2111, 2111, // #7054
+ 14, 302472, 302472, 2680, 2680, // #7055
+ 13, 302504, 302504, 792, 792, // #7056
+ 7, 302537, 302537, 3641, 3641, // #7057
+ 6, 302561, 302561, 3649, 3649, // #7058
+ 22, 302579, 302579, 35, 35, // #7059
+ 14, 302616, 302616, 792, 792, // #7060
+ 13, 302648, 302648, 2536, 2536, // #7061
+ 7, 302681, 302681, 3641, 3641, // #7062
+ 6, 302705, 302705, 3649, 3649, // #7063
+ 9, 302729, 302729, 105, 105, // #7064
+ 13, 302760, 302760, 2760, 2760, // #7065
+ 7, 302793, 302793, 3641, 3641, // #7066
+ 6, 302817, 302817, 3649, 3649, // #7067
+ 13, 302836, 302836, 148, 148, // #7068
+ 9, 302920, 302920, 3576, 3576, // #7069
+ 1, 302946, 302946, 4018, 4018, // #7070
+ 8, 302964, 302964, 3492, 3492, // #7071
+ 6, 302976, 302976, 3600, 3600, // #7072
+ 8, 302996, 302996, 3492, 3492, // #7073
+ 6, 303008, 303008, 112, 112, // #7074
+ 8, 303028, 303028, 3492, 3492, // #7075
+ 6, 303040, 303040, 1184, 1184, // #7076
+ 8, 303060, 303060, 3492, 3492, // #7077
+ 6, 303080, 303080, 408, 408, // #7078
+ 8, 303092, 303092, 3492, 3492, // #7079
+ 6, 303104, 303104, 448, 448, // #7080
+ 8, 303124, 303124, 3492, 3492, // #7081
+ 6, 303144, 303144, 488, 488, // #7082
+ 8, 303156, 303156, 3492, 3492, // #7083
+ 6, 303168, 303168, 528, 528, // #7084
+ 8, 303188, 303188, 3492, 3492, // #7085
+ 6, 303208, 303208, 568, 568, // #7086
+ 9, 303240, 303240, 3576, 3576, // #7087
+ 1, 303264, 303264, 1808, 1808, // #7088
+ 1, 303282, 303282, 4018, 4018, // #7089
+ 8, 303300, 303300, 3492, 3492, // #7090
+ 6, 303312, 303312, 64, 64, // #7091
+ 8, 303332, 303332, 3492, 3492, // #7092
+ 6, 303352, 303352, 984, 984, // #7093
+ 8, 303364, 303364, 3492, 3492, // #7094
+ 6, 303376, 303376, 1184, 1184, // #7095
+ 8, 303396, 303396, 3492, 3492, // #7096
+ 6, 303416, 303416, 2824, 2824, // #7097
+ 8, 303428, 303428, 3492, 3492, // #7098
+ 6, 303448, 303448, 3000, 3000, // #7099
+ 8, 303460, 303460, 3492, 3492, // #7100
+ 6, 303480, 303480, 3176, 3176, // #7101
+ 8, 303492, 303492, 3492, 3492, // #7102
+ 6, 303512, 303512, 888, 888, // #7103
+ 8, 303524, 303524, 3492, 3492, // #7104
+ 6, 303544, 303544, 1016, 1016, // #7105
+ 12, 303554, 303554, 3586, 3586, // #7106
+ 1, 303570, 303570, 4018, 4018, // #7107
+ 8, 303588, 303588, 3492, 3492, // #7108
+ 6, 303608, 303608, 1928, 1928, // #7109
+ 8, 303620, 303620, 3492, 3492, // #7110
+ 6, 303632, 303632, 64, 64, // #7111
+ 8, 303652, 303652, 3492, 3492, // #7112
+ 6, 303672, 303672, 4040, 4040, // #7113
+ 8, 303684, 303684, 3492, 3492, // #7114
+ 6, 303696, 303696, 208, 208, // #7115
+ 8, 303716, 303716, 3492, 3492, // #7116
+ 6, 303728, 303728, 1760, 1760, // #7117
+ 8, 303748, 303748, 3492, 3492, // #7118
+ 6, 303768, 303768, 1960, 1960, // #7119
+ 8, 303780, 303780, 3492, 3492, // #7120
+ 6, 303792, 303792, 2160, 2160, // #7121
+ 8, 303812, 303812, 3492, 3492, // #7122
+ 6, 303824, 303824, 3712, 3712, // #7123
+ 8, 303840, 303840, 2224, 2224, // #7124
+ 16, 303856, 303856, 1360, 1360, // #7125
+ 9, 303893, 303893, 2005, 2005, // #7126
+ 30, 303912, 303912, 392, 392, // #7127
+ 5, 303954, 303954, 2978, 2978, // #7128
+ 5, 303978, 303978, 2042, 2042, // #7129
+ 40, 304000, 304000, 3376, 3376, // #7130
+ 47, 304076, 304076, 3420, 3420, // #7131
+ 10, 304136, 304136, 520, 520, // #7132
+ 12, 304173, 304173, 461, 461, // #7133
+ 13, 304200, 304200, 408, 408, // #7134
+ 7, 304233, 304233, 3641, 3641, // #7135
+ 6, 304257, 304257, 3649, 3649, // #7136
+ 16, 304280, 304280, 2024, 2024, // #7137
+ 14, 304312, 304312, 408, 408, // #7138
+ 13, 304344, 304344, 920, 920, // #7139
+ 7, 304377, 304377, 3641, 3641, // #7140
+ 6, 304401, 304401, 3649, 3649, // #7141
+ 24, 304448, 304448, 1968, 1968, // #7142
+ 92, 304520, 304520, 1880, 1880, // #7143
+ 24, 304640, 304640, 1968, 1968, // #7144
+ 2, 304682, 304682, 2202, 2202, // #7145
+ 37, 304688, 304688, 2816, 2816, // #7146
+ 2, 304744, 304744, 3656, 3656, // #7147
+ 3, 304758, 304758, 358, 358, // #7148
+ 36, 304776, 304776, 568, 568, // #7149
+ 1, 304827, 304827, 3131, 3131, // #7150
+ 2, 304838, 304838, 2038, 2038, // #7151
+ 1, 304861, 304861, 3133, 3133, // #7152
+ 2, 304873, 304873, 2041, 2041, // #7153
+ 1, 304895, 304895, 3135, 3135, // #7154
+ 3, 304924, 304924, 2044, 2044, // #7155
+ 1, 304931, 304931, 3139, 3139, // #7156
+ 4, 304944, 304944, 2048, 2048, // #7157
+ 1, 304965, 304965, 3141, 3141, // #7158
+ 4, 304981, 304981, 2053, 2053, // #7159
+ 2, 305002, 305002, 2202, 2202, // #7160
+ 13, 305008, 305008, 1280, 1280, // #7161
+ 7, 305033, 305033, 3641, 3641, // #7162
+ 6, 305057, 305057, 3649, 3649, // #7163
+ 13, 305073, 305073, 2145, 2145, // #7164
+ 14, 305088, 305088, 1280, 1280, // #7165
+ 13, 305104, 305104, 784, 784, // #7166
+ 7, 305129, 305129, 3641, 3641, // #7167
+ 6, 305153, 305153, 3649, 3649, // #7168
+ 6, 305168, 305168, 128, 128, // #7169
+ 6, 305184, 305184, 3776, 3776, // #7170
+ 7, 305200, 305200, 1440, 1440, // #7171
+ 7, 305216, 305216, 32, 32, // #7172
+ 24, 305232, 305232, 2592, 2592, // #7173
+ 7, 305264, 305264, 1440, 1440, // #7174
+ 7, 305280, 305280, 32, 32, // #7175
+ 4, 305307, 305307, 1099, 1099, // #7176
+ 4, 305323, 305323, 1099, 1099, // #7177
+ 4, 305328, 305328, 3728, 3728, // #7178
+ 4, 305353, 305353, 2729, 2729, // #7179
+ 22, 305419, 305419, 555, 555, // #7180
+ 40, 305472, 305472, 3376, 3376, // #7181
+ 47, 305548, 305548, 3420, 3420, // #7182
+ 4, 305600, 305600, 3728, 3728, // #7183
+ 4, 305625, 305625, 2729, 2729, // #7184
+ 22, 305675, 305675, 555, 555, // #7185
+ 40, 305728, 305728, 3376, 3376, // #7186
+ 47, 305804, 305804, 3420, 3420, // #7187
+ 4, 305856, 305856, 3728, 3728, // #7188
+ 4, 305881, 305881, 2729, 2729, // #7189
+ 22, 305931, 305931, 555, 555, // #7190
+ 40, 305984, 305984, 3376, 3376, // #7191
+ 47, 306060, 306060, 3420, 3420, // #7192
+ 8, 306122, 306122, 3546, 3546, // #7193
+ 3, 306144, 306144, 3440, 3440, // #7194
+ 3, 306174, 306174, 2734, 2734, // #7195
+ 10, 306192, 306192, 2416, 2416, // #7196
+ 40, 306240, 306240, 3376, 3376, // #7197
+ 47, 306316, 306316, 3420, 3420, // #7198
+ 9, 306371, 306371, 3555, 3555, // #7199
+ 3, 306392, 306392, 2008, 2008, // #7200
+ 3, 306414, 306414, 2734, 2734, // #7201
+ 11, 306440, 306440, 1608, 1608, // #7202
+ 40, 306496, 306496, 3376, 3376, // #7203
+ 47, 306572, 306572, 3420, 3420, // #7204
+ 4, 306624, 306624, 3456, 3456, // #7205
+ 6, 306645, 306645, 3461, 3461, // #7206
+ 6, 306668, 306668, 3468, 3468, // #7207
+ 6, 306691, 306691, 3475, 3475, // #7208
+ 8, 306714, 306714, 3482, 3482, // #7209
+ 13, 306740, 306740, 1572, 1572, // #7210
+ 1, 306770, 306770, 4018, 4018, // #7211
+ 8, 306788, 306788, 3492, 3492, // #7212
+ 6, 306808, 306808, 216, 216, // #7213
+ 8, 306820, 306820, 3492, 3492, // #7214
+ 6, 306840, 306840, 2216, 2216, // #7215
+ 8, 306852, 306852, 3492, 3492, // #7216
+ 6, 306872, 306872, 952, 952, // #7217
+ 8, 306884, 306884, 3492, 3492, // #7218
+ 6, 306896, 306896, 2608, 2608, // #7219
+ 8, 306916, 306916, 3492, 3492, // #7220
+ 6, 306936, 306936, 616, 616, // #7221
+ 8, 306948, 306948, 3492, 3492, // #7222
+ 6, 306968, 306968, 3752, 3752, // #7223
+ 8, 306980, 306980, 3492, 3492, // #7224
+ 6, 306992, 306992, 384, 384, // #7225
+ 8, 307012, 307012, 3492, 3492, // #7226
+ 6, 307032, 307032, 424, 424, // #7227
+ 1, 307042, 307042, 4018, 4018, // #7228
+ 1, 307058, 307058, 4018, 4018, // #7229
+ 8, 307076, 307076, 3492, 3492, // #7230
+ 6, 307096, 307096, 3752, 3752, // #7231
+ 8, 307108, 307108, 3492, 3492, // #7232
+ 6, 307128, 307128, 2216, 2216, // #7233
+ 8, 307140, 307140, 3492, 3492, // #7234
+ 6, 307152, 307152, 1408, 1408, // #7235
+ 8, 307172, 307172, 3492, 3492, // #7236
+ 6, 307192, 307192, 1448, 1448, // #7237
+ 8, 307204, 307204, 3492, 3492, // #7238
+ 6, 307216, 307216, 1488, 1488, // #7239
+ 8, 307236, 307236, 3492, 3492, // #7240
+ 6, 307256, 307256, 1528, 1528, // #7241
+ 8, 307268, 307268, 3492, 3492, // #7242
+ 6, 307280, 307280, 1568, 1568, // #7243
+ 8, 307300, 307300, 3492, 3492, // #7244
+ 6, 307320, 307320, 1608, 1608, // #7245
+ 1, 307330, 307330, 4018, 4018, // #7246
+ 1, 307346, 307346, 4018, 4018, // #7247
+ 1, 307360, 307360, 1072, 1072, // #7248
+ 1, 307378, 307378, 4018, 4018, // #7249
+ 8, 307396, 307396, 3492, 3492, // #7250
+ 6, 307416, 307416, 3208, 3208, // #7251
+ 8, 307428, 307428, 3492, 3492, // #7252
+ 6, 307448, 307448, 392, 392, // #7253
+ 8, 307460, 307460, 3492, 3492, // #7254
+ 6, 307472, 307472, 3568, 3568, // #7255
+ 8, 307492, 307492, 3492, 3492, // #7256
+ 6, 307504, 307504, 496, 496, // #7257
+ 8, 307524, 307524, 3492, 3492, // #7258
+ 6, 307536, 307536, 2784, 2784, // #7259
+ 8, 307556, 307556, 3492, 3492, // #7260
+ 6, 307576, 307576, 2120, 2120, // #7261
+ 8, 307588, 307588, 3492, 3492, // #7262
+ 6, 307608, 307608, 2056, 2056, // #7263
+ 8, 307620, 307620, 3492, 3492, // #7264
+ 6, 307640, 307640, 1656, 1656, // #7265
+ 1, 307650, 307650, 4018, 4018, // #7266
+ 1, 307666, 307666, 4018, 4018, // #7267
+ 1, 307682, 307682, 4018, 4018, // #7268
+ 4, 307706, 307706, 2730, 2730, // #7269
+ 4, 307727, 307727, 2735, 2735, // #7270
+ 2, 307754, 307754, 2202, 2202, // #7271
+ 2, 307770, 307770, 2202, 2202, // #7272
+ 2, 307786, 307786, 2202, 2202, // #7273
+ 4, 307802, 307802, 2730, 2730, // #7274
+ 4, 307823, 307823, 2735, 2735, // #7275
+ 4, 307850, 307850, 2730, 2730, // #7276
+ 4, 307871, 307871, 2735, 2735, // #7277
+ 4, 307898, 307898, 2730, 2730, // #7278
+ 4, 307919, 307919, 2735, 2735, // #7279
+ 4, 307946, 307946, 2730, 2730, // #7280
+ 4, 307967, 307967, 2735, 2735, // #7281
+ 1, 307988, 307988, 1876, 1876, // #7282
+ 8, 308004, 308004, 2740, 2740, // #7283
+ 10, 308045, 308045, 2749, 2749, // #7284
+ 1, 308068, 308068, 1876, 1876, // #7285
+ 1, 308084, 308084, 1876, 1876, // #7286
+ 8, 308100, 308100, 2740, 2740, // #7287
+ 10, 308173, 308173, 2749, 2749, // #7288
+ 1, 308196, 308196, 1876, 1876, // #7289
+ 4, 308208, 308208, 3728, 3728, // #7290
+ 4, 308233, 308233, 2729, 2729, // #7291
+ 22, 308299, 308299, 555, 555, // #7292
+ 40, 308352, 308352, 3376, 3376, // #7293
+ 47, 308428, 308428, 3420, 3420, // #7294
+ 4, 308480, 308480, 3728, 3728, // #7295
+ 4, 308505, 308505, 2729, 2729, // #7296
+ 22, 308555, 308555, 555, 555, // #7297
+ 40, 308608, 308608, 3376, 3376, // #7298
+ 47, 308684, 308684, 3420, 3420, // #7299
+ 1, 308738, 308738, 4018, 4018, // #7300
+ 1, 308754, 308754, 4018, 4018, // #7301
+ 1, 308770, 308770, 4018, 4018, // #7302
+ 1, 308786, 308786, 4018, 4018, // #7303
+ 4, 308810, 308810, 2730, 2730, // #7304
+ 4, 308831, 308831, 2735, 2735, // #7305
+ 4, 308858, 308858, 2730, 2730, // #7306
+ 4, 308879, 308879, 2735, 2735, // #7307
+ 4, 308906, 308906, 2730, 2730, // #7308
+ 4, 308927, 308927, 2735, 2735, // #7309
+ 4, 308954, 308954, 2730, 2730, // #7310
+ 4, 308975, 308975, 2735, 2735, // #7311
+ 4, 309002, 309002, 2730, 2730, // #7312
+ 4, 309023, 309023, 2735, 2735, // #7313
+ 1, 309042, 309042, 4018, 4018, // #7314
+ 1, 309058, 309058, 4018, 4018, // #7315
+ 1, 309074, 309074, 4018, 4018, // #7316
+ 1, 309090, 309090, 4018, 4018, // #7317
+ 1, 309106, 309106, 4018, 4018, // #7318
+ 1, 309122, 309122, 4018, 4018, // #7319
+ 1, 309138, 309138, 4018, 4018, // #7320
+ 1, 309154, 309154, 4018, 4018, // #7321
+ 1, 309170, 309170, 4018, 4018, // #7322
+ 1, 309186, 309186, 4018, 4018, // #7323
+ 1, 309202, 309202, 4018, 4018, // #7324
+ 1, 309218, 309218, 4018, 4018, // #7325
+ 1, 309234, 309234, 4018, 4018, // #7326
+ 1, 309250, 309250, 4018, 4018, // #7327
+ 1, 309266, 309266, 4018, 4018, // #7328
+ 8, 309290, 309290, 3546, 3546, // #7329
+ 9, 309315, 309315, 3555, 3555, // #7330
+ 22, 309336, 309336, 3400, 3400, // #7331
+};
+
+struct StringData fromLatin1Data = {
+ intData,
+ { charData },
+ 7332, /* entryCount */
+ 119 /* maxLength */
+};
+
+// average comparison length: 17.8291
+// cache-line crosses: 2902 (19.8%)
+// alignment histogram:
+// 0xXXX0 = 3786 (25.8%) strings, 1893 (50.0%) of which same-aligned
+// 0xXXX1 = 300 (2.0%) strings, 150 (50.0%) of which same-aligned
+// 0xXXX2 = 430 (2.9%) strings, 215 (50.0%) of which same-aligned
+// 0xXXX3 = 326 (2.2%) strings, 163 (50.0%) of which same-aligned
+// 0xXXX4 = 450 (3.1%) strings, 225 (50.0%) of which same-aligned
+// 0xXXX5 = 292 (2.0%) strings, 146 (50.0%) of which same-aligned
+// 0xXXX6 = 220 (1.5%) strings, 110 (50.0%) of which same-aligned
+// 0xXXX7 = 806 (5.5%) strings, 403 (50.0%) of which same-aligned
+// 0xXXX8 = 1748 (11.9%) strings, 874 (50.0%) of which same-aligned
+// 0xXXX9 = 326 (2.2%) strings, 163 (50.0%) of which same-aligned
+// 0xXXXa = 320 (2.2%) strings, 160 (50.0%) of which same-aligned
+// 0xXXXb = 250 (1.7%) strings, 125 (50.0%) of which same-aligned
+// 0xXXXc = 2506 (17.1%) strings, 1253 (50.0%) of which same-aligned
+// 0xXXXd = 1128 (7.7%) strings, 564 (50.0%) of which same-aligned
+// 0xXXXe = 1400 (9.5%) strings, 700 (50.0%) of which same-aligned
+// 0xXXXf = 376 (2.6%) strings, 188 (50.0%) of which same-aligned
+// total = 14664 (100%) strings, 7332 (50.0%) of which same-aligned
diff --git a/tests/benchmarks/corelib/tools/qstring/fromutf8.cpp b/tests/benchmarks/corelib/tools/qstring/fromutf8.cpp
new file mode 100644
index 0000000000..48106dce87
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/fromutf8.cpp
@@ -0,0 +1,28567 @@
+// This is a generated file - DO NOT EDIT
+
+#include "data.h"
+
+static const char charData[] __attribute__((aligned(64))) = {
+ // #0
+ "\377\376\375\374\373\372\371\370"
+ "The KDE Crash Handler"
+ "\377\376\375" // 32
+
+ // #1
+ "bieker@kde.org"
+ "\377\376" // 48
+
+ // #3
+ "andresbajotierra@gmail.com"
+ "\377\376\375\374\373\372" // 80
+
+ // #5
+ "gkiagia@users.sourceforge.net"
+ "\377\376\375" // 112
+
+ // #7
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "spehr@kde.org"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 160+
+
+ // #54
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 176
+
+ // #55
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 192
+
+ // #56
+ "\377\376\375\374\373\372\371\370"
+ "/var/lib/mandriva/kde4-profiles/common,/var/lib/mandriva/kde4-profiles/powerpack"
+ "\377\376\375\374\373\372\371\370" // 288+
+
+ // #57
+ "prefixes"
+ "\377\376\375\374\373\372\371\370" // 304
+
+ // #58
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "/var/lib/mandriva/kde4-profiles/common,/var/lib/mandriva/kde4-profiles/powerpack"
+ "\377\376\375\374\373\372\371\370" // 416+
+
+ // #59
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "KDE Resource Restrictions"
+ "\377\376\375\374\373\372\371" // 480+
+
+ // #60
+ "\377\376\375\374\373\372\371\370"
+ "oxygen"
+ "\377\376" // 496
+
+ // #61
+ "\377\376\375\374\373\372\371\370"
+ "oxygen"
+ "\377\376" // 512
+
+ // #62
+ "\377\376\375\374\373\372\371\370"
+ "/var/lib/mandriva/kde4-profiles/common,/var/lib/mandriva/kde4-profiles/powerpack"
+ "\377\376\375\374\373\372\371\370" // 608+
+
+ // #63
+ "prefixes"
+ "\377\376\375\374\373\372\371\370" // 624
+
+ // #64
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "/var/lib/mandriva/kde4-profiles/common,/var/lib/mandriva/kde4-profiles/powerpack"
+ "\377\376\375\374\373\372\371\370" // 736+
+
+ // #65
+ "KDE Resource Restrictions"
+ "\377\376\375\374\373\372\371" // 768
+
+ // #66
+ "\377\376\375\374\373\372\371\370"
+ "Oxygen ( style )"
+ "\377\376\375\374\373\372\371\370" // 800
+
+ // #67
+ ":1.1920"
+ "\377\376\375\374\373\372\371\370\367" // 816
+
+ // #68
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 832
+
+ // #69
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 848
+
+ // #70
+ "none"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 864
+
+ // #71
+ "\377\376\375\374\373\372\371\370"
+ "togamma"
+ "\377" // 880
+
+ // #72
+ "togray"
+ "\377\376\375\374\373\372\371\370\367\366" // 896
+
+ // #73
+ "none"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 912
+
+ // #74
+ "none"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 928
+
+ // #75
+ "togray"
+ "\377\376\375\374\373\372\371\370\367\366" // 944
+
+ // #76
+ "\377\376\375\374\373\372\371\370"
+ "none"
+ "\377\376\375\374" // 960
+
+ // #77
+ "\377\376\375\374\373\372\371\370"
+ "none"
+ "\377\376\375\374" // 976
+
+ // #78
+ "\377\376\375\374\373\372\371\370"
+ "togray"
+ "\377\376" // 992
+
+ // #79
+ "none"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 1008
+
+ // #80
+ "none"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 1024
+
+ // #81
+ "togray"
+ "\377\376\375\374\373\372\371\370\367\366" // 1040
+
+ // #82
+ "\377\376\375\374\373\372\371\370"
+ "none"
+ "\377\376\375\374" // 1056
+
+ // #83
+ "togamma"
+ "\377\376\375\374\373\372\371\370\367" // 1072
+
+ // #84
+ "\377\376\375\374\373\372\371\370"
+ "togray"
+ "\377\376" // 1088
+
+ // #85
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 1104
+
+ // #86
+ "\377\376\375\374\373\372\371\370"
+ "Oxygen"
+ "\377\376" // 1120
+
+ // #87
+ "\377\376\375\374\373\372\371\370"
+ "Oxygen Team"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 1152
+
+ // #88
+ "hicolor"
+ "\377\376\375\374\373\372\371\370\367" // 1168
+
+ // #89
+ "\377\376\375\374\373\372\371\370"
+ "folder"
+ "\377\376" // 1184
+
+ // #90
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "8x8/emblems,16x16/actions,16x16/animations,16x16/apps,16x16/categories,16x16/devices,16x16/emblems,16x16/emotes,16x16/intl,16x16/mimetypes,16x16/places,16x16/status,22x22/actions,22x22/animations,22x22/apps,22x22/categories,22x22/devices,22x22/emblems,22x22/emotes,22x22/intl,22x22/mimetypes,22x22/places,22x22/status,32x32/actions,32x32/animations,32x32/apps,32x32/categories,32x32/devices,32x32/emblems,32x32/emotes,32x32/intl,32x32/mimetypes,32x32/places,32x32/status,48x48/actions,48x48/animations,48x48/apps,48x48/categories,48x48/devices,48x48/emblems,48x48/emotes,48x48/intl,48x48/mimetypes,48x48/places,48x48/status,64x64/actions,64x64/animations,64x64/apps,64x64/categories,64x64/devices,64x64/emblems,64x64/emotes,64x64/intl,64x64/mimetypes,64x64/places,64x64/status,128x128/actions,128x128/animations,128x128/apps,128x128/categories,128x128/devices,128x128/emblems,128x128/emotes,128x128/intl,128x128/mimetypes,128x128/places,128x128/status,256x256/actions,256x256/apps,256x256/categories,256x256/devices,256x256/mimetypes,256x256/places,256x256/status"
+ "\377\376\375\374\373\372\371\370\367" // 2288+
+
+ // #91
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 2304
+
+ // #92
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2320
+
+ // #93
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 2336
+
+ // #94
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2352
+
+ // #95
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 2368
+
+ // #96
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2400+
+
+ // #97
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 2416
+
+ // #98
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2464+
+
+ // #99
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 2496
+
+ // #100
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2528
+
+ // #101
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 2560
+
+ // #102
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2592
+
+ // #103
+ "Applications"
+ "\377\376\375\374" // 2608
+
+ // #104
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2624
+
+ // #105
+ "Applications"
+ "\377\376\375\374" // 2640
+
+ // #106
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2656
+
+ // #107
+ "Categories"
+ "\377\376\375\374\373\372" // 2672
+
+ // #108
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2688
+
+ // #109
+ "Categories"
+ "\377\376\375\374\373\372" // 2704
+
+ // #110
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2720
+
+ // #111
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 2736
+
+ // #112
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2752
+
+ // #113
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 2768
+
+ // #114
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2784
+
+ // #115
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 2800
+
+ // #116
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2816
+
+ // #117
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 2832
+
+ // #118
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2848
+
+ // #119
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 2864
+
+ // #120
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2880
+
+ // #121
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 2896
+
+ // #122
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 2912
+
+ // #123
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 2944
+
+ // #124
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 2976
+
+ // #125
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 3008
+
+ // #126
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3040
+
+ // #127
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 3056
+
+ // #128
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3072
+
+ // #129
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 3088
+
+ // #130
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3104
+
+ // #131
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 3120
+
+ // #132
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3136
+
+ // #133
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 3152
+
+ // #134
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3168
+
+ // #135
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 3184
+
+ // #136
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3200
+
+ // #137
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 3216
+
+ // #138
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3232
+
+ // #139
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 3248
+
+ // #140
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3280
+
+ // #141
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 3296
+
+ // #142
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3328
+
+ // #143
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 3344
+
+ // #144
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3376
+
+ // #145
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 3392
+
+ // #146
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3424
+
+ // #147
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 3456
+
+ // #148
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3488
+
+ // #149
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 3520
+
+ // #150
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3552
+
+ // #151
+ "Applications"
+ "\377\376\375\374" // 3568
+
+ // #152
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3584
+
+ // #153
+ "Applications"
+ "\377\376\375\374" // 3600
+
+ // #154
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3616
+
+ // #155
+ "Categories"
+ "\377\376\375\374\373\372" // 3632
+
+ // #156
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3648
+
+ // #157
+ "Categories"
+ "\377\376\375\374\373\372" // 3664
+
+ // #158
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3680
+
+ // #159
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 3696
+
+ // #160
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3712
+
+ // #161
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 3728
+
+ // #162
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3744
+
+ // #163
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 3760
+
+ // #164
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3776
+
+ // #165
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 3792
+
+ // #166
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3808
+
+ // #167
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 3824
+
+ // #168
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3840
+
+ // #169
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 3856
+
+ // #170
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 3872
+
+ // #171
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 3904
+
+ // #172
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 3936
+
+ // #173
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 3968
+
+ // #174
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4000
+
+ // #175
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 4016
+
+ // #176
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4032
+
+ // #177
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 4048
+
+ // #178
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4064
+
+ // #179
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 4080
+
+ // #180
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4096
+
+ // #181
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 4112
+
+ // #182
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4128
+
+ // #183
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 4144
+
+ // #184
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4160
+
+ // #185
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 4176
+
+ // #186
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4192
+
+ // #187
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 4208
+
+ // #188
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4224
+
+ // #189
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 4240
+
+ // #190
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4256
+
+ // #191
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 4272
+
+ // #192
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4288
+
+ // #193
+ "Animations"
+ "\377\376\375\374\373\372" // 4304
+
+ // #194
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4320
+
+ // #195
+ "Animations"
+ "\377\376\375\374\373\372" // 4336
+
+ // #196
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4352
+
+ // #197
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 4384
+
+ // #198
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4416
+
+ // #199
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 4448
+
+ // #200
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4480
+
+ // #201
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 4512+
+
+ // #202
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4544
+
+ // #203
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 4576+
+
+ // #204
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4608
+
+ // #205
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 4624
+
+ // #206
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4640
+
+ // #207
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 4656
+
+ // #208
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4672
+
+ // #209
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 4688
+
+ // #210
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4704
+
+ // #211
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 4720
+
+ // #212
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4736
+
+ // #213
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 4752
+
+ // #214
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4768
+
+ // #215
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 4784
+
+ // #216
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4800
+
+ // #217
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 4832
+
+ // #218
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4896+
+
+ // #219
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 4928
+
+ // #220
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 4960+
+
+ // #221
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 4976
+
+ // #222
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 4992
+
+ // #223
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 5008
+
+ // #224
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5024
+
+ // #225
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 5040
+
+ // #226
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5056
+
+ // #227
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 5072
+
+ // #228
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5088
+
+ // #229
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 5104
+
+ // #230
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5120
+
+ // #231
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 5136
+
+ // #232
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5152
+
+ // #233
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 5168
+
+ // #234
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5184
+
+ // #235
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 5200
+
+ // #236
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5216
+
+ // #237
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 5232
+
+ // #238
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5248
+
+ // #239
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 5264
+
+ // #240
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5280
+
+ // #241
+ "Animations"
+ "\377\376\375\374\373\372" // 5296
+
+ // #242
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5312
+
+ // #243
+ "Animations"
+ "\377\376\375\374\373\372" // 5328
+
+ // #244
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 5344
+
+ // #245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 5408+
+
+ // #246
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5440
+
+ // #247
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 5472+
+
+ // #248
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5504
+
+ // #249
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 5536
+
+ // #250
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5568
+
+ // #251
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 5600
+
+ // #252
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5632
+
+ // #253
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 5648
+
+ // #254
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5680
+
+ // #255
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 5696
+
+ // #256
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5728
+
+ // #257
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 5744
+
+ // #258
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5776
+
+ // #259
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 5792
+
+ // #260
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5824
+
+ // #261
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 5840
+
+ // #262
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5920+
+
+ // #263
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 5936
+
+ // #264
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 5984+
+
+ // #265
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 6016
+
+ // #266
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6048
+
+ // #267
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 6080
+
+ // #268
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6112
+
+ // #269
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 6128
+
+ // #270
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6144
+
+ // #271
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 6160
+
+ // #272
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6176
+
+ // #273
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 6192
+
+ // #274
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6208
+
+ // #275
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 6224
+
+ // #276
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6240
+
+ // #277
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 6256
+
+ // #278
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6272
+
+ // #279
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 6288
+
+ // #280
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6304
+
+ // #281
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 6320
+
+ // #282
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6336
+
+ // #283
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 6352
+
+ // #284
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6368
+
+ // #285
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 6384
+
+ // #286
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6400
+
+ // #287
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 6416
+
+ // #288
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6432
+
+ // #289
+ "Animations"
+ "\377\376\375\374\373\372" // 6448
+
+ // #290
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6464
+
+ // #291
+ "Animations"
+ "\377\376\375\374\373\372" // 6480
+
+ // #292
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 6496
+
+ // #293
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 6528
+
+ // #294
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6560
+
+ // #295
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 6592
+
+ // #296
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6624
+
+ // #297
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 6656
+
+ // #298
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6688+
+
+ // #299
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 6720
+
+ // #300
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6752+
+
+ // #301
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 6768
+
+ // #302
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6800
+
+ // #303
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 6816
+
+ // #304
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6848
+
+ // #305
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 6864
+
+ // #306
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6896
+
+ // #307
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 6912
+
+ // #308
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6944
+
+ // #309
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 6960
+
+ // #310
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 6992
+
+ // #311
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 7008
+
+ // #312
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7040
+
+ // #313
+ "International"
+ "\377\376\375" // 7056
+
+ // #314
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 7072
+
+ // #315
+ "International"
+ "\377\376\375" // 7088
+
+ // #316
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 7104
+
+ // #317
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7136
+
+ // #318
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7168
+
+ // #319
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7200
+
+ // #320
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7232
+
+ // #321
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7264
+
+ // #322
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7296
+
+ // #323
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 7312
+
+ // #324
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7344
+
+ // #325
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 7360
+
+ // #326
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7392
+
+ // #327
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 7408
+
+ // #328
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7440
+
+ // #329
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 7456
+
+ // #330
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7520+
+
+ // #331
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 7536
+
+ // #332
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7584+
+
+ // #333
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 7600
+
+ // #334
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7632
+
+ // #335
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 7648
+
+ // #336
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7680
+
+ // #337
+ "Animations"
+ "\377\376\375\374\373\372" // 7696
+
+ // #338
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 7712
+
+ // #339
+ "Animations"
+ "\377\376\375\374\373\372" // 7728
+
+ // #340
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 7744
+
+ // #341
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 7776
+
+ // #342
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7808
+
+ // #343
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 7840
+
+ // #344
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7872
+
+ // #345
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 7904+
+
+ // #346
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 7936
+
+ // #347
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 7968+
+
+ // #348
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8000
+
+ // #349
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 8016
+
+ // #350
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8096+
+
+ // #351
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 8112
+
+ // #352
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8160+
+
+ // #353
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 8176
+
+ // #354
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8208
+
+ // #355
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 8224
+
+ // #356
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8256
+
+ // #357
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 8272
+
+ // #358
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8304
+
+ // #359
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 8320
+
+ // #360
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8352
+
+ // #361
+ "International"
+ "\377\376\375" // 8368
+
+ // #362
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8384
+
+ // #363
+ "International"
+ "\377\376\375" // 8400
+
+ // #364
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8416
+
+ // #365
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 8432
+
+ // #366
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8448
+
+ // #367
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 8464
+
+ // #368
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8480
+
+ // #369
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 8496
+
+ // #370
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8512
+
+ // #371
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 8528
+
+ // #372
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8544
+
+ // #373
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 8560
+
+ // #374
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8576
+
+ // #375
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 8592
+
+ // #376
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8608
+
+ // #377
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 8624
+
+ // #378
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8640
+
+ // #379
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 8656
+
+ // #380
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8672
+
+ // #381
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 8688
+
+ // #382
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8704
+
+ // #383
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 8720
+
+ // #384
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 8736
+
+ // #385
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 8768
+
+ // #386
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8800
+
+ // #387
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 8832
+
+ // #388
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8864
+
+ // #389
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 8896
+
+ // #390
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8928+
+
+ // #391
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 8960
+
+ // #392
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 8992+
+
+ // #393
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 9008
+
+ // #394
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9040
+
+ // #395
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 9056
+
+ // #396
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9088
+
+ // #397
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9120+
+
+ // #398
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9152
+
+ // #399
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9184+
+
+ // #400
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9216
+
+ // #401
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 9232
+
+ // #402
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9312+
+
+ // #403
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 9328
+
+ // #404
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9376+
+
+ // #405
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 9392
+
+ // #406
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 9440+
+
+ // #407
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 9456
+
+ // #408
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 9472
+
+ // #409
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 9488
+
+ // #410
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 9504
+
+ // #411
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48,64,128,256"
+ "\377\376" // 9536
+
+ // #412
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 9568+
+
+ // #413
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 9600
+
+ // #414
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 9632
+
+ // #415
+ "16,22,32,48,64,128,256"
+ "\377\376\375\374\373\372\371\370\367\366" // 9664
+
+ // #416
+ "16,22,32,48,64,128,256"
+ "\377\376\375\374\373\372\371\370\367\366" // 9696+
+
+ // #417
+ "\377\376\375\374\373\372\371\370"
+ "Oxygen"
+ "\377\376" // 9712
+
+ // #418
+ "\377\376\375\374\373\372\371\370"
+ "Oxygen Team"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 9744
+
+ // #419
+ "hicolor"
+ "\377\376\375\374\373\372\371\370\367" // 9760
+
+ // #420
+ "\377\376\375\374\373\372\371\370"
+ "folder"
+ "\377\376" // 9776
+
+ // #421
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "8x8/emblems,16x16/actions,16x16/animations,16x16/apps,16x16/categories,16x16/devices,16x16/emblems,16x16/emotes,16x16/intl,16x16/mimetypes,16x16/places,16x16/status,22x22/actions,22x22/animations,22x22/apps,22x22/categories,22x22/devices,22x22/emblems,22x22/emotes,22x22/intl,22x22/mimetypes,22x22/places,22x22/status,32x32/actions,32x32/animations,32x32/apps,32x32/categories,32x32/devices,32x32/emblems,32x32/emotes,32x32/intl,32x32/mimetypes,32x32/places,32x32/status,48x48/actions,48x48/animations,48x48/apps,48x48/categories,48x48/devices,48x48/emblems,48x48/emotes,48x48/intl,48x48/mimetypes,48x48/places,48x48/status,64x64/actions,64x64/animations,64x64/apps,64x64/categories,64x64/devices,64x64/emblems,64x64/emotes,64x64/intl,64x64/mimetypes,64x64/places,64x64/status,128x128/actions,128x128/animations,128x128/apps,128x128/categories,128x128/devices,128x128/emblems,128x128/emotes,128x128/intl,128x128/mimetypes,128x128/places,128x128/status,256x256/actions,256x256/apps,256x256/categories,256x256/devices,256x256/mimetypes,256x256/places,256x256/status"
+ "\377\376\375\374\373\372\371\370\367" // 10864+
+
+ // #422
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 10880
+
+ // #423
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 10896
+
+ // #424
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 10912
+
+ // #425
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 10928
+
+ // #426
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 10944
+
+ // #427
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 10976+
+
+ // #428
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 10992
+
+ // #429
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11040+
+
+ // #430
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 11072
+
+ // #431
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11104
+
+ // #432
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 11136
+
+ // #433
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11168
+
+ // #434
+ "Applications"
+ "\377\376\375\374" // 11184
+
+ // #435
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11200
+
+ // #436
+ "Applications"
+ "\377\376\375\374" // 11216
+
+ // #437
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11232
+
+ // #438
+ "Categories"
+ "\377\376\375\374\373\372" // 11248
+
+ // #439
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11264
+
+ // #440
+ "Categories"
+ "\377\376\375\374\373\372" // 11280
+
+ // #441
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11296
+
+ // #442
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 11312
+
+ // #443
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11328
+
+ // #444
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 11344
+
+ // #445
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11360
+
+ // #446
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 11376
+
+ // #447
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11392
+
+ // #448
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 11408
+
+ // #449
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11424
+
+ // #450
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 11440
+
+ // #451
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11456
+
+ // #452
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 11472
+
+ // #453
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11488
+
+ // #454
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 11520
+
+ // #455
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11552
+
+ // #456
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 11584
+
+ // #457
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11616
+
+ // #458
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 11632
+
+ // #459
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11648
+
+ // #460
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 11664
+
+ // #461
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11680
+
+ // #462
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 11696
+
+ // #463
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11712
+
+ // #464
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 11728
+
+ // #465
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11744
+
+ // #466
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 11760
+
+ // #467
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11776
+
+ // #468
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 11792
+
+ // #469
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 11808
+
+ // #470
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 11824
+
+ // #471
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11856
+
+ // #472
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 11872
+
+ // #473
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11904
+
+ // #474
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 11920
+
+ // #475
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 11952
+
+ // #476
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 11968
+
+ // #477
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12000
+
+ // #478
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 12032
+
+ // #479
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12064
+
+ // #480
+ "\377\376\375\374\373\372\371\370"
+ "Animations"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 12096
+
+ // #481
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12128
+
+ // #482
+ "Applications"
+ "\377\376\375\374" // 12144
+
+ // #483
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12160
+
+ // #484
+ "Applications"
+ "\377\376\375\374" // 12176
+
+ // #485
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12192
+
+ // #486
+ "Categories"
+ "\377\376\375\374\373\372" // 12208
+
+ // #487
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12224
+
+ // #488
+ "Categories"
+ "\377\376\375\374\373\372" // 12240
+
+ // #489
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12256
+
+ // #490
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 12272
+
+ // #491
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12288
+
+ // #492
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 12304
+
+ // #493
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12320
+
+ // #494
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 12336
+
+ // #495
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12352
+
+ // #496
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 12368
+
+ // #497
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12384
+
+ // #498
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 12400
+
+ // #499
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12416
+
+ // #500
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 12432
+
+ // #501
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12448
+
+ // #502
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 12480
+
+ // #503
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12512
+
+ // #504
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 12544
+
+ // #505
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12576
+
+ // #506
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 12592
+
+ // #507
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12608
+
+ // #508
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 12624
+
+ // #509
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12640
+
+ // #510
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 12656
+
+ // #511
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12672
+
+ // #512
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 12688
+
+ // #513
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12704
+
+ // #514
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 12720
+
+ // #515
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12736
+
+ // #516
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 12752
+
+ // #517
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12768
+
+ // #518
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 12784
+
+ // #519
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12800
+
+ // #520
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 12816
+
+ // #521
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12832
+
+ // #522
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 12848
+
+ // #523
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12864
+
+ // #524
+ "Animations"
+ "\377\376\375\374\373\372" // 12880
+
+ // #525
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12896
+
+ // #526
+ "Animations"
+ "\377\376\375\374\373\372" // 12912
+
+ // #527
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 12928
+
+ // #528
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 12960
+
+ // #529
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 12992
+
+ // #530
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 13024
+
+ // #531
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13056
+
+ // #532
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 13088+
+
+ // #533
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13120
+
+ // #534
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 13152+
+
+ // #535
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13184
+
+ // #536
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 13200
+
+ // #537
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13216
+
+ // #538
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 13232
+
+ // #539
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13248
+
+ // #540
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 13264
+
+ // #541
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13280
+
+ // #542
+ "\377\376\375\374\373\372\371\370"
+ "Emblems"
+ "\377" // 13296
+
+ // #543
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13312
+
+ // #544
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 13328
+
+ // #545
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13344
+
+ // #546
+ "\377\376\375\374\373\372\371\370"
+ "Emotes"
+ "\377\376" // 13360
+
+ // #547
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13376
+
+ // #548
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 13408
+
+ // #549
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13472+
+
+ // #550
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 13504
+
+ // #551
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 13536+
+
+ // #552
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 13552
+
+ // #553
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13568
+
+ // #554
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 13584
+
+ // #555
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13600
+
+ // #556
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 13616
+
+ // #557
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13632
+
+ // #558
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 13648
+
+ // #559
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13664
+
+ // #560
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 13680
+
+ // #561
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13696
+
+ // #562
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 13712
+
+ // #563
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13728
+
+ // #564
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 13744
+
+ // #565
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13760
+
+ // #566
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 13776
+
+ // #567
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13792
+
+ // #568
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 13808
+
+ // #569
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13824
+
+ // #570
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 13840
+
+ // #571
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13856
+
+ // #572
+ "Animations"
+ "\377\376\375\374\373\372" // 13872
+
+ // #573
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13888
+
+ // #574
+ "Animations"
+ "\377\376\375\374\373\372" // 13904
+
+ // #575
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 13920
+
+ // #576
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 13984+
+
+ // #577
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14016
+
+ // #578
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 14048+
+
+ // #579
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14080
+
+ // #580
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 14112
+
+ // #581
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14144
+
+ // #582
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 14176
+
+ // #583
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14208
+
+ // #584
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 14224
+
+ // #585
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14256
+
+ // #586
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 14272
+
+ // #587
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14304
+
+ // #588
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 14320
+
+ // #589
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14352
+
+ // #590
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 14368
+
+ // #591
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14400
+
+ // #592
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 14416
+
+ // #593
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14496+
+
+ // #594
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 14512
+
+ // #595
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14560+
+
+ // #596
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 14592
+
+ // #597
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14624
+
+ // #598
+ "\377\376\375\374\373\372\371\370"
+ "International"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 14656
+
+ // #599
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 14688
+
+ // #600
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 14704
+
+ // #601
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14720
+
+ // #602
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 14736
+
+ // #603
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14752
+
+ // #604
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 14768
+
+ // #605
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14784
+
+ // #606
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 14800
+
+ // #607
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14816
+
+ // #608
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 14832
+
+ // #609
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14848
+
+ // #610
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 14864
+
+ // #611
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14880
+
+ // #612
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 14896
+
+ // #613
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14912
+
+ // #614
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 14928
+
+ // #615
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14944
+
+ // #616
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 14960
+
+ // #617
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 14976
+
+ // #618
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 14992
+
+ // #619
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 15008
+
+ // #620
+ "Animations"
+ "\377\376\375\374\373\372" // 15024
+
+ // #621
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 15040
+
+ // #622
+ "Animations"
+ "\377\376\375\374\373\372" // 15056
+
+ // #623
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 15072
+
+ // #624
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 15104
+
+ // #625
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15136
+
+ // #626
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 15168
+
+ // #627
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15200
+
+ // #628
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 15232
+
+ // #629
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15264+
+
+ // #630
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 15296
+
+ // #631
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15328+
+
+ // #632
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 15344
+
+ // #633
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15376
+
+ // #634
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 15392
+
+ // #635
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15424
+
+ // #636
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 15440
+
+ // #637
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15472
+
+ // #638
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 15488
+
+ // #639
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15520
+
+ // #640
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 15536
+
+ // #641
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15568
+
+ // #642
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 15584
+
+ // #643
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15616
+
+ // #644
+ "International"
+ "\377\376\375" // 15632
+
+ // #645
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 15648
+
+ // #646
+ "International"
+ "\377\376\375" // 15664
+
+ // #647
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 15680
+
+ // #648
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15712
+
+ // #649
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15744
+
+ // #650
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15776
+
+ // #651
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15808
+
+ // #652
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15840
+
+ // #653
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15872
+
+ // #654
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 15888
+
+ // #655
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15920
+
+ // #656
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 15936
+
+ // #657
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 15968
+
+ // #658
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 15984
+
+ // #659
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16016
+
+ // #660
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 16032
+
+ // #661
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16096+
+
+ // #662
+ "Status"
+ "\377\376\375\374\373\372\371\370\367\366" // 16112
+
+ // #663
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16160+
+
+ // #664
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 16176
+
+ // #665
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16208
+
+ // #666
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 16224
+
+ // #667
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16256
+
+ // #668
+ "Animations"
+ "\377\376\375\374\373\372" // 16272
+
+ // #669
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 16288
+
+ // #670
+ "Animations"
+ "\377\376\375\374\373\372" // 16304
+
+ // #671
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 16320
+
+ // #672
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 16352
+
+ // #673
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16384
+
+ // #674
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 16416
+
+ // #675
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16448
+
+ // #676
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 16480+
+
+ // #677
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16512
+
+ // #678
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 16544+
+
+ // #679
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16576
+
+ // #680
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 16592
+
+ // #681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16672+
+
+ // #682
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 16688
+
+ // #683
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16736+
+
+ // #684
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 16752
+
+ // #685
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16784
+
+ // #686
+ "Emblems"
+ "\377\376\375\374\373\372\371\370\367" // 16800
+
+ // #687
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16832
+
+ // #688
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 16848
+
+ // #689
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16880
+
+ // #690
+ "Emotes"
+ "\377\376\375\374\373\372\371\370\367\366" // 16896
+
+ // #691
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 16928
+
+ // #692
+ "International"
+ "\377\376\375" // 16944
+
+ // #693
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 16960
+
+ // #694
+ "International"
+ "\377\376\375" // 16976
+
+ // #695
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 16992
+
+ // #696
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 17008
+
+ // #697
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17024
+
+ // #698
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 17040
+
+ // #699
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17056
+
+ // #700
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 17072
+
+ // #701
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17088
+
+ // #702
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 17104
+
+ // #703
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17120
+
+ // #704
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 17136
+
+ // #705
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17152
+
+ // #706
+ "\377\376\375\374\373\372\371\370"
+ "Places"
+ "\377\376" // 17168
+
+ // #707
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17184
+
+ // #708
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 17200
+
+ // #709
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17216
+
+ // #710
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 17232
+
+ // #711
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17248
+
+ // #712
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 17264
+
+ // #713
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17280
+
+ // #714
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 17296
+
+ // #715
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 17312
+
+ // #716
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 17344
+
+ // #717
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17376
+
+ // #718
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 17408
+
+ // #719
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17440
+
+ // #720
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 17472
+
+ // #721
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17504+
+
+ // #722
+ "\377\376\375\374\373\372\371\370"
+ "Categories"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 17536
+
+ // #723
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17568+
+
+ // #724
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 17584
+
+ // #725
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17616
+
+ // #726
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 17632
+
+ // #727
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17664
+
+ // #728
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17696+
+
+ // #729
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17728
+
+ // #730
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17760+
+
+ // #731
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17792
+
+ // #732
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 17808
+
+ // #733
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17888+
+
+ // #734
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 17904
+
+ // #735
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 17952+
+
+ // #736
+ "Places"
+ "\377\376\375\374\373\372\371\370\367\366" // 17968
+
+ // #737
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 18016+
+
+ // #738
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 18032
+
+ // #739
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 18048
+
+ // #740
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 18064
+
+ // #741
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 18080
+
+ // #742
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48,64,128,256"
+ "\377\376" // 18112
+
+ // #743
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 18144+
+
+ // #744
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 18176
+
+ // #745
+ "\377\376\375\374\373\372\371\370"
+ "16,22,32,48"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 18208
+
+ // #746
+ "16,22,32,48,64,128,256"
+ "\377\376\375\374\373\372\371\370\367\366" // 18240
+
+ // #747
+ "16,22,32,48,64,128,256"
+ "\377\376\375\374\373\372\371\370\367\366" // 18272+
+
+ // #748
+ "KDE-HiColor"
+ "\377\376\375\374\373" // 18288
+
+ // #749
+ "\377\376\375\374\373\372\371\370"
+ "Fallback icon theme"
+ "\377\376\375\374\373" // 18320
+
+ // #750
+ "exec"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 18336
+
+ // #751
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "192x192/apps,128x128/actions,128x128/apps,128x128/devices,128x128/filesystems,128x128/mimetypes,96x96/actions,96x96/apps,96x96/devices,96x96/filesystems,96x96/mimetypes,72x72/apps,64x64/actions,64x64/apps,64x64/devices,64x64/filesystems,64x64/mimetypes,64x64/status,48x48/actions,48x48/apps,48x48/devices,48x48/filesystems,48x48/mimetypes,36x36/apps,32x32/actions,32x32/apps,32x32/devices,32x32/filesystems,32x32/mimetypes,32x32/status,24x24/apps,22x22/actions,22x22/apps,22x22/devices,22x22/filesystems,22x22/mimetypes,22x22/status,16x16/actions,16x16/apps,16x16/devices,16x16/filesystems,16x16/mimetypes,16x16/status,scalable/actions,scalable/apps,scalable/devices,scalable/filesystems,scalable/mimetypes,16x16/stock/chart,16x16/stock/code,16x16/stock/data,16x16/stock/document,16x16/stock/form,16x16/stock/generic,16x16/stock/image,16x16/stock/io,16x16/stock/media,16x16/stock/navigation,16x16/stock/net,16x16/stock/object,16x16/stock/table,16x16/stock/text,24x24/stock/chart,24x24/stock/code,24x24/stock/data,24x24/stock/document,24x24/stock/form,24x24/stock/generic,24x24/stock/image,24x24/stock/io,24x24/stock/media,24x24/stock/navigation,24x24/stock/net,24x24/stock/object,24x24/stock/table,24x24/stock/text,32x32/stock/chart,32x32/stock/code,32x32/stock/data,32x32/stock/document,32x32/stock/form,32x32/stock/generic,32x32/stock/image,32x32/stock/io,32x32/stock/media,32x32/stock/navigation,32x32/stock/net,32x32/stock/object,32x32/stock/table,32x32/stock/text,36x36/stock/chart,36x36/stock/code,36x36/stock/data,36x36/stock/document,36x36/stock/form,36x36/stock/generic,36x36/stock/image,36x36/stock/io,36x36/stock/media,36x36/stock/navigation,36x36/stock/net,36x36/stock/object,36x36/stock/table,36x36/stock/text,48x48/stock/chart,48x48/stock/code,48x48/stock/data,48x48/stock/document,48x48/stock/form,48x48/stock/generic,48x48/stock/image,48x48/stock/io,48x48/stock/media,48x48/stock/navigation,48x48/stock/net,48x48/stock/object,48x48/stock/table,48x48/stock/text"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 20368+
+
+ // #752
+ "Applications"
+ "\377\376\375\374" // 20384
+
+ // #753
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20400
+
+ // #754
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 20416
+
+ // #755
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 20448
+
+ // #756
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 20464
+
+ // #757
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 20496
+
+ // #758
+ "Applications"
+ "\377\376\375\374" // 20512
+
+ // #759
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20528
+
+ // #760
+ "Applications"
+ "\377\376\375\374" // 20544
+
+ // #761
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20560
+
+ // #762
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 20576
+
+ // #763
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20592
+
+ // #764
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 20608
+
+ // #765
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20624
+
+ // #766
+ "FileSystems"
+ "\377\376\375\374\373" // 20640
+
+ // #767
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20656
+
+ // #768
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 20672
+
+ // #769
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20688
+
+ // #770
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 20704
+
+ // #771
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20720
+
+ // #772
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 20736
+
+ // #773
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 20768
+
+ // #774
+ "Applications"
+ "\377\376\375\374" // 20784
+
+ // #775
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20800
+
+ // #776
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 20816
+
+ // #777
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20832
+
+ // #778
+ "FileSystems"
+ "\377\376\375\374\373" // 20848
+
+ // #779
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 20864
+
+ // #780
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 20896
+
+ // #781
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 20960+
+
+ // #782
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 20992
+
+ // #783
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21024
+
+ // #784
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 21040
+
+ // #785
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21088+
+
+ // #786
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 21104
+
+ // #787
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21152+
+
+ // #788
+ "Applications"
+ "\377\376\375\374" // 21168
+
+ // #789
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21184
+
+ // #790
+ "Applications"
+ "\377\376\375\374" // 21200
+
+ // #791
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21216
+
+ // #792
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 21232
+
+ // #793
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21264
+
+ // #794
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 21280
+
+ // #795
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21312
+
+ // #796
+ "\377\376\375\374\373\372\371\370"
+ "FileSystems"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 21344
+
+ // #797
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21376
+
+ // #798
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 21392
+
+ // #799
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21408
+
+ // #800
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 21424
+
+ // #801
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21440
+
+ // #802
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 21456
+
+ // #803
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21472
+
+ // #804
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 21488
+
+ // #805
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21520
+
+ // #806
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 21536
+
+ // #807
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21568
+
+ // #808
+ "Applications"
+ "\377\376\375\374" // 21584
+
+ // #809
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21600
+
+ // #810
+ "Applications"
+ "\377\376\375\374" // 21616
+
+ // #811
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21632
+
+ // #812
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 21648
+
+ // #813
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21664
+
+ // #814
+ "\377\376\375\374\373\372\371\370"
+ "Devices"
+ "\377" // 21680
+
+ // #815
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21696
+
+ // #816
+ "FileSystems"
+ "\377\376\375\374\373" // 21712
+
+ // #817
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 21728
+
+ // #818
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21792+
+
+ // #819
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21824
+
+ // #820
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21856+
+
+ // #821
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21888
+
+ // #822
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 21920
+
+ // #823
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 21984+
+
+ // #824
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 22000
+
+ // #825
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22016
+
+ // #826
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 22032
+
+ // #827
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22048
+
+ // #828
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 22080
+
+ // #829
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22112
+
+ // #830
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 22144
+
+ // #831
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22176
+
+ // #832
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 22208
+
+ // #833
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22240
+
+ // #834
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 22256
+
+ // #835
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22288
+
+ // #836
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 22304
+
+ // #837
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22336
+
+ // #838
+ "\377\376\375\374\373\372\371\370"
+ "FileSystems"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 22368
+
+ // #839
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22432+
+
+ // #840
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 22448
+
+ // #841
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22464
+
+ // #842
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 22480
+
+ // #843
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22496
+
+ // #844
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 22512
+
+ // #845
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22528
+
+ // #846
+ "Applications"
+ "\377\376\375\374" // 22544
+
+ // #847
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22560
+
+ // #848
+ "Applications"
+ "\377\376\375\374" // 22576
+
+ // #849
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22592
+
+ // #850
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 22608
+
+ // #851
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22624
+
+ // #852
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 22640
+
+ // #853
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 22656
+
+ // #854
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 22688+
+
+ // #855
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22720
+
+ // #856
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 22752+
+
+ // #857
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22784
+
+ // #858
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 22800
+
+ // #859
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22880+
+
+ // #860
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 22896
+
+ // #861
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 22944+
+
+ // #862
+ "\377\376\375\374\373\372\371\370"
+ "FileSystems"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 22976
+
+ // #863
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23008
+
+ // #864
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 23024
+
+ // #865
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23040
+
+ // #866
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 23056
+
+ // #867
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23072
+
+ // #868
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 23088
+
+ // #869
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23120
+
+ // #870
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 23136
+
+ // #871
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23168
+
+ // #872
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 23184
+
+ // #873
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23200
+
+ // #874
+ "\377\376\375\374\373\372\371\370"
+ "Actions"
+ "\377" // 23216
+
+ // #875
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23232
+
+ // #876
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 23264
+
+ // #877
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23328+
+
+ // #878
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 23360
+
+ // #879
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23392+
+
+ // #880
+ "\377\376\375\374\373\372\371\370"
+ "Applications"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 23424
+
+ // #881
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23456+
+
+ // #882
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 23472
+
+ // #883
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23520+
+
+ // #884
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 23536
+
+ // #885
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23584+
+
+ // #886
+ "\377\376\375\374\373\372\371\370"
+ "FileSystems"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 23616
+
+ // #887
+ "\377\376\375\374\373\372\371\370"
+ "Threshold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 23648
+
+ // #888
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 23664
+
+ // #889
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23680
+
+ // #890
+ "MimeTypes"
+ "\377\376\375\374\373\372\371" // 23696
+
+ // #891
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23712
+
+ // #892
+ "\377\376\375\374\373\372\371\370"
+ "Status"
+ "\377\376" // 23728
+
+ // #893
+ "Threshold"
+ "\377\376\375\374\373\372\371" // 23744
+
+ // #894
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 23760
+
+ // #895
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 23792
+
+ // #896
+ "Actions"
+ "\377\376\375\374\373\372\371\370\367" // 23808
+
+ // #897
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 23840
+
+ // #898
+ "Applications"
+ "\377\376\375\374" // 23856
+
+ // #899
+ "Scalable"
+ "\377\376\375\374\373\372\371\370" // 23872
+
+ // #900
+ "Applications"
+ "\377\376\375\374" // 23888
+
+ // #901
+ "Scalable"
+ "\377\376\375\374\373\372\371\370" // 23904
+
+ // #902
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 23920
+
+ // #903
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 23952
+
+ // #904
+ "Devices"
+ "\377\376\375\374\373\372\371\370\367" // 23968
+
+ // #905
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 24000
+
+ // #906
+ "\377\376\375\374\373\372\371\370"
+ "FileSystems"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 24032
+
+ // #907
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 24064
+
+ // #908
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 24096+
+
+ // #909
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 24128
+
+ // #910
+ "\377\376\375\374\373\372\371\370"
+ "MimeTypes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 24160+
+
+ // #911
+ "\377\376\375\374\373\372\371\370"
+ "Scalable"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 24192
+
+ // #912
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24208
+
+ // #913
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24224
+
+ // #914
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24240
+
+ // #915
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24256
+
+ // #916
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24272
+
+ // #917
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24288
+
+ // #918
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24304
+
+ // #919
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24320
+
+ // #920
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24336
+
+ // #921
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24352
+
+ // #922
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24368
+
+ // #923
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24384
+
+ // #924
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24400
+
+ // #925
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24416
+
+ // #926
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24432
+
+ // #927
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24448
+
+ // #928
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24464
+
+ // #929
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24480
+
+ // #930
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24496
+
+ // #931
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24512
+
+ // #932
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24528
+
+ // #933
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24544
+
+ // #934
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24560
+
+ // #935
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24576
+
+ // #936
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24592
+
+ // #937
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24608
+
+ // #938
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24624
+
+ // #939
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24640
+
+ // #940
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24656
+
+ // #941
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24672
+
+ // #942
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24688
+
+ // #943
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24704
+
+ // #944
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24720
+
+ // #945
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24736
+
+ // #946
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24752
+
+ // #947
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24768
+
+ // #948
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24784
+
+ // #949
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24800
+
+ // #950
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24816
+
+ // #951
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24832
+
+ // #952
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24848
+
+ // #953
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24864
+
+ // #954
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24880
+
+ // #955
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24896
+
+ // #956
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24912
+
+ // #957
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24928
+
+ // #958
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24944
+
+ // #959
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24960
+
+ // #960
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 24976
+
+ // #961
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 24992
+
+ // #962
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25008
+
+ // #963
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25024
+
+ // #964
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25040
+
+ // #965
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25056
+
+ // #966
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 25072
+
+ // #967
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25088
+
+ // #968
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25104
+
+ // #969
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 25120
+
+ // #970
+ "Stock"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 25136
+
+ // #971
+ "\377\376\375\374\373\372\371\370"
+ "Stock"
+ "\377\376\375" // 25152
+
+ // #972
+ "\377\376\375\374\373\372\371\370"
+ "16,32,48,64"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 25184
+
+ // #973
+ "16,22,32"
+ "\377\376\375\374\373\372\371\370" // 25200
+
+ // #974
+ "16,22,32"
+ "\377\376\375\374\373\372\371\370" // 25216
+
+ // #975
+ "16"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 25232
+
+ // #976
+ "16,22,32,48"
+ "\377\376\375\374\373" // 25248
+
+ // #977
+ "\377\376\375\374\373\372\371\370"
+ "org.freedesktop.DBus"
+ "\377\376\375\374" // 25280
+
+ // #978
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "u"
+ "\377\376" // 25296
+
+ // #979
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 25312
+
+ // #980
+ "\377\376\375\374\373\372\371\370"
+ "no"
+ "\377\376\375\374\373\372" // 25328
+
+ // #981
+ "\377\376\375\374\373\372\371\370"
+ "pt_BR"
+ "\377\376\375" // 25344
+
+ // #982
+ "\377\376\375\374"
+ "== %1 =="
+ "\377\376\375\374" // 25360
+
+ // #983
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "<h2>%1</h2>"
+ "\377\376\375\374\373\372\371\370" // 25440+
+
+ // #984
+ "\377"
+ "~ %1 ~"
+ "\377\376\375\374\373\372\371\370\367" // 25456
+
+ // #985
+ "\377\376\375\374\373\372\371\370"
+ "<h3>%1</h3>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 25488
+
+ // #986
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 25504
+
+ // #987
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "<p>%1</p>"
+ "\377\376\375\374\373\372\371\370\367" // 25536
+
+ // #988
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 25552
+
+ // #989
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301"
+ "<ul>%1</ul>"
+ "\377\376\375\374\373\372" // 25632+
+
+ // #990
+ "\377\376\375\374\373\372\371\370\367\366"
+ " * %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 25664
+
+ // #991
+ "\377"
+ "<li>%1</li>"
+ "\377\376\375\374" // 25680
+
+ // #992
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Nota: %1"
+ "\377\376\375\374\373\372\371\370\367\366" // 25712
+
+ // #993
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351"
+ "<i>Nota</i>: %1"
+ "\377\376\375\374\373\372\371\370\367\366" // 25760+
+
+ // #994
+ "\377\376\375\374\373\372\371\370\367"
+ "%1: %2"
+ "\377" // 25776
+
+ // #995
+ "<i>%1</i>: %2"
+ "\377\376\375" // 25792
+
+ // #996
+ "\377\376\375"
+ "AVISO: %1"
+ "\377\376\375\374" // 25808
+
+ // #997
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303"
+ "<b>Aviso</b>: %1"
+ "\377\376\375" // 25888+
+
+ // #998
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "%1: %2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 25920
+
+ // #999
+ "\377\376\375\374\373"
+ "<b>%1</b>: %2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 25952
+
+ // #1000
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 25968
+
+ // #1001
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<a href=\42""%1\42"">%1</a>"
+ "\377\376" // 26000
+
+ // #1002
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "%2 (%1)"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 26032
+
+ // #1003
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352"
+ "<a href=\42""%1\42"">%2</a>"
+ "\377\376\375\374\373\372\371" // 26080+
+
+ // #1004
+ "\342""\200""\230""%1\342""\200""\231"""
+ "\377\376\375\374\373\372\371\370" // 26096
+
+ // #1005
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347"
+ "<tt>%1</tt>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 26144+
+
+ // #1006
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "%1"
+ "\377\376" // 26160
+
+ // #1007
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 26208+
+
+ // #1008
+ "\377\376\375\374\373\372\371\370\367"
+ "%1"
+ "\377\376\375\374\373" // 26224
+
+ // #1009
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "<tt>%1</tt>"
+ "\377\376\375\374\373\372\371\370\367" // 26256
+
+ // #1010
+ "\377\376"
+ "%1(%2)"
+ "\377\376\375\374\373\372\371\370" // 26272
+
+ // #1011
+ "\377\376\375\374\373\372\371\370\367"
+ "<tt>%1(%2)</tt>"
+ "\377\376\375\374\373\372\371\370" // 26304
+
+ // #1012
+ "\377\376"
+ "\342""\200""\234""%1\342""\200""\235"""
+ "\377\376\375\374\373\372" // 26320
+
+ // #1013
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305"
+ "\342""\200""\234""%1\342""\200""\235"""
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 26400+
+
+ // #1014
+ "\377\376\375\374\373"
+ "\342""\200""\234""%1\342""\200""\235"""
+ "\377\376\375" // 26416
+
+ // #1015
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "<tt>%1</tt>"
+ "\377\376\375\374\373\372\371" // 26448
+
+ // #1016
+ "\377\376\375\374"
+ "\12""%1\12"""
+ "\377\376\375\374\373\372\371\370" // 26464
+
+ // #1017
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332"
+ "<pre>%1</pre>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 26528+
+
+ // #1018
+ "\377\376\375\374"
+ "%1"
+ "\377\376\375\374\373\372\371\370\367\366" // 26544
+
+ // #1019
+ "\377\376\375\374\373\372\371"
+ "<b>%1</b>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 26576
+
+ // #1020
+ "\377\376\375\374\373\372"
+ "|%1|"
+ "\377\376\375\374\373\372" // 26592
+
+ // #1021
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<i>%1</i>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 26624
+
+ // #1022
+ "*%1*"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 26640
+
+ // #1023
+ "\377\376\375\374\373"
+ "<i>%1</i>"
+ "\377\376" // 26656
+
+ // #1024
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "**%1**"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 26720+
+
+ // #1025
+ "\377\376\375\374\373\372"
+ "<b>%1</b>"
+ "\377" // 26736
+
+ // #1026
+ "\377\376\375\374\373"
+ "&lt;%1&gt;"
+ "\377" // 26752
+
+ // #1027
+ "&lt;<i>%1</i>&gt;"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 26784
+
+ // #1028
+ "\377"
+ "&lt;%1&gt;"
+ "\377\376\375\374\373" // 26800
+
+ // #1029
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "&lt;<a href=\42""mailto:%1\42"">%1</a>&gt;"
+ "\377\376" // 26848
+
+ // #1030
+ "\377\376\375\374\373\372\371\370"
+ "%1 &lt;%2&gt;"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 26880
+
+ // #1031
+ "\377\376\375\374\373\372"
+ "<a href=\42""mailto:%2\42"">%1</a>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 26928+
+
+ // #1032
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "$%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 26960
+
+ // #1033
+ "\377\376\375"
+ "<tt>$%1</tt>"
+ "\377" // 26976
+
+ // #1034
+ "\377\376\375\374\373\372\371\370\367\366"
+ "/%1/"
+ "\377\376" // 26992
+
+ // #1035
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "<i>%1</i>"
+ "\377\376\375\374\373\372\371\370" // 27024
+
+ // #1036
+ "\377\376\375\374\373"
+ "%1\12"""
+ "\377\376\375\374\373\372\371\370" // 27040
+
+ // #1037
+ "\377"
+ "%1<br/>"
+ "\377\376\375\374\373\372\371\370" // 27056
+
+ // #1038
+ "\377\376"
+ "+"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 27072
+
+ // #1039
+ "\377\376\375\374"
+ "+"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 27088
+
+ // #1040
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "\342""\206""\222"""
+ "\377" // 27104
+
+ // #1041
+ "\342""\206""\222"""
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 27120
+
+ // #1042
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "Alt"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 27168+
+
+ // #1043
+ "\377\376\375"
+ "AltGr"
+ "\377\376\375\374\373\372\371\370" // 27184
+
+ // #1044
+ "\377\376\375\374\373\372\371\370\367"
+ "Backspace"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 27216
+
+ // #1045
+ "\377\376\375"
+ "CapsLock"
+ "\377\376\375\374\373" // 27232
+
+ // #1046
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Control"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 27264
+
+ // #1047
+ "\377\376\375\374"
+ "Ctrl"
+ "\377\376\375\374\373\372\371\370" // 27280
+
+ // #1048
+ "\377\376\375\374\373\372\371\370\367"
+ "Del"
+ "\377\376\375\374" // 27296
+
+ // #1049
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Delete"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 27328
+
+ // #1050
+ "\377\376\375\374"
+ "Page Down"
+ "\377\376\375" // 27344
+
+ // #1051
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "End"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 27424+
+
+ // #1052
+ "\377\376"
+ "Enter"
+ "\377\376\375\374\373\372\371\370\367" // 27440
+
+ // #1053
+ "\377\376\375\374\373\372\371\370"
+ "Esc"
+ "\377\376\375\374\373" // 27456
+
+ // #1054
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Escape"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 27488
+
+ // #1055
+ "\377\376\375\374\373\372\371"
+ "Home"
+ "\377\376\375\374\373" // 27504
+
+ // #1056
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Hyper"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 27536
+
+ // #1057
+ "\377\376"
+ "Ins"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 27552
+
+ // #1058
+ "\377\376\375\374\373\372"
+ "Insert"
+ "\377\376\375\374" // 27568
+
+ // #1059
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Esquerda"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 27600
+
+ // #1060
+ "\377\376\375\374\373\372"
+ "Menu"
+ "\377\376\375\374\373\372" // 27616
+
+ // #1061
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Meta"
+ "\377" // 27632
+
+ // #1062
+ "NumLock"
+ "\377\376\375\374\373\372\371\370\367" // 27648
+
+ // #1063
+ "\377\376\375\374\373\372\371\370"
+ "PageDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 27680
+
+ // #1064
+ "\377"
+ "PageUp"
+ "\377\376\375\374\373\372\371\370\367" // 27696
+
+ // #1065
+ "\377\376\375\374"
+ "Page Down"
+ "\377\376\375" // 27712
+
+ // #1066
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Page Up"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 27744
+
+ // #1067
+ "\377\376\375\374\373\372\371\370"
+ "Pause/Break"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 27776
+
+ // #1068
+ "\377\376\375\374\373\372"
+ "Print Screen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 27808+
+
+ // #1069
+ "\377\376\375"
+ "PrtScr"
+ "\377\376\375\374\373\372\371" // 27824
+
+ // #1070
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Return"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 27856
+
+ // #1071
+ "\377"
+ "Direita"
+ "\377\376\375\374\373\372\371\370" // 27872
+
+ // #1072
+ "\377\376\375\374\373\372\371\370\367"
+ "Scroll Lock"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 27904
+
+ // #1073
+ "\377\376\375\374\373"
+ "Shift"
+ "\377\376\375\374\373\372" // 27920
+
+ // #1074
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Espa\303""\247""o"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 27952
+
+ // #1075
+ "\377\376\375"
+ "Super"
+ "\377\376\375\374\373\372\371\370" // 27968
+
+ // #1076
+ "\377\376\375\374\373\372\371\370\367"
+ "SysReq"
+ "\377" // 27984
+
+ // #1077
+ "Tab"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 28000
+
+ // #1078
+ "\377\376\375\374"
+ "Acima"
+ "\377\376\375\374\373\372\371" // 28016
+
+ // #1079
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Win"
+ "\377\376\375" // 28032
+
+ // #1080
+ "\377\376\375"
+ "F%1"
+ "\377\376\375\374\373\372\371\370\367\366" // 28048
+
+ // #1081
+ "\377\376"
+ "== %1 =="
+ "\377\376\375\374\373\372" // 28064
+
+ // #1082
+ "\377\376\375\374\373\372\371\370"
+ "<h2>%1</h2>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 28096
+
+ // #1083
+ "~ %1 ~"
+ "\377\376\375\374\373\372\371\370\367\366" // 28112
+
+ // #1084
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311"
+ "<h3>%1</h3>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 28192+
+
+ // #1085
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 28208
+
+ // #1086
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "<p>%1</p>"
+ "\377\376\375\374\373\372\371\370\367" // 28240
+
+ // #1087
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 28256
+
+ // #1088
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321"
+ "<ul>%1</ul>"
+ "\377\376\375\374\373\372" // 28320+
+
+ // #1089
+ "\377\376\375\374\373\372"
+ " * %1"
+ "\377\376\375\374" // 28336
+
+ // #1090
+ "\377\376\375\374\373\372\371\370\367"
+ "<li>%1</li>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 28368
+
+ // #1091
+ "Note: %1"
+ "\377\376\375\374\373\372\371\370" // 28384
+
+ // #1092
+ "\377\376\375\374\373"
+ "<i>Note</i>: %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 28416
+
+ // #1093
+ "%1: %2"
+ "\377\376\375\374\373\372\371\370\367\366" // 28432
+
+ // #1094
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311"
+ "<i>%1</i>: %2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 28512+
+
+ // #1095
+ "\377\376\375\374\373"
+ "WARNING: %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 28544
+
+ // #1096
+ "<b>Warning</b>: %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 28576
+
+ // #1097
+ "%1: %2"
+ "\377\376\375\374\373\372\371\370\367\366" // 28592
+
+ // #1098
+ "\377"
+ "<b>%1</b>: %2"
+ "\377\376" // 28608
+
+ // #1099
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 28624
+
+ // #1100
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "<a href=\42""%1\42"">%1</a>"
+ "\377\376" // 28656
+
+ // #1101
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "%2 (%1)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 28704+
+
+ // #1102
+ "\377\376"
+ "<a href=\42""%1\42"">%2</a>"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 28736
+
+ // #1103
+ "\377\376\375\374\373\372"
+ "\342""\200""\230""%1\342""\200""\231"""
+ "\377\376" // 28752
+
+ // #1104
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "<tt>%1</tt>"
+ "\377\376\375\374\373\372" // 28784
+
+ // #1105
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 28800
+
+ // #1106
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 28816
+
+ // #1107
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 28832
+
+ // #1108
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "<tt>%1</tt>"
+ "\377\376\375\374\373\372" // 28864
+
+ // #1109
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "%1(%2)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 28896
+
+ // #1110
+ "\377\376\375"
+ "<tt>%1(%2)</tt>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 28928
+
+ // #1111
+ "\377\376\375"
+ "\342""\200""\234""%1\342""\200""\235"""
+ "\377\376\375\374\373" // 28944
+
+ // #1112
+ "\377\376\375"
+ "\342""\200""\234""%1\342""\200""\235"""
+ "\377\376\375\374\373" // 28960
+
+ // #1113
+ "\377\376\375"
+ "\342""\200""\234""%1\342""\200""\235"""
+ "\377\376\375\374\373" // 28976
+
+ // #1114
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "<tt>%1</tt>"
+ "\377\376\375\374\373\372" // 29008
+
+ // #1115
+ "\377\376\375\374"
+ "\12""%1\12"""
+ "\377\376\375\374\373\372\371\370" // 29024
+
+ // #1116
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332"
+ "<pre>%1</pre>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 29088+
+
+ // #1117
+ "\377\376\375\374\373\372\371\370\367\366"
+ "%1"
+ "\377\376\375\374" // 29104
+
+ // #1118
+ "\377\376\375\374\373"
+ "<b>%1</b>"
+ "\377\376" // 29120
+
+ // #1119
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "|%1|"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 29152
+
+ // #1120
+ "\377\376\375\374\373"
+ "<i>%1</i>"
+ "\377\376" // 29168
+
+ // #1121
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "*%1*"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 29200
+
+ // #1122
+ "\377\376\375\374\373"
+ "<i>%1</i>"
+ "\377\376" // 29216
+
+ // #1123
+ "\377\376\375"
+ "**%1**"
+ "\377\376\375\374\373\372\371" // 29232
+
+ // #1124
+ "\377\376\375\374\373"
+ "<b>%1</b>"
+ "\377\376" // 29248
+
+ // #1125
+ "\377\376\375\374\373\372\371"
+ "&lt;%1&gt;"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 29280+
+
+ // #1126
+ "\377\376\375\374\373"
+ "&lt;<i>%1</i>&gt;"
+ "\377\376\375\374\373\372\371\370\367\366" // 29312
+
+ // #1127
+ "\377\376\375\374\373\372\371"
+ "&lt;%1&gt;"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 29344+
+
+ // #1128
+ "\377\376\375\374\373\372\371\370"
+ "&lt;<a href=\42""mailto:%1\42"">%1</a>&gt;"
+ "\377\376\375\374\373\372" // 29392
+
+ // #1129
+ "\377\376"
+ "%1 &lt;%2&gt;"
+ "\377" // 29408
+
+ // #1130
+ "<a href=\42""mailto:%2\42"">%1</a>"
+ "\377\376\375\374\373\372" // 29440
+
+ // #1131
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "$%1"
+ "\377\376" // 29456
+
+ // #1132
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "<tt>$%1</tt>"
+ "\377\376\375\374\373\372\371\370" // 29488
+
+ // #1133
+ "\377\376\375\374\373"
+ "/%1/"
+ "\377\376\375\374\373\372\371" // 29504
+
+ // #1134
+ "\377\376\375\374\373"
+ "<i>%1</i>"
+ "\377\376" // 29520
+
+ // #1135
+ "\377\376\375\374\373"
+ "%1\12"""
+ "\377\376\375\374\373\372\371\370" // 29536
+
+ // #1136
+ "\377"
+ "%1<br/>"
+ "\377\376\375\374\373\372\371\370" // 29552
+
+ // #1137
+ "\377\376\375\374\373\372\371\370"
+ "+"
+ "\377\376\375\374\373\372\371" // 29568
+
+ // #1138
+ "\377\376\375\374\373\372\371\370"
+ "+"
+ "\377\376\375\374\373\372\371" // 29584
+
+ // #1139
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "\342""\206""\222"""
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 29616
+
+ // #1140
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "\342""\206""\222"""
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 29648
+
+ // #1141
+ "\377\376"
+ "Alt"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 29664
+
+ // #1142
+ "\377\376\375\374\373\372\371\370"
+ "AltGr"
+ "\377\376\375" // 29680
+
+ // #1143
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Backspace"
+ "\377\376\375\374\373\372\371\370\367" // 29712
+
+ // #1144
+ "\377\376\375\374\373\372\371\370"
+ "CapsLock"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 29744
+
+ // #1145
+ "\377"
+ "Control"
+ "\377\376\375\374\373\372\371\370" // 29760
+
+ // #1146
+ "\377\376\375\374\373\372\371\370\367"
+ "Ctrl"
+ "\377\376\375" // 29776
+
+ // #1147
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Del"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 29808
+
+ // #1148
+ "\377\376"
+ "Delete"
+ "\377\376\375\374\373\372\371\370" // 29824
+
+ // #1149
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Down"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 29856+
+
+ // #1150
+ "\377\376\375\374\373\372\371\370\367"
+ "End"
+ "\377\376\375\374" // 29872
+
+ // #1151
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Enter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 29920+
+
+ // #1152
+ "\377\376\375"
+ "Esc"
+ "\377\376\375\374\373\372\371\370\367\366" // 29936
+
+ // #1153
+ "\377\376\375\374\373\372\371"
+ "Escape"
+ "\377\376\375" // 29952
+
+ // #1154
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Home"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 29984
+
+ // #1155
+ "\377\376\375"
+ "Hyper"
+ "\377\376\375\374\373\372\371\370" // 30000
+
+ // #1156
+ "\377\376\375\374\373\372\371\370\367"
+ "Ins"
+ "\377\376\375\374" // 30016
+
+ // #1157
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Insert"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30048
+
+ // #1158
+ "\377\376\375\374"
+ "Left"
+ "\377\376\375\374\373\372\371\370" // 30064
+
+ // #1159
+ "\377\376\375\374\373\372\371\370\367"
+ "Menu"
+ "\377\376\375" // 30080
+
+ // #1160
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Meta"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 30112
+
+ // #1161
+ "\377\376\375"
+ "NumLock"
+ "\377\376\375\374\373\372" // 30128
+
+ // #1162
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "PageDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30176+
+
+ // #1163
+ "\377\376\375\374"
+ "PageUp"
+ "\377\376\375\374\373\372" // 30192
+
+ // #1164
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "PgDown"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 30224
+
+ // #1165
+ "\377\376"
+ "PgUp"
+ "\377\376\375\374\373\372\371\370\367\366" // 30240
+
+ // #1166
+ "\377\376\375\374\373\372\371"
+ "PauseBreak"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 30272
+
+ // #1167
+ "\377\376"
+ "PrintScreen"
+ "\377\376\375" // 30288
+
+ // #1168
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "PrtScr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 30320
+
+ // #1169
+ "\377\376\375\374\373"
+ "Return"
+ "\377\376\375\374\373" // 30336
+
+ // #1170
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Right"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 30368+
+
+ // #1171
+ "\377\376"
+ "ScrollLock"
+ "\377\376\375\374" // 30384
+
+ // #1172
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "Shift"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 30416
+
+ // #1173
+ "\377\376\375"
+ "Space"
+ "\377\376\375\374\373\372\371\370" // 30432
+
+ // #1174
+ "\377\376\375\374\373\372\371\370\367"
+ "Super"
+ "\377\376" // 30448
+
+ // #1175
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "SysReq"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 30480
+
+ // #1176
+ "\377\376\375\374\373\372"
+ "Tab"
+ "\377\376\375\374\373\372\371" // 30496
+
+ // #1177
+ "\377\376\375\374\373\372\371\370"
+ "Up"
+ "\377\376\375\374\373\372" // 30512
+
+ // #1178
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Win"
+ "\377\376\375" // 30528
+
+ // #1179
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "F%1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 30560
+
+ // #1180
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 30576
+
+ // #1181
+ "\377\376\375\374\373\372\371\370"
+ ","
+ "\377\376\375\374\373\372\371" // 30592
+
+ // #1182
+ "\377\376\375\374\373\372\371\370\367\366"
+ ","
+ "\377\376\375\374\373" // 30608
+
+ // #1183
+ "\377\376\375\374\373\372\371\370"
+ "$0\302""\240""$0"
+ "\377\376" // 30624
+
+ // #1184
+ "$0.$0"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 30640
+
+ // #1187
+ "\377\376\375"
+ "-"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 30656
+
+ // #1188
+ "\342""\210""\222"""
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30672
+
+ // #1189
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "USD"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 30704
+
+ // #1190
+ "NOK"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30720
+
+ // #1191
+ "\377\376\375\374\373\372\371\370"
+ "NOK"
+ "\377\376\375\374\373" // 30736
+
+ // #1192
+ "\377\376\375\374\373\372\371\370"
+ "578"
+ "\377\376\375\374\373" // 30752
+
+ // #1193
+ "Norwegian krone"
+ "\377" // 30768
+
+ // #1194
+ "\377\376\375\374\373\372\371\370"
+ "Norwegian Krone"
+ "\377\376\375\374\373\372\371\370\367" // 30800
+
+ // #1195
+ "kr,NOK"
+ "\377\376\375\374\373\372\371\370\367\366" // 30816
+
+ // #1196
+ "\377\376\375\374\373\372\371\370"
+ "kr"
+ "\377\376\375\374\373\372" // 30832
+
+ // #1197
+ "\377\376\375\374\373\372\371\370"
+ "DKK"
+ "\377\376\375\374\373" // 30848
+
+ // #1198
+ "\377\376\375\374\373\372\371\370"
+ "krone"
+ "\377\376\375" // 30864
+
+ // #1199
+ "kroner"
+ "\377\376\375\374\373\372\371\370\367\366" // 30880
+
+ // #1201
+ "\303""\270""re"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 30896
+
+ // #1202
+ "\377\376\375\374\373\372\371\370"
+ "\303""\270""re"
+ "\377\376\375\374" // 30912
+
+ // #1203
+ "NO,BV"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 30928
+
+ // #1204
+ "NOK"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30944
+
+ // #1205
+ "578"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 30960
+
+ // #1206
+ "Norwegian krone"
+ "\377" // 30976
+
+ // #1207
+ "\377\376\375\374\373\372\371\370"
+ "Coroa norueguesa"
+ "\377\376\375\374\373\372\371\370" // 31008+
+
+ // #1208
+ "\377\376\375\374\373\372\371\370"
+ "kr,NOK"
+ "\377\376" // 31024
+
+ // #1209
+ "\377\376\375\374\373\372\371\370"
+ "kr"
+ "\377\376\375\374\373\372" // 31040
+
+ // #1210
+ "\377\376\375\374\373\372\371\370"
+ "DKK"
+ "\377\376\375\374\373" // 31056
+
+ // #1211
+ "krone"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 31072
+
+ // #1212
+ "\377\376\375\374\373\372\371\370"
+ "kroner"
+ "\377\376" // 31088
+
+ // #1214
+ "\377\376\375\374\373\372\371\370"
+ "\303""\270""re"
+ "\377\376\375\374" // 31104
+
+ // #1215
+ "\303""\270""re"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 31120
+
+ // #1216
+ "\377\376\375\374\373\372\371\370"
+ "NO,BV"
+ "\377\376\375" // 31136
+
+ // #1217
+ "\377\376\375\374\373\372\371\370"
+ "NOK"
+ "\377\376\375\374\373" // 31152
+
+ // #1218
+ "\377\376\375\374\373\372\371\370\367\366"
+ "."
+ "\377\376\375\374\373" // 31168
+
+ // #1219
+ ","
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 31184
+
+ // #1220
+ "\377\376\375\374\373\372\371\370\367\366"
+ ","
+ "\377\376\375\374\373" // 31200
+
+ // #1221
+ "\377\376\375\374\373\372\371\370"
+ "$0\302""\240""$0"
+ "\377\376" // 31216
+
+ // #1222
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "%H:%M:%S"
+ "\377\376\375\374\373\372\371\370\367" // 31264+
+
+ // #1223
+ "%H.%M.%S"
+ "\377\376\375\374\373\372\371\370" // 31280
+
+ // #1224
+ "%H:%M:%S"
+ "\377\376\375\374\373\372\371\370" // 31296
+
+ // #1225
+ "\377\376\375"
+ "%A %d %B %Y"
+ "\377\376" // 31312
+
+ // #1226
+ "%A %e. %B %Y"
+ "\377\376\375\374" // 31328
+
+ // #1227
+ "\377\376\375\374\373\372\371\370"
+ "%A, %e de %B de %Y"
+ "\377\376\375\374\373\372" // 31360
+
+ // #1228
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "%Y-%m-%d"
+ "\377\376\375\374\373\372\371\370\367" // 31392
+
+ // #1229
+ "\377\376\375\374\373\372\371\370"
+ "%d.%m.%Y"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 31424
+
+ // #1230
+ "%e/%n/%Y"
+ "\377\376\375\374\373\372\371\370" // 31440
+
+ // #1231
+ "\377\376\375\374\373\372\371\370"
+ "gregorian"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 31472
+
+ // #1232
+ "\377\376\375\374\373\372\371\370"
+ "The KDE Crash Handler"
+ "\377\376\375" // 31504
+
+ // #1234
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316"
+ "O manipulador de exce\303""\247""\303""\265""es do KDE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 31600+
+
+ // #1235
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "QT_LAYOUT_DIRECTION"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 31648
+
+ // #1236
+ "LTR"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 31664
+
+ // #1237
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 31680
+
+ // #1238
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 31696
+
+ // #1239
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "/var/lib/mandriva/kde4-profiles/common,/var/lib/mandriva/kde4-profiles/powerpack"
+ "\377\376\375\374\373\372\371\370" // 31840+
+
+ // #1240
+ "\377\376\375\374\373\372\371\370"
+ "prefixes"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 31872
+
+ // #1241
+ "\377\376\375\374\373\372\371\370"
+ "/var/lib/mandriva/kde4-profiles/common,/var/lib/mandriva/kde4-profiles/powerpack"
+ "\377\376\375\374\373\372\371\370" // 31968+
+
+ // #1242
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "KDE Resource Restrictions"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 32048+
+
+ // #1243
+ "oxygen"
+ "\377\376\375\374\373\372\371\370\367\366" // 32064
+
+ // #1244
+ "Sans Serif,10,-1,5,50,0,0,0,0,0"
+ "\377" // 32096+
+
+ // #1245
+ "Sans Serif,10,-1,5,50,0,0,0,0,0"
+ "\377" // 32128
+
+ // #1246
+ "Sans Serif,8,-1,5,50,0,0,0,0,0"
+ "\377\376" // 32160
+
+ // #1248
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 32176
+
+ // #1249
+ "\377\376\375\374\373\372\371\370"
+ "drkonqi"
+ "\377" // 32192
+
+ // #1250
+ "InfoOutput"
+ "\377\376\375\374\373\372" // 32208
+
+ // #1251
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32224
+
+ // #1252
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32240
+
+ // #1253
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32256
+
+ // #1254
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32272
+
+ // #1255
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32288
+
+ // #1256
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32304
+
+ // #1257
+ "dbx"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 32320
+
+ // #1258
+ "dbx"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 32336
+
+ // #1259
+ "\377\376\375\374\373\372\371\370"
+ "gdb"
+ "\377\376\375\374\373" // 32352
+
+ // #1260
+ "\377\376\375\374\373\372\371\370"
+ "gdb"
+ "\377\376\375\374\373" // 32368
+
+ // #1261
+ "\377\376\375\374\373\372\371\370"
+ "gdb"
+ "\377\376\375\374\373" // 32384
+
+ // #1262
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32400
+
+ // #1263
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32416
+
+ // #1264
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32432
+
+ // #1265
+ "\377\376\375\374\373\372\371\370"
+ "KCrash"
+ "\377\376" // 32448
+
+ // #1266
+ "\377\376\375\374\373\372\371\370"
+ "gdb"
+ "\377\376\375\374\373" // 32464
+
+ // #1267
+ "\377\376\375\374\373\372\371\370"
+ "gdb"
+ "\377\376\375\374\373" // 32480
+
+ // #1268
+ "\377\376\375\374\373\372\371\370"
+ "kdbg"
+ "\377\376\375\374" // 32496
+
+ // #1269
+ "\377\376\375\374\373\372\371\370"
+ "&OK"
+ "\377\376\375\374\373" // 32512
+
+ // #1271
+ "\377\376\375"
+ "&OK"
+ "\377\376\375\374\373\372\371\370\367\366" // 32528
+
+ // #1272
+ "&Cancel"
+ "\377\376\375\374\373\372\371\370\367" // 32544
+
+ // #1274
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "&Cancelar"
+ "\377\376\375\374\373\372\371\370" // 32576
+
+ // #1275
+ "\377\376\375\374\373\372\371\370"
+ "The KDE Crash Handler"
+ "\377\376\375" // 32608
+
+ // #1277
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336"
+ "O manipulador de exce\303""\247""\303""\265""es do KDE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 32688+
+
+ // #1278
+ "\377\376\375\374\373\372\371\370"
+ "The KDE Crash Handler"
+ "\377\376\375" // 32720
+
+ // #1280
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316"
+ "O manipulador de exce\303""\247""\303""\265""es do KDE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 32816+
+
+ // #1281
+ "\377\376\375\374\373\372\371\370"
+ " \342""\200""\223"" "
+ "\377\376\375" // 32832
+
+ // #1283
+ "\377\376\375\374"
+ " \342""\200""\223"" "
+ "\377\376\375\374\373\372\371" // 32848
+
+ // #1284
+ "QTabBar"
+ "\377\376\375\374\373\372\371\370\367" // 32864
+
+ // #1285
+ "\377\376\375"
+ "tabCloseRequested(int)"
+ "\377\376\375\374\373\372\371" // 32896
+
+ // #1286
+ "KTabBar"
+ "\377\376\375\374\373\372\371\370\367" // 32912
+
+ // #1287
+ "\377\376\375"
+ "closeRequest(int)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 32944
+
+ // #1288
+ "\377\376"
+ "MainWidget"
+ "\377\376\375\374" // 32960
+
+ // #1289
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "verticalLayout_3"
+ "\377\376\375" // 32992
+
+ // #1290
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "horizontalLayout_2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 33040
+
+ // #1291
+ "\377"
+ "verticalLayout"
+ "\377" // 33056
+
+ // #1292
+ "\377\376\375\374\373\372\371\370\367\366"
+ "titleLabel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 33088
+
+ // #1294
+ "infoLabel"
+ "\377\376\375\374\373\372\371" // 33104
+
+ // #1296
+ "\377\376\375\374\373\372\371\370\367\366"
+ "verticalLayout_2"
+ "\377\376\375\374\373\372" // 33136
+
+ // #1297
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "iconLabel"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 33168
+
+ // #1299
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313"
+ "detailsTitleLabel"
+ "\377\376\375\374\373\372\371\370\367\366" // 33248+
+
+ // #1301
+ "\377\376\375"
+ "detailsLabel"
+ "\377" // 33264
+
+ // #1303
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "<para>We are sorry, <application>%1</application> closed unexpectedly.</para>"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33376+
+
+ // #1305
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332"
+ "<para>Desculpe-nos, mas o <application>%1</application> fechou inesperadamente.</para>"
+ "\377\376\375\374" // 33504+
+
+ // #1306
+ "pt-BR"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33520
+
+ // #1307
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 33536
+
+ // #1308
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33552
+
+ // #1309
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 33568
+
+ // #1310
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33584
+
+ // #1311
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 33600
+
+ // #1312
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33616
+
+ // #1313
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 33648
+
+ // #1314
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 33664
+
+ // #1315
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33696
+
+ // #1316
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 33712
+
+ // #1317
+ "NokiaSansCnGre"
+ "\377\376" // 33728
+
+ // #1318
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 33744
+
+ // #1319
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 33760
+
+ // #1320
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33776
+
+ // #1321
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33808
+
+ // #1322
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 33824
+
+ // #1323
+ "NokiaSansCnGre"
+ "\377\376" // 33840
+
+ // #1324
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 33856
+
+ // #1325
+ "LucidaBright"
+ "\377\376\375\374" // 33872
+
+ // #1326
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 33888
+
+ // #1327
+ "Lucida Sans"
+ "\377\376\375\374\373" // 33904
+
+ // #1328
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 33920
+
+ // #1329
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 33952
+
+ // #1330
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 33968
+
+ // #1331
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 33984
+
+ // #1332
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34000
+
+ // #1333
+ "Gulim"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34016
+
+ // #1334
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 34032
+
+ // #1335
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 34064
+
+ // #1336
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34080
+
+ // #1337
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 34096
+
+ // #1338
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 34112
+
+ // #1339
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 34144
+
+ // #1340
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 34160
+
+ // #1341
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 34176
+
+ // #1342
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34192
+
+ // #1343
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 34208
+
+ // #1344
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34224
+
+ // #1345
+ "\377\376\375\374\373\372\371\370"
+ "HYPost-Light"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 34256
+
+ // #1346
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 34272
+
+ // #1347
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 34304
+
+ // #1348
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34320
+
+ // #1349
+ "Teletext"
+ "\377\376\375\374\373\372\371\370" // 34336
+
+ // #1350
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 34352
+
+ // #1351
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "GungsuhChe"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 34400+
+
+ // #1352
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 34416
+
+ // #1353
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 34448
+
+ // #1354
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34464
+
+ // #1355
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 34496
+
+ // #1356
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 34512
+
+ // #1357
+ "Lucida Sans"
+ "\377\376\375\374\373" // 34528
+
+ // #1358
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 34544
+
+ // #1359
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 34576
+
+ // #1360
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 34592
+
+ // #1361
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 34608
+
+ // #1362
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 34624
+
+ // #1363
+ "Liberation Mono"
+ "\377" // 34640
+
+ // #1364
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 34656
+
+ // #1365
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 34720+
+
+ // #1366
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 34752
+
+ // #1367
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 34768
+
+ // #1368
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 34784
+
+ // #1369
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 34800
+
+ // #1370
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 34816
+
+ // #1371
+ "NokiaSansGre"
+ "\377\376\375\374" // 34832
+
+ // #1372
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 34848
+
+ // #1373
+ "NokiaSansTitleGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 34880
+
+ // #1374
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 34896
+
+ // #1375
+ "NokiaSansTitleGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 34928
+
+ // #1376
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 34944
+
+ // #1377
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 34960
+
+ // #1378
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 34976
+
+ // #1379
+ "NokiaSansGre"
+ "\377\376\375\374" // 34992
+
+ // #1380
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 35008
+
+ // #1381
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 35040
+
+ // #1382
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 35056
+
+ // #1383
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 35072
+
+ // #1384
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35088
+
+ // #1385
+ "msam10"
+ "\377\376\375\374\373\372\371\370\367\366" // 35104
+
+ // #1386
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 35120
+
+ // #1387
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 35152
+
+ // #1388
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 35168
+
+ // #1389
+ "Lucida Sans"
+ "\377\376\375\374\373" // 35184
+
+ // #1390
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 35200
+
+ // #1391
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 35216
+
+ // #1392
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 35232
+
+ // #1393
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35264
+
+ // #1394
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 35280
+
+ // #1395
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 35296
+
+ // #1396
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35312
+
+ // #1397
+ "\377\376\375\374\373\372\371\370"
+ "Palatino Linotype"
+ "\377\376\375\374\373\372\371" // 35344
+
+ // #1398
+ "linotype"
+ "\377\376\375\374\373\372\371\370" // 35360
+
+ // #1399
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 35376
+
+ // #1400
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35392
+
+ // #1401
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 35408
+
+ // #1402
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35424
+
+ // #1403
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 35488+
+
+ // #1404
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 35520
+
+ // #1405
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 35536
+
+ // #1406
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35552
+
+ // #1407
+ "Lucida Sans"
+ "\377\376\375\374\373" // 35568
+
+ // #1408
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 35584
+
+ // #1409
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 35600
+
+ // #1410
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35616
+
+ // #1411
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 35632
+
+ // #1412
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35648
+
+ // #1413
+ "Lucida Sans"
+ "\377\376\375\374\373" // 35664
+
+ // #1414
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 35680
+
+ // #1415
+ "NokiaSerifBal"
+ "\377\376\375" // 35696
+
+ // #1416
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 35712
+
+ // #1417
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 35744
+
+ // #1418
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 35760
+
+ // #1419
+ "NokiaSerifBal"
+ "\377\376\375" // 35776
+
+ // #1420
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 35792
+
+ // #1421
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 35808
+
+ // #1422
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 35872+
+
+ // #1423
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 35904
+
+ // #1424
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 35920
+
+ // #1425
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 35936
+
+ // #1426
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 36000+
+
+ // #1427
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36032
+
+ // #1428
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36048
+
+ // #1429
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 36064
+
+ // #1430
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36080
+
+ // #1431
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 36096
+
+ // #1432
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 36128+
+
+ // #1433
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 36144
+
+ // #1434
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36160
+
+ // #1435
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36192
+
+ // #1436
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36208
+
+ // #1437
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 36224
+
+ // #1438
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36240
+
+ // #1439
+ "NokiaSerifCyr"
+ "\377\376\375" // 36256
+
+ // #1440
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36272
+
+ // #1441
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 36288
+
+ // #1442
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36304
+
+ // #1443
+ "NokiaSerifCyr"
+ "\377\376\375" // 36320
+
+ // #1444
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36336
+
+ // #1445
+ "NokiaSerifGre"
+ "\377\376\375" // 36352
+
+ // #1446
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36368
+
+ // #1447
+ "NokiaSerifGre"
+ "\377\376\375" // 36384
+
+ // #1448
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36400
+
+ // #1449
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 36416
+
+ // #1450
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36432
+
+ // #1451
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 36448
+
+ // #1452
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36464
+
+ // #1453
+ "Lucida Sans"
+ "\377\376\375\374\373" // 36480
+
+ // #1454
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36496
+
+ // #1455
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36528
+
+ // #1456
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36544
+
+ // #1457
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 36576+
+
+ // #1458
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36592
+
+ // #1459
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Script-Complex"
+ "\377\376" // 36624
+
+ // #1460
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36640
+
+ // #1461
+ "Lucida Sans"
+ "\377\376\375\374\373" // 36656
+
+ // #1462
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36672
+
+ // #1463
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 36688
+
+ // #1464
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36704
+
+ // #1465
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 36720
+
+ // #1466
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36736
+
+ // #1467
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 36752
+
+ // #1468
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 36768
+
+ // #1469
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36800
+
+ // #1470
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36816
+
+ // #1471
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 36848
+
+ // #1472
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 36864
+
+ // #1473
+ "LucidaBright"
+ "\377\376\375\374" // 36880
+
+ // #1474
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 36896
+
+ // #1475
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 36928
+
+ // #1476
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 36944
+
+ // #1477
+ "LucidaBright"
+ "\377\376\375\374" // 36960
+
+ // #1478
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 36976
+
+ // #1479
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 37008
+
+ // #1480
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 37024
+
+ // #1481
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 37056
+
+ // #1482
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37072
+
+ // #1483
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37104
+
+ // #1484
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37120
+
+ // #1485
+ "NokiaSerifGre"
+ "\377\376\375" // 37136
+
+ // #1486
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37152
+
+ // #1487
+ "NokiaSerifGre"
+ "\377\376\375" // 37168
+
+ // #1488
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37184
+
+ // #1489
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 37200
+
+ // #1490
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37216
+
+ // #1491
+ "NokiaSerifCE"
+ "\377\376\375\374" // 37232
+
+ // #1492
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37248
+
+ // #1493
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 37280
+
+ // #1494
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37296
+
+ // #1495
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 37312
+
+ // #1496
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 37344+
+
+ // #1497
+ "NokiaSerifCE"
+ "\377\376\375\374" // 37360
+
+ // #1498
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37376
+
+ // #1499
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37408
+
+ // #1500
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37424
+
+ // #1501
+ "LucidaBright"
+ "\377\376\375\374" // 37440
+
+ // #1502
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 37456
+
+ // #1503
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 37472
+
+ // #1504
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37488
+
+ // #1505
+ "NokiaSansTur"
+ "\377\376\375\374" // 37504
+
+ // #1506
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37520
+
+ // #1507
+ "NokiaSansTur"
+ "\377\376\375\374" // 37536
+
+ // #1508
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37552
+
+ // #1509
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 37584
+
+ // #1510
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 37600
+
+ // #1511
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 37632
+
+ // #1512
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37648
+
+ // #1513
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 37680
+
+ // #1514
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37696
+
+ // #1515
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 37728
+
+ // #1516
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37744
+
+ // #1517
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 37776
+
+ // #1518
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 37792
+
+ // #1519
+ "NTC Logo"
+ "\377\376\375\374\373\372\371\370" // 37808
+
+ // #1520
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 37824
+
+ // #1521
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 37856
+
+ // #1522
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 37872
+
+ // #1523
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bookman Old Style"
+ "\377\376\375\374\373\372\371" // 37920+
+
+ // #1524
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 37952
+
+ // #1525
+ "Nokia Sans Cn"
+ "\377\376\375" // 37968
+
+ // #1526
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38000
+
+ // #1527
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 38016
+
+ // #1528
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 38032
+
+ // #1529
+ "LucidaBright"
+ "\377\376\375\374" // 38048
+
+ // #1530
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 38064
+
+ // #1531
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 38080
+
+ // #1532
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 38112+
+
+ // #1533
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 38176+
+
+ // #1534
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38208
+
+ // #1535
+ "\377\376\375\374\373\372\371\370"
+ "cursor.pcf"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 38240
+
+ // #1536
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 38256
+
+ // #1537
+ "\377\376\375\374\373\372\371\370"
+ "Monotype Corsiva"
+ "\377\376\375\374\373\372\371\370" // 38288
+
+ // #1538
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38320
+
+ // #1539
+ "LucidaBright"
+ "\377\376\375\374" // 38336
+
+ // #1540
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 38352
+
+ // #1541
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bookman Old Style"
+ "\377\376\375\374\373\372\371" // 38432+
+
+ // #1542
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38464
+
+ // #1543
+ "LucidaBright"
+ "\377\376\375\374" // 38480
+
+ // #1544
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 38496
+
+ // #1545
+ "NokiaSansCnTur"
+ "\377\376" // 38512
+
+ // #1546
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 38528
+
+ // #1547
+ "NokiaSansCnTur"
+ "\377\376" // 38544
+
+ // #1548
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 38560
+
+ // #1549
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 38592
+
+ // #1550
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 38608
+
+ // #1551
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 38640
+
+ // #1552
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 38656
+
+ // #1553
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 38672
+
+ // #1554
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 38688
+
+ // #1555
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38720
+
+ // #1556
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 38736
+
+ // #1557
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bookman Old Style"
+ "\377\376\375\374\373\372\371" // 38816+
+
+ // #1558
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38848
+
+ // #1559
+ "LucidaBright"
+ "\377\376\375\374" // 38864
+
+ // #1560
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 38880
+
+ // #1561
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 38912
+
+ // #1562
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 38928
+
+ // #1563
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 38944
+
+ // #1564
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 38960
+
+ // #1565
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 38976
+
+ // #1566
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 38992
+
+ // #1567
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39024
+
+ // #1568
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 39040
+
+ // #1569
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39072
+
+ // #1570
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 39088
+
+ // #1571
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 39104
+
+ // #1572
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39120
+
+ // #1573
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 39152
+
+ // #1574
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 39168
+
+ // #1575
+ "Nokia Sans"
+ "\377\376\375\374\373\372" // 39184
+
+ // #1576
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 39200
+
+ // #1577
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 39216
+
+ // #1578
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39232
+
+ // #1579
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 39248
+
+ // #1580
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39264
+
+ // #1581
+ "NokiaSansTur"
+ "\377\376\375\374" // 39280
+
+ // #1582
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 39296
+
+ // #1583
+ "LucidaBright"
+ "\377\376\375\374" // 39312
+
+ // #1584
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 39328
+
+ // #1585
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 39344
+
+ // #1586
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 39360
+
+ // #1587
+ "NokiaSansTur"
+ "\377\376\375\374" // 39376
+
+ // #1588
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 39392
+
+ // #1589
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 39424
+
+ // #1590
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39440
+
+ // #1591
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 39456
+
+ // #1592
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 39472
+
+ // #1593
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "SabonSerif Tur for Nokia"
+ "\377\376\375\374\373\372\371\370" // 39520+
+
+ // #1594
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 39552
+
+ // #1595
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 39568
+
+ // #1596
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39584
+
+ // #1597
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39616
+
+ // #1598
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 39632
+
+ // #1599
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 39648
+
+ // #1600
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39664
+
+ // #1601
+ "Teletext"
+ "\377\376\375\374\373\372\371\370" // 39680
+
+ // #1602
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 39696
+
+ // #1603
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 39728
+
+ // #1604
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 39744
+
+ // #1605
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 39776
+
+ // #1606
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 39792
+
+ // #1607
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 39824
+
+ // #1608
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 39840
+
+ // #1609
+ "NokiaSansGre"
+ "\377\376\375\374" // 39856
+
+ // #1610
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 39872
+
+ // #1611
+ "NokiaSansGre"
+ "\377\376\375\374" // 39888
+
+ // #1612
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 39904
+
+ // #1613
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 39936
+
+ // #1614
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 39952
+
+ // #1615
+ "LucidaBright"
+ "\377\376\375\374" // 39968
+
+ // #1616
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 39984
+
+ // #1617
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 40016
+
+ // #1618
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 40032
+
+ // #1619
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 40048
+
+ // #1620
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40064
+
+ // #1621
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 40080
+
+ // #1622
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 40096
+
+ // #1623
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 40112
+
+ // #1624
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40128
+
+ // #1625
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40160
+
+ // #1626
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 40176
+
+ // #1627
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 40192
+
+ // #1628
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40208
+
+ // #1629
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40240
+
+ // #1630
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 40256
+
+ // #1631
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 40272
+
+ // #1632
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 40288
+
+ // #1633
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 40304
+
+ // #1634
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 40320
+
+ // #1635
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40352
+
+ // #1636
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40368
+
+ // #1637
+ "NokiaSansTur"
+ "\377\376\375\374" // 40384
+
+ // #1638
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 40400
+
+ // #1639
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 40416
+
+ // #1640
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 40432
+
+ // #1641
+ "NokiaSansTur"
+ "\377\376\375\374" // 40448
+
+ // #1642
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 40464
+
+ // #1643
+ "LucidaBright"
+ "\377\376\375\374" // 40480
+
+ // #1644
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 40496
+
+ // #1645
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 40512
+
+ // #1646
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 40528
+
+ // #1647
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 40544
+
+ // #1648
+ "\377\376\375\374\373\372\371\370"
+ "adobe"
+ "\377\376\375" // 40560
+
+ // #1649
+ "\377\376\375\374\373\372\371\370"
+ "Book Antiqua"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 40592
+
+ // #1650
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 40624
+
+ // #1651
+ "LucidaBright"
+ "\377\376\375\374" // 40640
+
+ // #1652
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 40656
+
+ // #1653
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 40672
+
+ // #1654
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40688
+
+ // #1655
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40720
+
+ // #1656
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40736
+
+ // #1657
+ "Nokia Sans Cn"
+ "\377\376\375" // 40752
+
+ // #1658
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 40784
+
+ // #1659
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40816
+
+ // #1660
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 40832
+
+ // #1661
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 40864
+
+ // #1662
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 40880
+
+ // #1663
+ "Arial Unicode MS"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 40912
+
+ // #1664
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 40944
+
+ // #1665
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 40960
+
+ // #1666
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 40976
+
+ // #1667
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 41008
+
+ // #1668
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 41024
+
+ // #1669
+ "NokiaSerifCyr"
+ "\377\376\375" // 41040
+
+ // #1670
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41056
+
+ // #1671
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 41088
+
+ // #1672
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 41104
+
+ // #1673
+ "NokiaSerifCyr"
+ "\377\376\375" // 41120
+
+ // #1674
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41136
+
+ // #1675
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 41168
+
+ // #1676
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41184
+
+ // #1677
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 41216
+
+ // #1678
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41232
+
+ // #1679
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 41248
+
+ // #1680
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 41264
+
+ // #1681
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Sabon Serif for Nokia"
+ "\377\376\375" // 41312+
+
+ // #1682
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 41344
+
+ // #1683
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 41360
+
+ // #1684
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 41376
+
+ // #1685
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 41440+
+
+ // #1686
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 41472
+
+ // #1687
+ "LucidaBright"
+ "\377\376\375\374" // 41488
+
+ // #1688
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 41504
+
+ // #1689
+ "LucidaBright"
+ "\377\376\375\374" // 41520
+
+ // #1690
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 41536
+
+ // #1691
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 41568
+
+ // #1692
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 41584
+
+ // #1693
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 41616
+
+ // #1694
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 41632
+
+ // #1695
+ "Tahoma"
+ "\377\376\375\374\373\372\371\370\367\366" // 41648
+
+ // #1696
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 41664
+
+ // #1697
+ "Liberation Sans"
+ "\377" // 41680
+
+ // #1698
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41696
+
+ // #1699
+ "NokiaSansTitleGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 41728
+
+ // #1700
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41744
+
+ // #1701
+ "NokiaSansTitleGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 41776
+
+ // #1702
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 41792
+
+ // #1703
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Vera Serif"
+ "\377\376\375\374" // 41824
+
+ // #1704
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 41856
+
+ // #1705
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 41872
+
+ // #1706
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 41888
+
+ // #1707
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 41904
+
+ // #1708
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 41920
+
+ // #1709
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 41952
+
+ // #1710
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 41968
+
+ // #1711
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 42000
+
+ // #1712
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42016
+
+ // #1713
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 42032
+
+ // #1714
+ "\377\376\375\374\373\372\371\370"
+ "adobe"
+ "\377\376\375" // 42048
+
+ // #1715
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 42064
+
+ // #1716
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42080
+
+ // #1717
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 42096
+
+ // #1718
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42112
+
+ // #1719
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 42144
+
+ // #1720
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42160
+
+ // #1721
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42192
+
+ // #1722
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 42208
+
+ // #1723
+ "NokiaSansCyr"
+ "\377\376\375\374" // 42224
+
+ // #1724
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 42240
+
+ // #1725
+ "LucidaBright"
+ "\377\376\375\374" // 42256
+
+ // #1726
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 42272
+
+ // #1727
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 42304
+
+ // #1728
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 42320
+
+ // #1729
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42352
+
+ // #1730
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 42368
+
+ // #1731
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 42400
+
+ // #1732
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 42416
+
+ // #1733
+ "NokiaSansCyr"
+ "\377\376\375\374" // 42432
+
+ // #1734
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 42448
+
+ // #1735
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 42480
+
+ // #1736
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 42496
+
+ // #1737
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 42528
+
+ // #1738
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 42544
+
+ // #1739
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 42576
+
+ // #1740
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42592
+
+ // #1741
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 42624
+
+ // #1742
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42640
+
+ // #1743
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42672
+
+ // #1744
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 42688
+
+ // #1745
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 42704
+
+ // #1746
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42720
+
+ // #1747
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 42752
+
+ // #1748
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 42768
+
+ // #1749
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 42784
+
+ // #1750
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 42800
+
+ // #1751
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 42816
+
+ // #1752
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 42832
+
+ // #1753
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 42864
+
+ // #1754
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 42880
+
+ // #1755
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 42896
+
+ // #1756
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 42976+
+
+ // #1757
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 42992
+
+ // #1758
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43008
+
+ // #1759
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43040
+
+ // #1760
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43056
+
+ // #1761
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43088
+
+ // #1762
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 43104
+
+ // #1763
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 43120
+
+ // #1764
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43136
+
+ // #1765
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 43152
+
+ // #1766
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 43168
+
+ // #1767
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43200
+
+ // #1768
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43216
+
+ // #1769
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 43232
+
+ // #1770
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43248
+
+ // #1771
+ "Lucida Sans"
+ "\377\376\375\374\373" // 43264
+
+ // #1772
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43280
+
+ // #1773
+ "Lucida Sans"
+ "\377\376\375\374\373" // 43296
+
+ // #1774
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43312
+
+ // #1775
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 43344
+
+ // #1776
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 43360
+
+ // #1777
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 43376
+
+ // #1778
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43392
+
+ // #1779
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 43408
+
+ // #1780
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43424
+
+ // #1781
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 43440
+
+ // #1782
+ "\377\376\375\374\373\372\371\370"
+ "adobe"
+ "\377\376\375" // 43456
+
+ // #1783
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 43472
+
+ // #1784
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43488
+
+ // #1785
+ "\377\376\375\374\373\372\371\370"
+ "Book Antiqua"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 43520
+
+ // #1786
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 43552
+
+ // #1787
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 43584
+
+ // #1788
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 43600
+
+ // #1789
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 43616
+
+ // #1790
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43632
+
+ // #1791
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 43648
+
+ // #1792
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43664
+
+ // #1793
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "HGPSoeiKakugothicUB"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 43744+
+
+ // #1794
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 43760
+
+ // #1795
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 43792
+
+ // #1796
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 43808
+
+ // #1797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "MS Mincho"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 43872+
+
+ // #1798
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 43888
+
+ // #1799
+ "\377\376\375\374\373\372\371\370"
+ "Haettenschweiler"
+ "\377\376\375\374\373\372\371\370" // 43920
+
+ // #1800
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 43936
+
+ // #1801
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 43952
+
+ // #1802
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 43968
+
+ // #1803
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 43984
+
+ // #1804
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 44000
+
+ // #1805
+ "Lucida Sans"
+ "\377\376\375\374\373" // 44016
+
+ // #1806
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 44032
+
+ // #1807
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 44048
+
+ // #1808
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 44064
+
+ // #1809
+ "NokiaSansCnGre"
+ "\377\376" // 44080
+
+ // #1810
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44096
+
+ // #1811
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 44112
+
+ // #1812
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44128
+
+ // #1813
+ "NokiaSansCnGre"
+ "\377\376" // 44144
+
+ // #1814
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44160
+
+ // #1815
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 44176
+
+ // #1816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 44256+
+
+ // #1817
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 44288
+
+ // #1818
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 44304
+
+ // #1819
+ "Lucida Sans"
+ "\377\376\375\374\373" // 44320
+
+ // #1820
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 44336
+
+ // #1821
+ "NokiaSansGre"
+ "\377\376\375\374" // 44352
+
+ // #1822
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44368
+
+ // #1823
+ "NokiaSansGre"
+ "\377\376\375\374" // 44384
+
+ // #1824
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44400
+
+ // #1825
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 44416
+
+ // #1826
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44432
+
+ // #1827
+ "NokiaSansGre"
+ "\377\376\375\374" // 44448
+
+ // #1828
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44464
+
+ // #1829
+ "NokiaSansGre"
+ "\377\376\375\374" // 44480
+
+ // #1830
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44496
+
+ // #1831
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 44528
+
+ // #1832
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 44544
+
+ // #1833
+ "STZhongsong"
+ "\377\376\375\374\373" // 44560
+
+ // #1834
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44576
+
+ // #1835
+ "NokiaSansCnBal"
+ "\377\376" // 44592
+
+ // #1836
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44608
+
+ // #1837
+ "LucidaBright"
+ "\377\376\375\374" // 44624
+
+ // #1838
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 44640
+
+ // #1839
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 44672
+
+ // #1840
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44688
+
+ // #1841
+ "NokiaSansCnBal"
+ "\377\376" // 44704
+
+ // #1842
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44720
+
+ // #1843
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44752
+
+ // #1844
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 44768
+
+ // #1845
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 44800
+
+ // #1846
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 44816
+
+ // #1847
+ "Davis"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44832
+
+ // #1848
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44848
+
+ // #1849
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Golden Girdle"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44896+
+
+ // #1850
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 44912
+
+ // #1851
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 44928
+
+ // #1852
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 44944
+
+ // #1853
+ "Indigo Joker"
+ "\377\376\375\374" // 44960
+
+ // #1854
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 44992
+
+ // #1855
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45024
+
+ // #1856
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 45040
+
+ // #1857
+ "Tahoma"
+ "\377\376\375\374\373\372\371\370\367\366" // 45056
+
+ // #1858
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 45072
+
+ // #1859
+ "\377\376\375\374\373\372\371\370"
+ "Die Nasty"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 45104
+
+ // #1860
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 45120
+
+ // #1861
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 45136
+
+ // #1862
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45152
+
+ // #1863
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 45168
+
+ // #1864
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 45184
+
+ // #1865
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 45200
+
+ // #1866
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45216
+
+ // #1867
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 45248
+
+ // #1868
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 45264
+
+ // #1869
+ "Century Gothic"
+ "\377\376" // 45280
+
+ // #1870
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 45312
+
+ // #1871
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 45344
+
+ // #1872
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45360
+
+ // #1873
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45392
+
+ // #1874
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 45408
+
+ // #1875
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45440
+
+ // #1876
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 45456
+
+ // #1877
+ "Ikarus Turbulence"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 45488
+
+ // #1878
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 45520
+
+ // #1879
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 45536
+
+ // #1880
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45552
+
+ // #1881
+ "LucidaBright"
+ "\377\376\375\374" // 45568
+
+ // #1882
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 45584
+
+ // #1883
+ "NokiaSerifBal"
+ "\377\376\375" // 45600
+
+ // #1884
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 45616
+
+ // #1885
+ "NokiaSerifBal"
+ "\377\376\375" // 45632
+
+ // #1886
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 45648
+
+ // #1887
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45680
+
+ // #1888
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 45696
+
+ // #1889
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 45712
+
+ // #1890
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 45728
+
+ // #1891
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 45744
+
+ // #1892
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45760
+
+ // #1893
+ "NokiaSansBal"
+ "\377\376\375\374" // 45776
+
+ // #1894
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 45792
+
+ // #1895
+ "NokiaSansBal"
+ "\377\376\375\374" // 45808
+
+ // #1896
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 45824
+
+ // #1897
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 45840
+
+ // #1898
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45856
+
+ // #1899
+ "HGSGothicM"
+ "\377\376\375\374\373\372" // 45872
+
+ // #1900
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 45888
+
+ // #1901
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 45920
+
+ // #1902
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 45936
+
+ // #1903
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 45952
+
+ // #1904
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 45968
+
+ // #1905
+ "\377\376\375\374\373\372\371\370"
+ "HGSGothicE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 46000
+
+ // #1906
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 46016
+
+ // #1907
+ "Lucida Sans"
+ "\377\376\375\374\373" // 46032
+
+ // #1908
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46048
+
+ // #1909
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 46064
+
+ // #1910
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46080
+
+ // #1911
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 46112
+
+ // #1912
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46128
+
+ // #1913
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 46144
+
+ // #1914
+ "Led"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46160
+
+ // #1915
+ "NokiaSansGre"
+ "\377\376\375\374" // 46176
+
+ // #1916
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 46192
+
+ // #1917
+ "NokiaSansGre"
+ "\377\376\375\374" // 46208
+
+ // #1918
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 46224
+
+ // #1919
+ "LucidaBright"
+ "\377\376\375\374" // 46240
+
+ // #1920
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 46256
+
+ // #1921
+ "URW Chancery L"
+ "\377\376" // 46272
+
+ // #1922
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 46288
+
+ // #1923
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 46304
+
+ // #1924
+ "Led"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46320
+
+ // #1925
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46352
+
+ // #1926
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46368
+
+ // #1927
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 46384
+
+ // #1928
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 46432+
+
+ // #1929
+ "SabonSerif CE for Nokia"
+ "\377\376\375\374\373\372\371\370\367" // 46464
+
+ // #1930
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 46496
+
+ // #1931
+ "LucidaBright"
+ "\377\376\375\374" // 46512
+
+ // #1932
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 46528
+
+ // #1933
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 46544
+
+ // #1934
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46560
+
+ // #1935
+ "Lucida Sans"
+ "\377\376\375\374\373" // 46576
+
+ // #1936
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46592
+
+ // #1937
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 46608
+
+ // #1938
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 46688+
+
+ // #1939
+ "LucidaBright"
+ "\377\376\375\374" // 46704
+
+ // #1940
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 46720
+
+ // #1941
+ "NokiaSansTur"
+ "\377\376\375\374" // 46736
+
+ // #1942
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 46752
+
+ // #1943
+ "NokiaSansTur"
+ "\377\376\375\374" // 46768
+
+ // #1944
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 46784
+
+ // #1945
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 46800
+
+ // #1946
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46816
+
+ // #1947
+ "Dotum"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46832
+
+ // #1948
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 46848
+
+ // #1949
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 46880
+
+ // #1950
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46896
+
+ // #1951
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46928
+
+ // #1952
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 46944
+
+ // #1953
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 46960
+
+ // #1954
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 46976
+
+ // #1955
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 46992
+
+ // #1956
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 47008
+
+ // #1957
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47040
+
+ // #1958
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 47056
+
+ // #1959
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 47072
+
+ // #1960
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 47088
+
+ // #1961
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 47120
+
+ // #1962
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 47136
+
+ // #1963
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bookman Old Style"
+ "\377\376\375\374\373\372\371" // 47200+
+
+ // #1964
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 47232
+
+ // #1965
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 47248
+
+ // #1966
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 47264
+
+ // #1967
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47296
+
+ // #1968
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 47312
+
+ // #1969
+ "Lucida Sans"
+ "\377\376\375\374\373" // 47328
+
+ // #1970
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 47344
+
+ // #1971
+ "NokiaSansCyr"
+ "\377\376\375\374" // 47360
+
+ // #1972
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 47376
+
+ // #1973
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 47392
+
+ // #1974
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47408
+
+ // #1975
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 47424
+
+ // #1976
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47440
+
+ // #1977
+ "NokiaSansCyr"
+ "\377\376\375\374" // 47456
+
+ // #1978
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 47472
+
+ // #1979
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 47504
+
+ // #1980
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 47520
+
+ // #1981
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 47536
+
+ // #1982
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 47552
+
+ // #1983
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47584
+
+ // #1984
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 47600
+
+ // #1985
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 47616
+
+ // #1986
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47632
+
+ // #1987
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 47664
+
+ // #1988
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 47680
+
+ // #1989
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 47696
+
+ // #1990
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47712
+
+ // #1991
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 47728
+
+ // #1992
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 47744
+
+ // #1993
+ "LucidaBright"
+ "\377\376\375\374" // 47760
+
+ // #1994
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 47776
+
+ // #1995
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 47808
+
+ // #1996
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 47824
+
+ // #1997
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 47904+
+
+ // #1998
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 47920
+
+ // #1999
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 47968+
+
+ // #2000
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 47984
+
+ // #2001
+ "\377\376\375\374\373\372\371\370"
+ "Batang"
+ "\377\376" // 48000
+
+ // #2002
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 48016
+
+ // #2003
+ "\377\376\375\374\373\372\371\370"
+ "MS PGothic"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 48048
+
+ // #2004
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 48064
+
+ // #2005
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 48080
+
+ // #2006
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 48096
+
+ // #2007
+ "NokiaSerifBal"
+ "\377\376\375" // 48112
+
+ // #2008
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48128
+
+ // #2009
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 48144
+
+ // #2010
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 48160
+
+ // #2011
+ "NokiaSerifBal"
+ "\377\376\375" // 48176
+
+ // #2012
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48192
+
+ // #2013
+ "NokiaSansTur"
+ "\377\376\375\374" // 48208
+
+ // #2014
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48224
+
+ // #2015
+ "\377\376\375\374\373\372\371\370"
+ "Rotis Sans Serif for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 48272
+
+ // #2016
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 48288
+
+ // #2017
+ "NokiaSansTur"
+ "\377\376\375\374" // 48304
+
+ // #2018
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48320
+
+ // #2019
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 48336
+
+ // #2020
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 48352
+
+ // #2021
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 48368
+
+ // #2022
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 48384
+
+ // #2023
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 48416
+
+ // #2024
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 48432
+
+ // #2025
+ "NokiaSansTitleCE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 48464
+
+ // #2026
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48480
+
+ // #2027
+ "NokiaSansTitleCE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 48512
+
+ // #2028
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48528
+
+ // #2029
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 48544
+
+ // #2030
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 48560
+
+ // #2031
+ "\377\376\375\374\373\372\371\370"
+ "Blue Highway Condensed"
+ "\377\376" // 48592
+
+ // #2032
+ "\377\376\375\374\373\372\371\370"
+ "larabiefonts"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 48624
+
+ // #2033
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 48640
+
+ // #2034
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 48656
+
+ // #2035
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 48672
+
+ // #2036
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 48688
+
+ // #2037
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 48704
+
+ // #2038
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 48736+
+
+ // #2039
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 48752
+
+ // #2040
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 48768
+
+ // #2041
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 48784
+
+ // #2042
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 48800
+
+ // #2043
+ "Liberation Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 48832
+
+ // #2044
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 48848
+
+ // #2045
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 48864
+
+ // #2046
+ "\377\376\375\374\373\372\371\370"
+ "adobe"
+ "\377\376\375" // 48880
+
+ // #2047
+ "Lucida Sans"
+ "\377\376\375\374\373" // 48896
+
+ // #2048
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 48912
+
+ // #2049
+ "Lucida Sans"
+ "\377\376\375\374\373" // 48928
+
+ // #2050
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 48944
+
+ // #2051
+ "Lucida Sans"
+ "\377\376\375\374\373" // 48960
+
+ // #2052
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 48976
+
+ // #2053
+ "\377\376\375\374\373\372\371\370"
+ "Independence"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 49008
+
+ // #2054
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 49024
+
+ // #2055
+ "\346""\226""\260""\347""\264""\260""\346""\230""\216""\351""\253""\224"""
+ "\377\376\375\374" // 49040
+
+ // #2056
+ "dynalab"
+ "\377\376\375\374\373\372\371\370\367" // 49056
+
+ // #2057
+ "Lucida Sans"
+ "\377\376\375\374\373" // 49072
+
+ // #2058
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 49088
+
+ // #2059
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49120
+
+ // #2060
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 49136
+
+ // #2061
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 49152
+
+ // #2062
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49168
+
+ // #2063
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 49184
+
+ // #2064
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49200
+
+ // #2065
+ "SabonSerif Bal for Nokia"
+ "\377\376\375\374\373\372\371\370" // 49232
+
+ // #2066
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 49264
+
+ // #2067
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 49296
+
+ // #2068
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49312
+
+ // #2069
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 49344
+
+ // #2070
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 49360
+
+ // #2071
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 49376
+
+ // #2072
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49392
+
+ // #2073
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 49408
+
+ // #2074
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49424
+
+ // #2075
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 49440
+
+ // #2076
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49456
+
+ // #2077
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 49488
+
+ // #2078
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 49504
+
+ // #2079
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 49520
+
+ // #2080
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49536
+
+ // #2081
+ "Bitstream Vera Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 49568
+
+ // #2082
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 49600
+
+ // #2083
+ "\377\376\375\374\373\372\371\370"
+ "STSong"
+ "\377\376" // 49616
+
+ // #2084
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 49632
+
+ // #2085
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 49664
+
+ // #2086
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 49680
+
+ // #2087
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 49712
+
+ // #2088
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49728
+
+ // #2089
+ "Fadgod"
+ "\377\376\375\374\373\372\371\370\367\366" // 49744
+
+ // #2090
+ "\377\376\375\374\373\372\371\370"
+ "larabiefonts"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 49776
+
+ // #2091
+ "Teletext"
+ "\377\376\375\374\373\372\371\370" // 49792
+
+ // #2092
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 49808
+
+ // #2093
+ "Lucida Sans"
+ "\377\376\375\374\373" // 49824
+
+ // #2094
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 49840
+
+ // #2095
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 49856
+
+ // #2096
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49872
+
+ // #2097
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49904
+
+ // #2098
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 49920
+
+ // #2099
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 49936
+
+ // #2100
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49952
+
+ // #2101
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 49968
+
+ // #2102
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 49984
+
+ // #2103
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50016
+
+ // #2104
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 50032
+
+ // #2105
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50064
+
+ // #2106
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 50080
+
+ // #2107
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50112
+
+ // #2108
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 50128
+
+ // #2109
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 50144
+
+ // #2110
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50160
+
+ // #2111
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "RotisSansSerifTur for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 50224+
+
+ // #2112
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 50240
+
+ // #2113
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 50256
+
+ // #2114
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50272
+
+ // #2115
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 50288
+
+ // #2116
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50304
+
+ // #2117
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 50336
+
+ // #2118
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 50352
+
+ // #2119
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50384
+
+ // #2120
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 50400
+
+ // #2121
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 50432
+
+ // #2122
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 50448
+
+ // #2123
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 50480
+
+ // #2124
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50496
+
+ // #2125
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 50512
+
+ // #2126
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50528
+
+ // #2127
+ "SAPIcons"
+ "\377\376\375\374\373\372\371\370" // 50544
+
+ // #2128
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 50560
+
+ // #2129
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Serif SCLF"
+ "\377\376\375\374\373\372\371\370" // 50592+
+
+ // #2130
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 50624
+
+ // #2131
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 50640
+
+ // #2132
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50656
+
+ // #2133
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 50688
+
+ // #2134
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 50704
+
+ // #2135
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 50720
+
+ // #2136
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50736
+
+ // #2137
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 50752
+
+ // #2138
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50768
+
+ // #2139
+ "Lucida Sans"
+ "\377\376\375\374\373" // 50784
+
+ // #2140
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 50800
+
+ // #2141
+ "HYGothic-Extra"
+ "\377\376" // 50816
+
+ // #2142
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 50832
+
+ // #2143
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50864
+
+ // #2144
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 50880
+
+ // #2145
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 50896
+
+ // #2146
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50912
+
+ // #2147
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 50928
+
+ // #2148
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 50944
+
+ // #2149
+ "\377\376\375\374\373\372\371\370"
+ "SimSun"
+ "\377\376" // 50960
+
+ // #2150
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 50976
+
+ // #2151
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 50992
+
+ // #2152
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51008
+
+ // #2153
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 51024
+
+ // #2154
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51040
+
+ // #2155
+ "\377\376\375\374\373\372\371\370"
+ "SimSun"
+ "\377\376" // 51056
+
+ // #2156
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 51072
+
+ // #2157
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 51088
+
+ // #2158
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51104
+
+ // #2159
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 51120
+
+ // #2160
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51136
+
+ // #2161
+ "Teletext"
+ "\377\376\375\374\373\372\371\370" // 51152
+
+ // #2162
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 51168
+
+ // #2163
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 51184
+
+ // #2164
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51200
+
+ // #2165
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51232
+
+ // #2166
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 51248
+
+ // #2167
+ "LucidaBright"
+ "\377\376\375\374" // 51264
+
+ // #2168
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 51280
+
+ // #2169
+ "LucidaBright"
+ "\377\376\375\374" // 51296
+
+ // #2170
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 51312
+
+ // #2171
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 51328
+
+ // #2172
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51344
+
+ // #2173
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51376
+
+ // #2174
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 51392
+
+ // #2175
+ "FZYaoTi"
+ "\377\376\375\374\373\372\371\370\367" // 51408
+
+ // #2176
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 51424
+
+ // #2177
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 51440
+
+ // #2178
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51456
+
+ // #2179
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 51488
+
+ // #2180
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 51504
+
+ // #2181
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 51520
+
+ // #2182
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51536
+
+ // #2183
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "RotisSansSerifCE for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 51632+
+
+ // #2184
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 51648
+
+ // #2185
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 51664
+
+ // #2186
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51680
+
+ // #2187
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 51696
+
+ // #2188
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 51744+
+
+ // #2189
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 51760
+
+ // #2190
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51776
+
+ // #2191
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51808
+
+ // #2192
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 51824
+
+ // #2193
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 51840
+
+ // #2194
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 51856
+
+ // #2195
+ "NokiaSansWide"
+ "\377\376\375" // 51872
+
+ // #2196
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 51888
+
+ // #2197
+ "NokiaSansWide"
+ "\377\376\375" // 51904
+
+ // #2198
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 51920
+
+ // #2199
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 51952
+
+ // #2200
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 51968
+
+ // #2201
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 52000
+
+ // #2202
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 52016
+
+ // #2203
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 52032
+
+ // #2204
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 52048
+
+ // #2205
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 52064
+
+ // #2206
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52080
+
+ // #2207
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 52096
+
+ // #2208
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 52128+
+
+ // #2209
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 52144
+
+ // #2210
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52160
+
+ // #2211
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 52176
+
+ // #2212
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52192
+
+ // #2213
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 52224
+
+ // #2214
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 52240
+
+ // #2215
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 52272
+
+ // #2216
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 52288
+
+ // #2217
+ "\377\376\375\374\373\372\371\370"
+ "Palatino Linotype"
+ "\377\376\375\374\373\372\371" // 52320
+
+ // #2218
+ "linotype"
+ "\377\376\375\374\373\372\371\370" // 52336
+
+ // #2219
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 52352
+
+ // #2220
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52368
+
+ // #2221
+ "\377\376\375\374\373\372\371\370"
+ "Palatino Linotype"
+ "\377\376\375\374\373\372\371" // 52400
+
+ // #2222
+ "linotype"
+ "\377\376\375\374\373\372\371\370" // 52416
+
+ // #2223
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 52432
+
+ // #2224
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 52448
+
+ // #2225
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 52480
+
+ // #2226
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52496
+
+ // #2227
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52528
+
+ // #2228
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 52544
+
+ // #2229
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 52576
+
+ // #2230
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52592
+
+ // #2231
+ "NokiaSansCyr"
+ "\377\376\375\374" // 52608
+
+ // #2232
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52624
+
+ // #2233
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 52640
+
+ // #2234
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52656
+
+ // #2235
+ "NokiaSansCyr"
+ "\377\376\375\374" // 52672
+
+ // #2236
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52688
+
+ // #2237
+ "LucidaBright"
+ "\377\376\375\374" // 52704
+
+ // #2238
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 52720
+
+ // #2239
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52752
+
+ // #2240
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 52768
+
+ // #2241
+ "NokiaSansCnCyr"
+ "\377\376" // 52784
+
+ // #2242
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52800
+
+ // #2243
+ "NokiaSansGre"
+ "\377\376\375\374" // 52816
+
+ // #2244
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52832
+
+ // #2245
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 52896+
+
+ // #2246
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 52912
+
+ // #2247
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 52944
+
+ // #2248
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 52960
+
+ // #2249
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 52992
+
+ // #2250
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 53008
+
+ // #2251
+ "\377\376\375\374\373\372\371\370"
+ "Caption"
+ "\377" // 53024
+
+ // #2252
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 53040
+
+ // #2253
+ "NokiaSansCnCyr"
+ "\377\376" // 53056
+
+ // #2254
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 53072
+
+ // #2255
+ "NokiaSansGre"
+ "\377\376\375\374" // 53088
+
+ // #2256
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 53104
+
+ // #2257
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53136
+
+ // #2258
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53152
+
+ // #2259
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 53184
+
+ // #2260
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 53200
+
+ // #2261
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 53232
+
+ // #2262
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 53248
+
+ // #2263
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 53264
+
+ // #2264
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 53280
+
+ // #2265
+ "Ikarus"
+ "\377\376\375\374\373\372\371\370\367\366" // 53296
+
+ // #2266
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 53328
+
+ // #2267
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "RotisSansSerifTur for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53424+
+
+ // #2268
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 53440
+
+ // #2269
+ "\377\376\375\374\373\372\371\370"
+ "Bazaronite"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 53472+
+
+ // #2270
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 53504
+
+ // #2271
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Vera Sans"
+ "\377\376\375\374\373" // 53536
+
+ // #2272
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 53568
+
+ // #2273
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 53584
+
+ // #2274
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53600
+
+ // #2275
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 53632
+
+ // #2276
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53648
+
+ // #2277
+ "Lucida Sans"
+ "\377\376\375\374\373" // 53664
+
+ // #2278
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53680
+
+ // #2279
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53712
+
+ // #2280
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53728
+
+ // #2281
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53760
+
+ // #2282
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53776
+
+ // #2283
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 53792
+
+ // #2284
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53808
+
+ // #2285
+ "NokiaSansCn"
+ "\377\376\375\374\373" // 53824
+
+ // #2286
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 53840
+
+ // #2287
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 53856
+
+ // #2288
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53872
+
+ // #2289
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 53904
+
+ // #2290
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 53920
+
+ // #2291
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 53936
+
+ // #2292
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53952
+
+ // #2293
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 53968
+
+ // #2294
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 53984
+
+ // #2295
+ "NokiaSansCn"
+ "\377\376\375\374\373" // 54000
+
+ // #2296
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 54016
+
+ // #2297
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54048
+
+ // #2298
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 54064
+
+ // #2299
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 54096
+
+ // #2300
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54112
+
+ // #2301
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 54128
+
+ // #2302
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54144
+
+ // #2303
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 54176
+
+ // #2304
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 54192
+
+ // #2305
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 54208
+
+ // #2306
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54224
+
+ // #2307
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 54256
+
+ // #2308
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54272
+
+ // #2309
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54304
+
+ // #2310
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 54320
+
+ // #2311
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 54352
+
+ // #2312
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 54368
+
+ // #2313
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 54384
+
+ // #2314
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54400
+
+ // #2315
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 54432
+
+ // #2316
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 54448
+
+ // #2317
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54480
+
+ // #2318
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 54496
+
+ // #2319
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Script-Simplex"
+ "\377\376" // 54528
+
+ // #2320
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 54544
+
+ // #2321
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 54576
+
+ // #2322
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 54592
+
+ // #2323
+ "SabonSerif CE for Nokia"
+ "\377\376\375\374\373\372\371\370\367" // 54624
+
+ // #2324
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 54656
+
+ // #2325
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 54688
+
+ // #2326
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 54704
+
+ // #2327
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 54736
+
+ // #2328
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54752
+
+ // #2329
+ "Lucida Sans"
+ "\377\376\375\374\373" // 54768
+
+ // #2330
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 54784
+
+ // #2331
+ "LucidaBright"
+ "\377\376\375\374" // 54800
+
+ // #2332
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 54816
+
+ // #2333
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 54832
+
+ // #2334
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 54848
+
+ // #2335
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 54880
+
+ // #2336
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 54896
+
+ // #2337
+ "NokiaSansGre"
+ "\377\376\375\374" // 54912
+
+ // #2338
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 54928
+
+ // #2339
+ "Lucida Sans"
+ "\377\376\375\374\373" // 54944
+
+ // #2340
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 54960
+
+ // #2341
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Sabon Serif for Nokia"
+ "\377\376\375" // 55008+
+
+ // #2342
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 55040
+
+ // #2343
+ "NokiaSansGre"
+ "\377\376\375\374" // 55056
+
+ // #2344
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 55072
+
+ // #2345
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 55104
+
+ // #2346
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 55120
+
+ // #2347
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 55136
+
+ // #2348
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 55152
+
+ // #2349
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 55184
+
+ // #2350
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 55200
+
+ // #2351
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 55216
+
+ // #2352
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55232
+
+ // #2353
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 55248
+
+ // #2354
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 55328+
+
+ // #2355
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 55344
+
+ // #2356
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55360
+
+ // #2357
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 55376
+
+ // #2358
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55392
+
+ // #2359
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 55408
+
+ // #2360
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 55456+
+
+ // #2361
+ "Lucida Sans"
+ "\377\376\375\374\373" // 55472
+
+ // #2362
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 55488
+
+ // #2363
+ "\377\376\375\374\373\372\371\370"
+ "MS Outlook"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 55520
+
+ // #2364
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 55536
+
+ // #2365
+ "NokiaSerifCE"
+ "\377\376\375\374" // 55552
+
+ // #2366
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 55568
+
+ // #2367
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55600
+
+ // #2368
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 55616
+
+ // #2369
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 55648
+
+ // #2370
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55664
+
+ // #2371
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 55680
+
+ // #2372
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 55696
+
+ // #2373
+ "NokiaSansCnBal"
+ "\377\376" // 55712
+
+ // #2374
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 55728
+
+ // #2375
+ "NokiaSerifCE"
+ "\377\376\375\374" // 55744
+
+ // #2376
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 55760
+
+ // #2377
+ "Teletext"
+ "\377\376\375\374\373\372\371\370" // 55776
+
+ // #2378
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 55792
+
+ // #2379
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 55808
+
+ // #2380
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55824
+
+ // #2381
+ "NokiaSansCnBal"
+ "\377\376" // 55840
+
+ // #2382
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 55856
+
+ // #2383
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 55872
+
+ // #2384
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55888
+
+ // #2385
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 55904
+
+ // #2386
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55920
+
+ // #2387
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 55936
+
+ // #2388
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 55952
+
+ // #2389
+ "LucidaBright"
+ "\377\376\375\374" // 55968
+
+ // #2390
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 55984
+
+ // #2391
+ "Bitstream Vera Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 56016
+
+ // #2392
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 56048
+
+ // #2393
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "HGSSoeiKakugothicUB"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 56096+
+
+ // #2394
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 56112
+
+ // #2395
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 56128
+
+ // #2396
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56144
+
+ // #2397
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 56176
+
+ // #2398
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 56192
+
+ // #2399
+ "LucidaBright"
+ "\377\376\375\374" // 56208
+
+ // #2400
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 56224
+
+ // #2401
+ "LucidaBright"
+ "\377\376\375\374" // 56240
+
+ // #2402
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 56256
+
+ // #2403
+ "LucidaBright"
+ "\377\376\375\374" // 56272
+
+ // #2404
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 56288
+
+ // #2405
+ "LucidaBright"
+ "\377\376\375\374" // 56304
+
+ // #2406
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 56320
+
+ // #2407
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 56336
+
+ // #2408
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56352
+
+ // #2409
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 56368
+
+ // #2410
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 56384
+
+ // #2411
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 56416
+
+ // #2412
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 56432
+
+ // #2413
+ "NokiaSansBal"
+ "\377\376\375\374" // 56448
+
+ // #2414
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 56464
+
+ // #2415
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 56480
+
+ // #2416
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 56496
+
+ // #2417
+ "NokiaSansBal"
+ "\377\376\375\374" // 56512
+
+ // #2418
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 56528
+
+ // #2419
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56560
+
+ // #2420
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 56576
+
+ // #2421
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 56608
+
+ // #2422
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 56624
+
+ // #2423
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56656
+
+ // #2424
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 56672
+
+ // #2425
+ "NokiaSansBal"
+ "\377\376\375\374" // 56688
+
+ // #2426
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 56704
+
+ // #2427
+ "NokiaSansBal"
+ "\377\376\375\374" // 56720
+
+ // #2428
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 56736
+
+ // #2429
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56768
+
+ // #2430
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 56784
+
+ // #2431
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 56800
+
+ // #2432
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56816
+
+ // #2433
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 56832
+
+ // #2434
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56848
+
+ // #2435
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56880
+
+ // #2436
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 56896
+
+ // #2437
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 56912
+
+ // #2438
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56928
+
+ // #2439
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 56944
+
+ // #2440
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56960
+
+ // #2441
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 56976
+
+ // #2442
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 56992
+
+ // #2443
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 57024
+
+ // #2444
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 57040
+
+ // #2445
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 57056
+
+ // #2446
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57072
+
+ // #2447
+ "Bitstream Vera Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 57104
+
+ // #2448
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 57136
+
+ // #2449
+ "LucidaBright"
+ "\377\376\375\374" // 57152
+
+ // #2450
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57168
+
+ // #2451
+ "LucidaBright"
+ "\377\376\375\374" // 57184
+
+ // #2452
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57200
+
+ // #2453
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 57232
+
+ // #2454
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57248
+
+ // #2455
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57280
+
+ // #2456
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 57296
+
+ // #2457
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 57312
+
+ // #2458
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57328
+
+ // #2459
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57360
+
+ // #2460
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 57376
+
+ // #2461
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 57392
+
+ // #2462
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57408
+
+ // #2463
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Vera Serif"
+ "\377\376\375\374" // 57440
+
+ // #2464
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 57472
+
+ // #2465
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 57488
+
+ // #2466
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57504
+
+ // #2467
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 57520
+
+ // #2468
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57536
+
+ // #2469
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57568
+
+ // #2470
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 57584
+
+ // #2471
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 57600
+
+ // #2472
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57616
+
+ // #2473
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57648
+
+ // #2474
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 57664
+
+ // #2475
+ "LucidaBright"
+ "\377\376\375\374" // 57680
+
+ // #2476
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 57696
+
+ // #2477
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Vera Sans"
+ "\377\376\375\374\373" // 57728
+
+ // #2478
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 57760
+
+ // #2479
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 57776
+
+ // #2480
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57792
+
+ // #2481
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 57824
+
+ // #2482
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 57840
+
+ // #2483
+ "NokiaSansGre"
+ "\377\376\375\374" // 57856
+
+ // #2484
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 57872
+
+ // #2485
+ "NokiaSansGre"
+ "\377\376\375\374" // 57888
+
+ // #2486
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 57904
+
+ // #2487
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 57936
+
+ // #2488
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 57952
+
+ // #2489
+ "NokiaSansGre"
+ "\377\376\375\374" // 57968
+
+ // #2490
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 57984
+
+ // #2491
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 58016
+
+ // #2492
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58032
+
+ // #2493
+ "Lucida Sans"
+ "\377\376\375\374\373" // 58048
+
+ // #2494
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 58064
+
+ // #2495
+ "NokiaSansGre"
+ "\377\376\375\374" // 58080
+
+ // #2496
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58096
+
+ // #2497
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 58128
+
+ // #2498
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 58144
+
+ // #2499
+ "NokiaSansCnCyr"
+ "\377\376" // 58160
+
+ // #2500
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58176
+
+ // #2501
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 58192
+
+ // #2502
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 58208
+
+ // #2503
+ "NokiaSansCnCyr"
+ "\377\376" // 58224
+
+ // #2504
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58240
+
+ // #2505
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 58272
+
+ // #2506
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 58288
+
+ // #2507
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 58304
+
+ // #2508
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 58320
+
+ // #2509
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Nokia Serif SCLF"
+ "\377\376\375\374\373\372\371\370" // 58400+
+
+ // #2510
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 58432
+
+ // #2511
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 58464
+
+ // #2512
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 58480
+
+ // #2513
+ "Ikarus Vulture"
+ "\377\376" // 58496
+
+ // #2514
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 58528
+
+ // #2515
+ "LucidaBright"
+ "\377\376\375\374" // 58544
+
+ // #2516
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58560
+
+ // #2517
+ "LucidaBright"
+ "\377\376\375\374" // 58576
+
+ // #2518
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58592
+
+ // #2519
+ "SimHei"
+ "\377\376\375\374\373\372\371\370\367\366" // 58608
+
+ // #2520
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58624
+
+ // #2521
+ "LucidaBright"
+ "\377\376\375\374" // 58640
+
+ // #2522
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58656
+
+ // #2523
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 58672
+
+ // #2524
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58688
+
+ // #2525
+ "\377\376\375\374\373\372\371\370"
+ "HGSoeiKakupoptai"
+ "\377\376\375\374\373\372\371\370" // 58720+
+
+ // #2526
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 58736
+
+ // #2527
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 58752
+
+ // #2528
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58768
+
+ // #2529
+ "NokiaSansCyr"
+ "\377\376\375\374" // 58784
+
+ // #2530
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58800
+
+ // #2531
+ "NokiaSansCyr"
+ "\377\376\375\374" // 58816
+
+ // #2532
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58832
+
+ // #2533
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 58864
+
+ // #2534
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58880
+
+ // #2535
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 58912
+
+ // #2536
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 58928
+
+ // #2537
+ "A.D. MONO"
+ "\377\376\375\374\373\372\371" // 58944
+
+ // #2538
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 58960
+
+ // #2539
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 58976
+
+ // #2540
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 58992
+
+ // #2541
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 59024
+
+ // #2542
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59040
+
+ // #2543
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Vera Sans"
+ "\377\376\375\374\373" // 59072
+
+ // #2544
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 59104
+
+ // #2545
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 59120
+
+ // #2546
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59136
+
+ // #2547
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 59152
+
+ // #2548
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59168
+
+ // #2549
+ "Century"
+ "\377\376\375\374\373\372\371\370\367" // 59184
+
+ // #2550
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 59216
+
+ // #2551
+ "\377\376\375\374\373\372\371\370"
+ "Symbol"
+ "\377\376" // 59232
+
+ // #2552
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 59264
+
+ // #2553
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 59296+
+
+ // #2554
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 59312
+
+ // #2555
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 59360+
+
+ // #2556
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 59376
+
+ // #2557
+ "LucidaBright"
+ "\377\376\375\374" // 59392
+
+ // #2558
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 59408
+
+ // #2559
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 59424
+
+ // #2560
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59440
+
+ // #2561
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 59472
+
+ // #2562
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59488
+
+ // #2563
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 59504
+
+ // #2564
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59520
+
+ // #2565
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 59536
+
+ // #2566
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 59552
+
+ // #2567
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 59584
+
+ // #2568
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59600
+
+ // #2569
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 59632
+
+ // #2570
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59648
+
+ // #2571
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59680
+
+ // #2572
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 59696
+
+ // #2573
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59728
+
+ // #2574
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59744
+
+ // #2575
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 59760
+
+ // #2576
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59776
+
+ // #2577
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 59808
+
+ // #2578
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59824
+
+ // #2579
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 59840
+
+ // #2580
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 59856
+
+ // #2581
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "RotisSansSerifTur for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 59952+
+
+ // #2582
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 59968
+
+ // #2583
+ "LucidaBright"
+ "\377\376\375\374" // 59984
+
+ // #2584
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 60000
+
+ // #2585
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 60016
+
+ // #2586
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60032
+
+ // #2587
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 60048
+
+ // #2588
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60064
+
+ // #2589
+ "NokiaSerifCE"
+ "\377\376\375\374" // 60080
+
+ // #2590
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 60096
+
+ // #2591
+ "NokiaSerifCE"
+ "\377\376\375\374" // 60112
+
+ // #2592
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 60128
+
+ // #2593
+ "Lucida Sans"
+ "\377\376\375\374\373" // 60144
+
+ // #2594
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60160
+
+ // #2595
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 60176
+
+ // #2596
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 60192
+
+ // #2597
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60224
+
+ // #2598
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60240
+
+ // #2599
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60272
+
+ // #2600
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 60288
+
+ // #2601
+ "Lucida Sans"
+ "\377\376\375\374\373" // 60304
+
+ // #2602
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60320
+
+ // #2603
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 60336
+
+ // #2604
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 60352
+
+ // #2605
+ "NokiaSansBal"
+ "\377\376\375\374" // 60368
+
+ // #2606
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 60384
+
+ // #2607
+ "NokiaSansBal"
+ "\377\376\375\374" // 60400
+
+ // #2608
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 60416
+
+ // #2609
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 60432
+
+ // #2610
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60448
+
+ // #2611
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 60480
+
+ // #2612
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60496
+
+ // #2613
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 60512
+
+ // #2614
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60528
+
+ // #2615
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60560
+
+ // #2616
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60576
+
+ // #2617
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60608
+
+ // #2618
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60624
+
+ // #2619
+ "Lucida Sans"
+ "\377\376\375\374\373" // 60640
+
+ // #2620
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 60656
+
+ // #2621
+ "Bitstream Vera Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 60688
+
+ // #2622
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 60720
+
+ // #2623
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 60736
+
+ // #2624
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 60752
+
+ // #2625
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 60832+
+
+ // #2626
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 60848
+
+ // #2627
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Plain-Duplex"
+ "\377\376\375\374" // 60880
+
+ // #2628
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 60896
+
+ // #2629
+ "Teletext"
+ "\377\376\375\374\373\372\371\370" // 60912
+
+ // #2630
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 60928
+
+ // #2631
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 60960
+
+ // #2632
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 60976
+
+ // #2633
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61008
+
+ // #2634
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61024
+
+ // #2635
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61056
+
+ // #2636
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61072
+
+ // #2637
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 61104
+
+ // #2638
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61120
+
+ // #2639
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61152
+
+ // #2640
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61168
+
+ // #2641
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 61184
+
+ // #2642
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61200
+
+ // #2643
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 61232
+
+ // #2644
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61248
+
+ // #2645
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 61264
+
+ // #2646
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 61280
+
+ // #2647
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 61296
+
+ // #2648
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 61312
+
+ // #2649
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 61344
+
+ // #2650
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61360
+
+ // #2651
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 61392
+
+ // #2652
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61408
+
+ // #2653
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 61440
+
+ // #2654
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61456
+
+ // #2655
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 61488
+
+ // #2656
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61504
+
+ // #2657
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 61536
+
+ // #2658
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 61552
+
+ // #2659
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 61568
+
+ // #2660
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61584
+
+ // #2661
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Gothic-German"
+ "\377\376\375" // 61616
+
+ // #2662
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 61632
+
+ // #2663
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 61664
+
+ // #2664
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 61680
+
+ // #2665
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 61712
+
+ // #2666
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61728
+
+ // #2667
+ "LucidaBright"
+ "\377\376\375\374" // 61744
+
+ // #2668
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 61760
+
+ // #2669
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 61776
+
+ // #2670
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61792
+
+ // #2671
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 61824
+
+ // #2672
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61840
+
+ // #2673
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61872
+
+ // #2674
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 61888
+
+ // #2675
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 61920
+
+ // #2676
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 61936
+
+ // #2677
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 61968
+
+ // #2678
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 61984
+
+ // #2679
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 62000
+
+ // #2680
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62016
+
+ // #2681
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 62032
+
+ // #2682
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62048
+
+ // #2683
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 62080
+
+ // #2684
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62096
+
+ // #2685
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 62128
+
+ // #2686
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62144
+
+ // #2687
+ "NokiaSansCnCE"
+ "\377\376\375" // 62160
+
+ // #2688
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 62176
+
+ // #2689
+ "NokiaSansCnCE"
+ "\377\376\375" // 62192
+
+ // #2690
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 62208
+
+ // #2691
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 62224
+
+ // #2692
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62240
+
+ // #2693
+ "NokiaSerifGre"
+ "\377\376\375" // 62256
+
+ // #2694
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 62272
+
+ // #2695
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 62304
+
+ // #2696
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 62320
+
+ // #2697
+ "NokiaSerifGre"
+ "\377\376\375" // 62336
+
+ // #2698
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 62352
+
+ // #2699
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleBal"
+ "\377\376\375\374\373\372\371" // 62384
+
+ // #2700
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 62400
+
+ // #2701
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62432
+
+ // #2702
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 62448
+
+ // #2703
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleBal"
+ "\377\376\375\374\373\372\371" // 62480
+
+ // #2704
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 62496
+
+ // #2705
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 62512
+
+ // #2706
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62528
+
+ // #2707
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 62544
+
+ // #2708
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62560
+
+ // #2709
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 62576
+
+ // #2710
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62592
+
+ // #2711
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 62624
+
+ // #2712
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62640
+
+ // #2713
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62672
+
+ // #2714
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 62688
+
+ // #2715
+ "Lucida Sans"
+ "\377\376\375\374\373" // 62704
+
+ // #2716
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 62720
+
+ // #2717
+ "\377\376\375\374\373\372\371\370"
+ "HYHeadLine-Medium"
+ "\377\376\375\374\373\372\371" // 62752
+
+ // #2718
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 62768
+
+ // #2719
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 62784
+
+ // #2720
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62800
+
+ // #2721
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 62816
+
+ // #2722
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 62832
+
+ // #2723
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 62848
+
+ // #2724
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62864
+
+ // #2725
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 62880
+
+ // #2726
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62896
+
+ // #2727
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 62912
+
+ // #2728
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 62928
+
+ // #2729
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 63008+
+
+ // #2730
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63024
+
+ // #2731
+ "Liberation Sans"
+ "\377" // 63040
+
+ // #2732
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63056
+
+ // #2733
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 63136+
+
+ // #2734
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63152
+
+ // #2735
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "HYMyeongJo-Extra"
+ "\377\376\375\374\373\372\371\370" // 63200+
+
+ // #2736
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 63216
+
+ // #2737
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 63232
+
+ // #2738
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 63248
+
+ // #2739
+ "Lucida Sans"
+ "\377\376\375\374\373" // 63264
+
+ // #2740
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 63280
+
+ // #2741
+ "NokiaSerifBal"
+ "\377\376\375" // 63296
+
+ // #2742
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63312
+
+ // #2743
+ "NokiaSerifBal"
+ "\377\376\375" // 63328
+
+ // #2744
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63344
+
+ // #2745
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 63376
+
+ // #2746
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 63392
+
+ // #2747
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Large"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 63424
+
+ // #2748
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 63456
+
+ // #2749
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 63472
+
+ // #2750
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 63488
+
+ // #2751
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 63520
+
+ // #2752
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63536
+
+ // #2753
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 63552
+
+ // #2754
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 63568
+
+ // #2755
+ "LucidaBright"
+ "\377\376\375\374" // 63584
+
+ // #2756
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 63600
+
+ // #2757
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 63632
+
+ // #2758
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63648
+
+ // #2759
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 63680
+
+ // #2760
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 63696
+
+ // #2761
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 63712
+
+ // #2762
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 63728
+
+ // #2763
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 63744
+
+ // #2764
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 63760
+
+ // #2765
+ "NokiaSansCnTur"
+ "\377\376" // 63776
+
+ // #2766
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63792
+
+ // #2767
+ "NokiaSansCnTur"
+ "\377\376" // 63808
+
+ // #2768
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63824
+
+ // #2769
+ "NokiaSerifBal"
+ "\377\376\375" // 63840
+
+ // #2770
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63856
+
+ // #2771
+ "NokiaSerifBal"
+ "\377\376\375" // 63872
+
+ // #2772
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 63888
+
+ // #2773
+ "\377\376\375\374\373\372\371\370"
+ "Book Antiqua"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 63920
+
+ // #2774
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 63952
+
+ // #2775
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 63984
+
+ // #2776
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64000
+
+ // #2777
+ "MS PMincho"
+ "\377\376\375\374\373\372" // 64016
+
+ // #2778
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 64032
+
+ // #2779
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 64064
+
+ // #2780
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64080
+
+ // #2781
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 64096
+
+ // #2782
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 64112
+
+ // #2783
+ "Liberation Sans"
+ "\377" // 64128
+
+ // #2784
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64144
+
+ // #2785
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 64176
+
+ // #2786
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64192
+
+ // #2787
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 64208
+
+ // #2788
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 64224
+
+ // #2789
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 64240
+
+ // #2790
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64256
+
+ // #2791
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 64272
+
+ // #2792
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64288
+
+ // #2793
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 64304
+
+ // #2794
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64320
+
+ // #2795
+ "\377\376\375\374\373\372\371\370"
+ "HGSeikaishotaiPRO"
+ "\377\376\375\374\373\372\371" // 64352
+
+ // #2796
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 64368
+
+ // #2797
+ "NokiaSansCn"
+ "\377\376\375\374\373" // 64384
+
+ // #2798
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64400
+
+ // #2799
+ "NokiaSansCn"
+ "\377\376\375\374\373" // 64416
+
+ // #2800
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64432
+
+ // #2801
+ "\377\376\375\374\373\372\371\370"
+ "Book Antiqua"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 64464
+
+ // #2802
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 64496
+
+ // #2803
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleTur"
+ "\377\376\375\374\373\372\371" // 64528
+
+ // #2804
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64544
+
+ // #2805
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleTur"
+ "\377\376\375\374\373\372\371" // 64576
+
+ // #2806
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64592
+
+ // #2807
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 64608
+
+ // #2808
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64624
+
+ // #2809
+ "AgfaRotisSansSerif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 64656
+
+ // #2810
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64672
+
+ // #2811
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 64688
+
+ // #2812
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64704
+
+ // #2813
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 64720
+
+ // #2814
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64736
+
+ // #2815
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 64752
+
+ // #2816
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64768
+
+ // #2817
+ "Lucida Sans"
+ "\377\376\375\374\373" // 64784
+
+ // #2818
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64800
+
+ // #2819
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 64832
+
+ // #2820
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64848
+
+ // #2821
+ "ActionIs"
+ "\377\376\375\374\373\372\371\370" // 64864
+
+ // #2822
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64880
+
+ // #2823
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 64912
+
+ // #2824
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 64928
+
+ // #2825
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 64960
+
+ // #2826
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 64976
+
+ // #2827
+ "Lucida Sans"
+ "\377\376\375\374\373" // 64992
+
+ // #2828
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65008
+
+ // #2829
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 65024
+
+ // #2830
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65040
+
+ // #2831
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 65056
+
+ // #2832
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 65072
+
+ // #2833
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 65088
+
+ // #2834
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 65104
+
+ // #2835
+ "Liberation Mono"
+ "\377" // 65120
+
+ // #2836
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65136
+
+ // #2837
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 65168
+
+ // #2838
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65184
+
+ // #2839
+ "NokiaSerifGre"
+ "\377\376\375" // 65200
+
+ // #2840
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65216
+
+ // #2841
+ "NokiaSansBal"
+ "\377\376\375\374" // 65232
+
+ // #2842
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65248
+
+ // #2843
+ "NokiaSerifGre"
+ "\377\376\375" // 65264
+
+ // #2844
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65280
+
+ // #2845
+ "NokiaSansBal"
+ "\377\376\375\374" // 65296
+
+ // #2846
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65312
+
+ // #2847
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65344
+
+ // #2848
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65360
+
+ // #2849
+ "Lucida Sans"
+ "\377\376\375\374\373" // 65376
+
+ // #2850
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65392
+
+ // #2851
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 65424
+
+ // #2852
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65440
+
+ // #2853
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 65456
+
+ // #2854
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65472
+
+ // #2855
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 65488
+
+ // #2856
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65504
+
+ // #2857
+ "Marlett"
+ "\377\376\375\374\373\372\371\370\367" // 65520
+
+ // #2858
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 65536
+
+ // #2859
+ "Lucida Sans"
+ "\377\376\375\374\373" // 65552
+
+ // #2860
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 65568
+
+ // #2861
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 65584
+
+ // #2862
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 65632+
+
+ // #2863
+ "NokiaSansBal"
+ "\377\376\375\374" // 65648
+
+ // #2864
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65664
+
+ // #2865
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 65680
+
+ // #2866
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65696
+
+ // #2867
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 65712
+
+ // #2868
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 65760+
+
+ // #2869
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 65776
+
+ // #2870
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65792
+
+ // #2871
+ "NokiaSansBal"
+ "\377\376\375\374" // 65808
+
+ // #2872
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65824
+
+ // #2873
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 65840
+
+ // #2874
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65856
+
+ // #2875
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 65872
+
+ // #2876
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65888
+
+ // #2877
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 65904
+
+ // #2878
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65920
+
+ // #2879
+ "Liberation Mono"
+ "\377" // 65936
+
+ // #2880
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 65952
+
+ // #2881
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 65984
+
+ // #2882
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66000
+
+ // #2883
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 66016
+
+ // #2884
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 66032
+
+ // #2885
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 66064
+
+ // #2886
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66080
+
+ // #2887
+ "Lucida Sans"
+ "\377\376\375\374\373" // 66096
+
+ // #2888
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66112
+
+ // #2889
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 66128
+
+ // #2890
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 66144
+
+ // #2891
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 66176
+
+ // #2892
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66192
+
+ // #2893
+ "LucidaBright"
+ "\377\376\375\374" // 66208
+
+ // #2894
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 66224
+
+ // #2895
+ "LucidaBright"
+ "\377\376\375\374" // 66240
+
+ // #2896
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 66256
+
+ // #2897
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 66288
+
+ // #2898
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66304
+
+ // #2899
+ "\377\376\375\374\373\372\371\370"
+ "Adventure"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 66336+
+
+ // #2900
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 66352
+
+ // #2901
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 66384
+
+ // #2902
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66400
+
+ // #2903
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Sabon Serif for Nokia"
+ "\377\376\375" // 66464+
+
+ // #2904
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 66496
+
+ // #2905
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 66512
+
+ // #2906
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 66528
+
+ // #2907
+ "LucidaBright"
+ "\377\376\375\374" // 66544
+
+ // #2908
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 66560
+
+ // #2909
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 66592
+
+ // #2910
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66608
+
+ // #2911
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 66624
+
+ // #2912
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 66656+
+
+ // #2913
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 66688
+
+ // #2914
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 66704
+
+ // #2915
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 66736
+
+ // #2916
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66752
+
+ // #2917
+ "LucidaBright"
+ "\377\376\375\374" // 66768
+
+ // #2918
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 66784
+
+ // #2919
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 66816
+
+ // #2920
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 66832
+
+ // #2921
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 66864
+
+ // #2922
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 66880
+
+ // #2923
+ "NokiaSansWideGre"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 66912
+
+ // #2924
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 66928
+
+ // #2925
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "NokiaSansTitleCyr"
+ "\377\376\375\374\373\372\371" // 66976+
+
+ // #2926
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 66992
+
+ // #2927
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "NokiaSansTitleCyr"
+ "\377\376\375\374\373\372\371" // 67040+
+
+ // #2928
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 67056
+
+ // #2929
+ "\377\376\375\374\373\372\371\370"
+ "Gungsuh"
+ "\377" // 67072
+
+ // #2930
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 67088
+
+ // #2931
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 67104
+
+ // #2932
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67120
+
+ // #2933
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67152
+
+ // #2934
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 67168
+
+ // #2935
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 67184
+
+ // #2936
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67200
+
+ // #2937
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 67216
+
+ // #2938
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 67232
+
+ // #2939
+ "LucidaBright"
+ "\377\376\375\374" // 67248
+
+ // #2940
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 67264
+
+ // #2941
+ "URW Chancery L"
+ "\377\376" // 67280
+
+ // #2942
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 67296
+
+ // #2943
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67328
+
+ // #2944
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 67344
+
+ // #2945
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 67360
+
+ // #2946
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67376
+
+ // #2947
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 67392
+
+ // #2948
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 67424+
+
+ // #2949
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 67440
+
+ // #2950
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67456
+
+ // #2951
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 67472
+
+ // #2952
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67488
+
+ // #2953
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 67504
+
+ // #2954
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67520
+
+ // #2955
+ "Lucida Sans"
+ "\377\376\375\374\373" // 67536
+
+ // #2956
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 67552
+
+ // #2957
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67584
+
+ // #2958
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 67600
+
+ // #2959
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67632
+
+ // #2960
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 67648
+
+ // #2961
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 67680
+
+ // #2962
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 67696
+
+ // #2963
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 67712
+
+ // #2964
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67728
+
+ // #2965
+ "Blue Highway"
+ "\377\376\375\374" // 67744
+
+ // #2966
+ "\377\376\375\374\373\372\371\370"
+ "larabiefonts"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 67776
+
+ // #2967
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 67808
+
+ // #2968
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 67824
+
+ // #2969
+ "Blue Highway"
+ "\377\376\375\374" // 67840
+
+ // #2970
+ "\377\376\375\374\373\372\371\370"
+ "larabiefonts"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 67872
+
+ // #2971
+ "NokiaSansCnCE"
+ "\377\376\375" // 67888
+
+ // #2972
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 67904
+
+ // #2973
+ "NokiaSansCnCE"
+ "\377\376\375" // 67920
+
+ // #2974
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 67936
+
+ // #2975
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 67952
+
+ // #2976
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 67968
+
+ // #2977
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 67984
+
+ // #2978
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68000
+
+ // #2979
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 68016
+
+ // #2980
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68032
+
+ // #2981
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 68064
+
+ // #2982
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68080
+
+ // #2983
+ "\377\376\375\374\373\372\371\370"
+ "Arial Narrow"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 68112
+
+ // #2984
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 68144
+
+ // #2985
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 68160
+
+ // #2986
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68176
+
+ // #2987
+ "Lucida Sans"
+ "\377\376\375\374\373" // 68192
+
+ // #2988
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68208
+
+ // #2989
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 68240
+
+ // #2990
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68256
+
+ // #2991
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 68272
+
+ // #2992
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68288
+
+ // #2993
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 68304
+
+ // #2994
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68320
+
+ // #2995
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 68336
+
+ // #2996
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 68384+
+
+ // #2997
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 68416
+
+ // #2998
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68432
+
+ // #2999
+ "Lucida Sans"
+ "\377\376\375\374\373" // 68448
+
+ // #3000
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68464
+
+ // #3001
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 68496
+
+ // #3002
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68512
+
+ // #3003
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 68528
+
+ // #3004
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68544
+
+ // #3005
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 68576
+
+ // #3006
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68592
+
+ // #3007
+ "Lucida Sans"
+ "\377\376\375\374\373" // 68608
+
+ // #3008
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68624
+
+ // #3009
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68656
+
+ // #3010
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 68672
+
+ // #3011
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 68688
+
+ // #3012
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 68704
+
+ // #3013
+ "\377\376\375\374\373\372\371\370"
+ "Arial Narrow"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 68736
+
+ // #3014
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 68768
+
+ // #3015
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 68784
+
+ // #3016
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68800
+
+ // #3017
+ "LucidaBright"
+ "\377\376\375\374" // 68816
+
+ // #3018
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68832
+
+ // #3019
+ "LucidaBright"
+ "\377\376\375\374" // 68848
+
+ // #3020
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68864
+
+ // #3021
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 68880
+
+ // #3022
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68896
+
+ // #3023
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 68912
+
+ // #3024
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 68928
+
+ // #3025
+ "LucidaBright"
+ "\377\376\375\374" // 68944
+
+ // #3026
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 68960
+
+ // #3027
+ "NokiaSansCyr"
+ "\377\376\375\374" // 68976
+
+ // #3028
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 68992
+
+ // #3029
+ "NokiaSansCyr"
+ "\377\376\375\374" // 69008
+
+ // #3030
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69024
+
+ // #3031
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 69056
+
+ // #3032
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 69072
+
+ // #3033
+ "\377\376\375\374\373\372\371\370"
+ "Terminal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 69104
+
+ // #3034
+ "DEC"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 69120
+
+ // #3035
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 69152
+
+ // #3036
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 69168
+
+ // #3037
+ "\377\376\375\374\373\372\371\370"
+ "Tengwar Annatar"
+ "\377\376\375\374\373\372\371\370\367" // 69200
+
+ // #3038
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69216
+
+ // #3039
+ "\377\376\375\374\373\372\371\370"
+ "Tengwar Annatar"
+ "\377\376\375\374\373\372\371\370\367" // 69248
+
+ // #3040
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69264
+
+ // #3041
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69296
+
+ // #3042
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 69312
+
+ // #3043
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 69328
+
+ // #3044
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69344
+
+ // #3045
+ "LucidaBright"
+ "\377\376\375\374" // 69360
+
+ // #3046
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 69376
+
+ // #3047
+ "\377\376\375\374\373\372\371\370"
+ "Babelfish"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 69408
+
+ // #3048
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 69440
+
+ // #3049
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 69456
+
+ // #3050
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69472
+
+ // #3051
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 69504
+
+ // #3052
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 69520
+
+ // #3053
+ "NokiaSerifTur"
+ "\377\376\375" // 69536
+
+ // #3054
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69552
+
+ // #3055
+ "LucidaBright"
+ "\377\376\375\374" // 69568
+
+ // #3056
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 69584
+
+ // #3057
+ "NokiaSerifTur"
+ "\377\376\375" // 69600
+
+ // #3058
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69616
+
+ // #3059
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 69648
+
+ // #3060
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69664
+
+ // #3061
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 69680
+
+ // #3062
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69696
+
+ // #3063
+ "STXingkai"
+ "\377\376\375\374\373\372\371" // 69712
+
+ // #3064
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69728
+
+ // #3065
+ "LucidaBright"
+ "\377\376\375\374" // 69744
+
+ // #3066
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 69760
+
+ // #3067
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 69776
+
+ // #3068
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69792
+
+ // #3069
+ "LucidaBright"
+ "\377\376\375\374" // 69808
+
+ // #3070
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 69824
+
+ // #3071
+ "Hershey-Plain-Duplex-Italic"
+ "\377\376\375\374\373" // 69856
+
+ // #3072
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 69872
+
+ // #3073
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 69888
+
+ // #3074
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 69904
+
+ // #3075
+ "LucidaBright"
+ "\377\376\375\374" // 69920
+
+ // #3076
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 69936
+
+ // #3077
+ "LucidaBright"
+ "\377\376\375\374" // 69952
+
+ // #3078
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 69968
+
+ // #3079
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 69984
+
+ // #3080
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 70000
+
+ // #3081
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 70032
+
+ // #3082
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70048
+
+ // #3083
+ "LucidaBright"
+ "\377\376\375\374" // 70064
+
+ // #3084
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70080
+
+ // #3085
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 70112
+
+ // #3086
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70128
+
+ // #3087
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 70160
+
+ // #3088
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70176
+
+ // #3089
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 70208
+
+ // #3090
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70224
+
+ // #3091
+ "LucidaBright"
+ "\377\376\375\374" // 70240
+
+ // #3092
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70256
+
+ // #3093
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 70272
+
+ // #3094
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 70304+
+
+ // #3095
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 70320
+
+ // #3096
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70336
+
+ // #3097
+ "\377\376\375\374\373\372\371\370"
+ "Arial Narrow"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 70368
+
+ // #3098
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 70400
+
+ // #3099
+ "Lucida Sans"
+ "\377\376\375\374\373" // 70416
+
+ // #3100
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 70432
+
+ // #3101
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 70464
+
+ // #3102
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70480
+
+ // #3103
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 70560+
+
+ // #3104
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70576
+
+ // #3105
+ "AgfaRotisSansSerif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 70608
+
+ // #3106
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70624
+
+ // #3107
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 70640
+
+ // #3108
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70656
+
+ // #3109
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 70688+
+
+ // #3110
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70704
+
+ // #3111
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 70736
+
+ // #3112
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 70752
+
+ // #3113
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 70768
+
+ // #3114
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 70784
+
+ // #3115
+ "Liberation Sans"
+ "\377" // 70800
+
+ // #3116
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 70816
+
+ // #3117
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 70848
+
+ // #3118
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 70864
+
+ // #3119
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 70880
+
+ // #3120
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 70896
+
+ // #3121
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 70912
+
+ // #3122
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 70944+
+
+ // #3123
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 70960
+
+ // #3124
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 71008+
+
+ // #3125
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71040
+
+ // #3126
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 71056
+
+ // #3127
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 71088
+
+ // #3128
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 71104
+
+ // #3129
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 71120
+
+ // #3130
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71136
+
+ // #3131
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 71168
+
+ // #3132
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 71184
+
+ // #3133
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 71200
+
+ // #3134
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71216
+
+ // #3135
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 71232
+
+ // #3136
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71248
+
+ // #3137
+ "LucidaBright"
+ "\377\376\375\374" // 71264
+
+ // #3138
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 71280
+
+ // #3139
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 71296
+
+ // #3140
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71312
+
+ // #3141
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71344
+
+ // #3142
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 71360
+
+ // #3143
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 71376
+
+ // #3144
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 71392
+
+ // #3145
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 71408
+
+ // #3146
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71424
+
+ // #3147
+ "NokiaSansBal"
+ "\377\376\375\374" // 71440
+
+ // #3148
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71456
+
+ // #3149
+ "NokiaSansBal"
+ "\377\376\375\374" // 71472
+
+ // #3150
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71488
+
+ // #3151
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71520
+
+ // #3152
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 71536
+
+ // #3153
+ "Lucida Console"
+ "\377\376" // 71552
+
+ // #3154
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 71568
+
+ // #3155
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 71584
+
+ // #3156
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71600
+
+ // #3157
+ "NokiaSansBal"
+ "\377\376\375\374" // 71616
+
+ // #3158
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71632
+
+ // #3159
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 71664
+
+ // #3160
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71680
+
+ // #3161
+ "NokiaSansBal"
+ "\377\376\375\374" // 71696
+
+ // #3162
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 71712
+
+ // #3163
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 71744
+
+ // #3164
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71760
+
+ // #3165
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 71792
+
+ // #3166
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71808
+
+ // #3167
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 71824
+
+ // #3168
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 71840
+
+ // #3169
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 71856
+
+ // #3170
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 71872
+
+ // #3171
+ "SabonSerif Tur for Nokia"
+ "\377\376\375\374\373\372\371\370" // 71904+
+
+ // #3172
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 71936
+
+ // #3173
+ "Lucida Sans"
+ "\377\376\375\374\373" // 71952
+
+ // #3174
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 71968
+
+ // #3175
+ "Brand New"
+ "\377\376\375\374\373\372\371" // 71984
+
+ // #3176
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 72016
+
+ // #3177
+ "NokiaSansTitle"
+ "\377\376" // 72032
+
+ // #3178
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72048
+
+ // #3179
+ "NokiaSansTitle"
+ "\377\376" // 72064
+
+ // #3180
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72080
+
+ // #3181
+ "NokiaSansCnTur"
+ "\377\376" // 72096
+
+ // #3182
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72112
+
+ // #3183
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 72144
+
+ // #3184
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 72160
+
+ // #3185
+ "Wingdings"
+ "\377\376\375\374\373\372\371" // 72176
+
+ // #3186
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 72192
+
+ // #3187
+ "Lucida Sans"
+ "\377\376\375\374\373" // 72208
+
+ // #3188
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72224
+
+ // #3189
+ "NokiaSansCnTur"
+ "\377\376" // 72240
+
+ // #3190
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72256
+
+ // #3191
+ "\377\376\375\374\373\372\371\370"
+ "Sabon Serif for Nokia"
+ "\377\376\375" // 72288+
+
+ // #3192
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 72320
+
+ // #3193
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 72336
+
+ // #3194
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72352
+
+ // #3195
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 72384
+
+ // #3196
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72400
+
+ // #3197
+ "NokiaSansCnCE"
+ "\377\376\375" // 72416
+
+ // #3198
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72432
+
+ // #3199
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 72464
+
+ // #3200
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72480
+
+ // #3201
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "Hershey-Plain-Triplex-Italic"
+ "\377\376\375\374" // 72544+
+
+ // #3202
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72560
+
+ // #3203
+ "NokiaSansCnCE"
+ "\377\376\375" // 72576
+
+ // #3204
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 72592
+
+ // #3205
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 72608
+
+ // #3206
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72624
+
+ // #3207
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 72640
+
+ // #3208
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 72656
+
+ // #3209
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72688
+
+ // #3210
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72704
+
+ // #3211
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 72736
+
+ // #3212
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72752
+
+ // #3213
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 72784
+
+ // #3214
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 72800
+
+ // #3215
+ "Wingdings 2"
+ "\377\376\375\374\373" // 72816
+
+ // #3216
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 72832
+
+ // #3217
+ "MS Gothic"
+ "\377\376\375\374\373\372\371" // 72848
+
+ // #3218
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 72864
+
+ // #3219
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 72880
+
+ // #3220
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72896
+
+ // #3221
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 72928
+
+ // #3222
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72944
+
+ // #3223
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 72976
+
+ // #3224
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 72992
+
+ // #3225
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 73008
+
+ // #3226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 73056+
+
+ // #3227
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 73072
+
+ // #3228
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 73088
+
+ // #3229
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 73104
+
+ // #3230
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 73184+
+
+ // #3231
+ "LucidaBright"
+ "\377\376\375\374" // 73200
+
+ // #3232
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 73216
+
+ // #3233
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 73232
+
+ // #3234
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 73312+
+
+ // #3235
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 73328
+
+ // #3236
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 73344
+
+ // #3237
+ "\377\376\375\374\373\372\371\370"
+ "HGGothicE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 73376+
+
+ // #3238
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 73392
+
+ // #3239
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 73424
+
+ // #3240
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 73440
+
+ // #3241
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 73472
+
+ // #3242
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 73488
+
+ // #3243
+ "LucidaBright"
+ "\377\376\375\374" // 73504
+
+ // #3244
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 73520
+
+ // #3245
+ "NokiaSansCyr"
+ "\377\376\375\374" // 73536
+
+ // #3246
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 73552
+
+ // #3247
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 73568
+
+ // #3248
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 73584
+
+ // #3249
+ "HGGothicM"
+ "\377\376\375\374\373\372\371" // 73600
+
+ // #3250
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 73616
+
+ // #3251
+ "NokiaSansCyr"
+ "\377\376\375\374" // 73632
+
+ // #3252
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 73648
+
+ // #3253
+ "Lucida Sans"
+ "\377\376\375\374\373" // 73664
+
+ // #3254
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 73680
+
+ // #3255
+ "\377\376\375\374\373\372\371\370"
+ "Betsy Flanagan"
+ "\377\376\375\374\373\372\371\370\367\366" // 73712
+
+ // #3256
+ "\377\376\375\374\373\372\371\370"
+ "larabiefonts"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 73744
+
+ // #3257
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 73760
+
+ // #3258
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 73776
+
+ // #3259
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 73792
+
+ // #3260
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 73808
+
+ // #3261
+ "NokiaSansWide"
+ "\377\376\375" // 73824
+
+ // #3262
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 73840
+
+ // #3263
+ "Lucida Sans"
+ "\377\376\375\374\373" // 73856
+
+ // #3264
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 73872
+
+ // #3265
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 73904
+
+ // #3266
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 73920
+
+ // #3267
+ "NokiaSansWide"
+ "\377\376\375" // 73936
+
+ // #3268
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 73952
+
+ // #3269
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 73984
+
+ // #3270
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74000
+
+ // #3271
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 74032
+
+ // #3272
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 74048
+
+ // #3273
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 74080
+
+ // #3274
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 74096
+
+ // #3275
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 74112
+
+ // #3276
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74128
+
+ // #3277
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 74160
+
+ // #3278
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 74176
+
+ // #3279
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 74192
+
+ // #3280
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74208
+
+ // #3281
+ "\377\376\375\374\373\372\371\370"
+ "HYShortSamul-Medium"
+ "\377\376\375\374\373" // 74240
+
+ // #3282
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 74256
+
+ // #3283
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 74336+
+
+ // #3284
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 74368
+
+ // #3285
+ "Lucida Sans"
+ "\377\376\375\374\373" // 74384
+
+ // #3286
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 74400
+
+ // #3287
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 74416
+
+ // #3288
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 74432
+
+ // #3289
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 74464
+
+ // #3290
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 74480
+
+ // #3291
+ "LucidaBright"
+ "\377\376\375\374" // 74496
+
+ // #3292
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 74512
+
+ // #3293
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 74528
+
+ // #3294
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74544
+
+ // #3295
+ "STLiti"
+ "\377\376\375\374\373\372\371\370\367\366" // 74560
+
+ // #3296
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 74576
+
+ // #3297
+ "NokiaSansCyr"
+ "\377\376\375\374" // 74592
+
+ // #3298
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 74608
+
+ // #3299
+ "NokiaSansCyr"
+ "\377\376\375\374" // 74624
+
+ // #3300
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 74640
+
+ // #3301
+ "LucidaBright"
+ "\377\376\375\374" // 74656
+
+ // #3302
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 74672
+
+ // #3303
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74704
+
+ // #3304
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 74720
+
+ // #3305
+ "\377\376\375\374\373\372\371\370"
+ "Arial Narrow"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 74752
+
+ // #3306
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 74784
+
+ // #3307
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74816
+
+ // #3308
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 74832
+
+ // #3309
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Charter"
+ "\377\376\375\374\373\372\371" // 74864
+
+ // #3310
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 74896
+
+ // #3311
+ "HYGungSo-Bold"
+ "\377\376\375" // 74912
+
+ // #3312
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 74928
+
+ // #3313
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 74944
+
+ // #3314
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 74960
+
+ // #3315
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 74976
+
+ // #3316
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 74992
+
+ // #3317
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75024
+
+ // #3318
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75040
+
+ // #3319
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans Title SemiBold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 75088
+
+ // #3320
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 75120
+
+ // #3321
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75152
+
+ // #3322
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75168
+
+ // #3323
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75200
+
+ // #3324
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75216
+
+ // #3325
+ "\377\376\375\374\373\372\371\370"
+ "Rotis Sans Serif for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 75264
+
+ // #3326
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 75280
+
+ // #3327
+ "Lucida Sans"
+ "\377\376\375\374\373" // 75296
+
+ // #3328
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75312
+
+ // #3329
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 75328
+
+ // #3330
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 75344
+
+ // #3331
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 75360
+
+ // #3332
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75376
+
+ // #3333
+ "Wingdings 3"
+ "\377\376\375\374\373" // 75392
+
+ // #3334
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 75408
+
+ // #3335
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75440
+
+ // #3336
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75456
+
+ // #3337
+ "\377\376\375\374\373\372\371\370"
+ "\355""\234""\264""\353""\250""\274""\353""\247""\244""\354""\247""\201""\354""\262""\264"""
+ "\377\376\375\374\373\372\371\370\367" // 75488
+
+ // #3338
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 75504
+
+ // #3339
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75536
+
+ // #3340
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75552
+
+ // #3341
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75584
+
+ // #3342
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75600
+
+ // #3343
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 75632
+
+ // #3344
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75648
+
+ // #3345
+ "SAPDings"
+ "\377\376\375\374\373\372\371\370" // 75664
+
+ // #3346
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 75680
+
+ // #3347
+ "Lucida Sans"
+ "\377\376\375\374\373" // 75696
+
+ // #3348
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75712
+
+ // #3349
+ "\377\376\375\374\373\372\371\370"
+ "\347""\264""\260""\346""\230""\216""\351""\253""\224"""
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 75744+
+
+ // #3350
+ "dynalab"
+ "\377\376\375\374\373\372\371\370\367" // 75760
+
+ // #3351
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 75792
+
+ // #3352
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75808
+
+ // #3353
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 75824
+
+ // #3354
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 75840
+
+ // #3355
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75872
+
+ // #3356
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75888
+
+ // #3357
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 75920
+
+ // #3358
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 75936
+
+ // #3359
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 75952
+
+ // #3360
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 75968
+
+ // #3361
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 75984
+
+ // #3362
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76000
+
+ // #3363
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 76016
+
+ // #3364
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 76032
+
+ // #3365
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 76048
+
+ // #3366
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76064
+
+ // #3367
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 76128+
+
+ // #3368
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 76160
+
+ // #3369
+ "Lucida Sans"
+ "\377\376\375\374\373" // 76176
+
+ // #3370
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 76192
+
+ // #3371
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 76208
+
+ // #3372
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76224
+
+ // #3373
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 76240
+
+ // #3374
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 76320+
+
+ // #3375
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 76336
+
+ // #3376
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 76384+
+
+ // #3377
+ "HYSinMyeongJo-Medium"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 76416
+
+ // #3378
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 76432
+
+ // #3379
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 76448
+
+ // #3380
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 76464
+
+ // #3381
+ "cmr10"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76480
+
+ // #3382
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 76496
+
+ // #3383
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 76512
+
+ // #3384
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76528
+
+ // #3385
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76560
+
+ // #3386
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 76576
+
+ // #3387
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 76592
+
+ // #3388
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76608
+
+ // #3389
+ "Nokia Sans"
+ "\377\376\375\374\373\372" // 76624
+
+ // #3390
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 76656
+
+ // #3391
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76688
+
+ // #3392
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 76704
+
+ // #3393
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 76720
+
+ // #3394
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 76768+
+
+ // #3395
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 76784
+
+ // #3396
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 76800
+
+ // #3397
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 76816
+
+ // #3398
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 76832
+
+ // #3399
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 76864
+
+ // #3400
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 76880
+
+ // #3401
+ "Nokia Logo"
+ "\377\376\375\374\373\372" // 76896
+
+ // #3402
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 76912
+
+ // #3403
+ "Flubber"
+ "\377\376\375\374\373\372\371\370\367" // 76928
+
+ // #3404
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 76960
+
+ // #3405
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 76992
+
+ // #3406
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77008
+
+ // #3407
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 77040
+
+ // #3408
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77056
+
+ // #3409
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 77072
+
+ // #3410
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 77088
+
+ // #3411
+ "NokiaSansCyr"
+ "\377\376\375\374" // 77104
+
+ // #3412
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77120
+
+ // #3413
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 77152+
+
+ // #3414
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77168
+
+ // #3415
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77200
+
+ // #3416
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 77216
+
+ // #3417
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 77232
+
+ // #3418
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 77248
+
+ // #3419
+ "NokiaSansCyr"
+ "\377\376\375\374" // 77264
+
+ // #3420
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77280
+
+ // #3421
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "NokiaSansWideCE"
+ "\377\376\375\374\373\372\371\370\367" // 77344+
+
+ // #3422
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77360
+
+ // #3423
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 77376
+
+ // #3424
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 77392
+
+ // #3425
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 77408
+
+ // #3426
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77424
+
+ // #3427
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 77440
+
+ // #3428
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77456
+
+ // #3429
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 77472
+
+ // #3430
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 77488
+
+ // #3431
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 77520
+
+ // #3432
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 77536
+
+ // #3433
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 77552
+
+ // #3434
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77568
+
+ // #3435
+ "\377\376\375\374\373\372\371\370"
+ "Tengwar Annatar"
+ "\377\376\375\374\373\372\371\370\367" // 77600
+
+ // #3436
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77616
+
+ // #3437
+ "STXihei"
+ "\377\376\375\374\373\372\371\370\367" // 77632
+
+ // #3438
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77648
+
+ // #3439
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 77664
+
+ // #3440
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77680
+
+ // #3441
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77712
+
+ // #3442
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 77728
+
+ // #3443
+ "NokiaSerifCE"
+ "\377\376\375\374" // 77744
+
+ // #3444
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77760
+
+ // #3445
+ "NokiaSerifCE"
+ "\377\376\375\374" // 77776
+
+ // #3446
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 77792
+
+ // #3447
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 77808
+
+ // #3448
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77824
+
+ // #3449
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 77856
+
+ // #3450
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 77872
+
+ // #3451
+ "Nokia Sans Cn"
+ "\377\376\375" // 77888
+
+ // #3452
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 77920
+
+ // #3453
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 77936
+
+ // #3454
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77952
+
+ // #3455
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 77968
+
+ // #3456
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 77984
+
+ // #3457
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans SC"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78016
+
+ // #3458
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 78048
+
+ // #3459
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 78064
+
+ // #3460
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78080
+
+ // #3461
+ "\377\376\375\374\373\372\371\370"
+ "STFangsong"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 78112
+
+ // #3462
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78128
+
+ // #3463
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 78144
+
+ // #3464
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78160
+
+ // #3465
+ "Liberation Mono"
+ "\377" // 78176
+
+ // #3466
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78192
+
+ // #3467
+ "\377\376\375\374\373\372\371\370"
+ "Palatino Linotype"
+ "\377\376\375\374\373\372\371" // 78224
+
+ // #3468
+ "linotype"
+ "\377\376\375\374\373\372\371\370" // 78240
+
+ // #3469
+ "RotisSansSerifBal for Nokia"
+ "\377\376\375\374\373" // 78272
+
+ // #3470
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 78288
+
+ // #3471
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 78320
+
+ // #3472
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 78336
+
+ // #3473
+ "NokiaSansWide"
+ "\377\376\375" // 78352
+
+ // #3474
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78368
+
+ // #3475
+ "NokiaSansWide"
+ "\377\376\375" // 78384
+
+ // #3476
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78400
+
+ // #3477
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 78416
+
+ // #3478
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 78432
+
+ // #3479
+ "Lucida Sans"
+ "\377\376\375\374\373" // 78448
+
+ // #3480
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 78464
+
+ // #3481
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 78496
+
+ // #3482
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 78512
+
+ // #3483
+ "NokiaSerifTur"
+ "\377\376\375" // 78528
+
+ // #3484
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78544
+
+ // #3485
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78576
+
+ // #3486
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 78592
+
+ // #3487
+ "NokiaSerifTur"
+ "\377\376\375" // 78608
+
+ // #3488
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78624
+
+ // #3489
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 78640
+
+ // #3490
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 78656
+
+ // #3491
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78688
+
+ // #3492
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 78704
+
+ // #3493
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 78752+
+
+ // #3494
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 78768
+
+ // #3495
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 78800
+
+ // #3496
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 78816
+
+ // #3497
+ "\377\376\375\374\373\372\371\370"
+ "Rotis Sans Serif for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 78864
+
+ // #3498
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 78880
+
+ // #3499
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 78896
+
+ // #3500
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 78912
+
+ // #3501
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 78928
+
+ // #3502
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 78944
+
+ // #3503
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 78976
+
+ // #3504
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 78992
+
+ // #3505
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 79024
+
+ // #3506
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 79040
+
+ // #3507
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 79056
+
+ // #3508
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79072
+
+ // #3509
+ "NokiaSansWide"
+ "\377\376\375" // 79088
+
+ // #3510
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 79104
+
+ // #3511
+ "NokiaSansWide"
+ "\377\376\375" // 79120
+
+ // #3512
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 79136
+
+ // #3513
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 79152
+
+ // #3514
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79168
+
+ // #3515
+ "\377\376\375\374\373\372\371\370"
+ "HYGraphic-Medium"
+ "\377\376\375\374\373\372\371\370" // 79200+
+
+ // #3516
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 79216
+
+ // #3517
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79248
+
+ // #3518
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79264
+
+ // #3519
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79296
+
+ // #3520
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79312
+
+ // #3521
+ "Lucida Sans"
+ "\377\376\375\374\373" // 79328
+
+ // #3522
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79344
+
+ // #3523
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 79376
+
+ // #3524
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79392
+
+ // #3525
+ "\377\376\375\374\373\372\371\370"
+ "Dingbats"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 79424
+
+ // #3526
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 79440
+
+ // #3527
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 79472
+
+ // #3528
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79488
+
+ // #3529
+ "Microsoft Sans Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 79520+
+
+ // #3530
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 79536
+
+ // #3531
+ "\377\376\375\374\373\372\371\370"
+ "Rotis Sans Serif for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 79584
+
+ // #3532
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 79600
+
+ // #3533
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 79616
+
+ // #3534
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79632
+
+ // #3535
+ "cmex10"
+ "\377\376\375\374\373\372\371\370\367\366" // 79648
+
+ // #3536
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 79664
+
+ // #3537
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79696
+
+ // #3538
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79712
+
+ // #3539
+ "STKaiti"
+ "\377\376\375\374\373\372\371\370\367" // 79728
+
+ // #3540
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 79744
+
+ // #3541
+ "\377\376\375\374\373\372\371\370"
+ "FakeReceipt"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79776
+
+ // #3542
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 79808
+
+ // #3543
+ "GulimChe"
+ "\377\376\375\374\373\372\371\370" // 79824
+
+ // #3544
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 79840
+
+ // #3545
+ "Lucida Sans"
+ "\377\376\375\374\373" // 79856
+
+ // #3546
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79872
+
+ // #3547
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 79904
+
+ // #3548
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 79920
+
+ // #3549
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 79952
+
+ // #3550
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 79968
+
+ // #3551
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80000
+
+ // #3552
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 80016
+
+ // #3553
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 80032
+
+ // #3554
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80048
+
+ // #3555
+ "Nokia Standard Multiscript"
+ "\377\376\375\374\373\372" // 80080
+
+ // #3556
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 80112
+
+ // #3557
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 80128
+
+ // #3558
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80144
+
+ // #3559
+ "NokiaSansCnGre"
+ "\377\376" // 80160
+
+ // #3560
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 80176
+
+ // #3561
+ "FZShuTi"
+ "\377\376\375\374\373\372\371\370\367" // 80192
+
+ // #3562
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 80208
+
+ // #3563
+ "NokiaSansCnGre"
+ "\377\376" // 80224
+
+ // #3564
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 80240
+
+ // #3565
+ "\377\376\375\374\373\372\371\370"
+ "Edgewater"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 80272
+
+ // #3566
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 80304
+
+ // #3567
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 80320
+
+ // #3568
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 80336
+
+ // #3569
+ "\377\376\375\374\373\372\371\370"
+ "Terminal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 80368
+
+ // #3570
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 80416+
+
+ // #3571
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 80432
+
+ // #3572
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80448
+
+ // #3573
+ "Liberation Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 80480
+
+ // #3574
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 80496
+
+ // #3575
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 80512
+
+ // #3576
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80528
+
+ // #3577
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 80544
+
+ // #3578
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 80560
+
+ // #3579
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80592
+
+ // #3580
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 80608
+
+ // #3581
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 80624
+
+ // #3582
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 80672+
+
+ // #3583
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 80688
+
+ // #3584
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 80704
+
+ // #3585
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 80720
+
+ // #3586
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 80800+
+
+ // #3587
+ "Lucida Sans"
+ "\377\376\375\374\373" // 80816
+
+ // #3588
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 80832
+
+ // #3589
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 80848
+
+ // #3590
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80864
+
+ // #3591
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 80880
+
+ // #3592
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 80896
+
+ // #3593
+ "Nokia Serif"
+ "\377\376\375\374\373" // 80912
+
+ // #3594
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 80944
+
+ // #3595
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 80976
+
+ // #3596
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 80992
+
+ // #3597
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81008
+
+ // #3598
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81024
+
+ // #3599
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 81056
+
+ // #3600
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 81072
+
+ // #3601
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81088
+
+ // #3602
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81104
+
+ // #3603
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 81120
+
+ // #3604
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81136
+
+ // #3605
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 81152
+
+ // #3606
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81168
+
+ // #3607
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 81184
+
+ // #3608
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 81200
+
+ // #3609
+ "Lucida Sans"
+ "\377\376\375\374\373" // 81216
+
+ // #3610
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 81232
+
+ // #3611
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "Nokia Sans Title Bold"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81312+
+
+ // #3612
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 81344
+
+ // #3613
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81360
+
+ // #3614
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81376
+
+ // #3615
+ "\377\376\375\374\373\372\371\370"
+ "cmmi10"
+ "\377\376" // 81392
+
+ // #3616
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 81408
+
+ // #3617
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 81424
+
+ // #3618
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81440
+
+ // #3619
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81456
+
+ // #3620
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81472
+
+ // #3621
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81488
+
+ // #3622
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81504
+
+ // #3623
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81520
+
+ // #3624
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81536
+
+ // #3625
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 81568
+
+ // #3626
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81584
+
+ // #3627
+ "Liberation Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 81616
+
+ // #3628
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 81632
+
+ // #3629
+ "NokiaSansBal"
+ "\377\376\375\374" // 81648
+
+ // #3630
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 81664
+
+ // #3631
+ "NokiaSansBal"
+ "\377\376\375\374" // 81680
+
+ // #3632
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 81696
+
+ // #3633
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81728
+
+ // #3634
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 81744
+
+ // #3635
+ "HydrogenWhiskey"
+ "\377" // 81760
+
+ // #3636
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 81792
+
+ // #3637
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 81808
+
+ // #3638
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 81824
+
+ // #3639
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Charter"
+ "\377\376\375\374\373\372\371" // 81856
+
+ // #3640
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 81888
+
+ // #3641
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 81920
+
+ // #3642
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81936
+
+ // #3643
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 81968
+
+ // #3644
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 81984
+
+ // #3645
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 82016
+
+ // #3646
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82032
+
+ // #3647
+ "NokiaSansBal"
+ "\377\376\375\374" // 82048
+
+ // #3648
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 82064
+
+ // #3649
+ "NokiaSansBal"
+ "\377\376\375\374" // 82080
+
+ // #3650
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 82096
+
+ // #3651
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 82128
+
+ // #3652
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82144
+
+ // #3653
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 82160
+
+ // #3654
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82176
+
+ // #3655
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 82192
+
+ // #3656
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82208
+
+ // #3657
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 82224
+
+ // #3658
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82240
+
+ // #3659
+ "LucidaBright"
+ "\377\376\375\374" // 82256
+
+ // #3660
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 82272
+
+ // #3661
+ "Nokia Serif"
+ "\377\376\375\374\373" // 82288
+
+ // #3662
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 82320
+
+ // #3663
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82352
+
+ // #3664
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82368
+
+ // #3665
+ "LucidaBright"
+ "\377\376\375\374" // 82384
+
+ // #3666
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 82400
+
+ // #3667
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 82416
+
+ // #3668
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 82432
+
+ // #3669
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 82448
+
+ // #3670
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 82464
+
+ // #3671
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 82480
+
+ // #3672
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82496
+
+ // #3673
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 82512
+
+ // #3674
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82528
+
+ // #3675
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 82544
+
+ // #3676
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 82560
+
+ // #3677
+ "NSimSun"
+ "\377\376\375\374\373\372\371\370\367" // 82576
+
+ // #3678
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 82592
+
+ // #3679
+ "Lucida Sans"
+ "\377\376\375\374\373" // 82608
+
+ // #3680
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82624
+
+ // #3681
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 82640
+
+ // #3682
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 82720+
+
+ // #3683
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 82752
+
+ // #3684
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82768
+
+ // #3685
+ "STXinwei"
+ "\377\376\375\374\373\372\371\370" // 82784
+
+ // #3686
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 82800
+
+ // #3687
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 82832
+
+ // #3688
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 82848
+
+ // #3689
+ "Lucida Sans"
+ "\377\376\375\374\373" // 82864
+
+ // #3690
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82880
+
+ // #3691
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 82912
+
+ // #3692
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 82928
+
+ // #3693
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 82944
+
+ // #3694
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 82960
+
+ // #3695
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 82992
+
+ // #3696
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 83008
+
+ // #3697
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 83040
+
+ // #3698
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83056
+
+ // #3699
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 83088
+
+ // #3700
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 83104
+
+ // #3701
+ "NokiaSerifTur"
+ "\377\376\375" // 83120
+
+ // #3702
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 83136
+
+ // #3703
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83168
+
+ // #3704
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 83184
+
+ // #3705
+ "NokiaSerifTur"
+ "\377\376\375" // 83200
+
+ // #3706
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 83216
+
+ // #3707
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 83248
+
+ // #3708
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83264
+
+ // #3709
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 83280
+
+ // #3710
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83296
+
+ // #3711
+ "LucidaBright"
+ "\377\376\375\374" // 83312
+
+ // #3712
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83328
+
+ // #3713
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 83344
+
+ // #3714
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83360
+
+ // #3715
+ "LucidaBright"
+ "\377\376\375\374" // 83376
+
+ // #3716
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83392
+
+ // #3717
+ "LucidaBright"
+ "\377\376\375\374" // 83408
+
+ // #3718
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83424
+
+ // #3719
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 83456
+
+ // #3720
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 83472
+
+ // #3721
+ "NokiaSerifCE"
+ "\377\376\375\374" // 83488
+
+ // #3722
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 83504
+
+ // #3723
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 83520
+
+ // #3724
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83536
+
+ // #3725
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 83552
+
+ // #3726
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83568
+
+ // #3727
+ "Larabiefont"
+ "\377\376\375\374\373" // 83584
+
+ // #3728
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 83616
+
+ // #3729
+ "NokiaSerifCE"
+ "\377\376\375\374" // 83632
+
+ // #3730
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 83648
+
+ // #3731
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 83664
+
+ // #3732
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83680
+
+ // #3733
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 83696
+
+ // #3734
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83712
+
+ // #3735
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 83728
+
+ // #3736
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83744
+
+ // #3737
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 83760
+
+ // #3738
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83776
+
+ // #3739
+ "Nokia Serif"
+ "\377\376\375\374\373" // 83792
+
+ // #3740
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 83824
+
+ // #3741
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 83840
+
+ // #3742
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 83856
+
+ // #3743
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 83888
+
+ // #3744
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 83904
+
+ // #3745
+ "OCRB"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 83920
+
+ // #3746
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 83936
+
+ // #3747
+ "HGSoeiKakugothicUB"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 83968
+
+ // #3748
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 83984
+
+ // #3749
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 84016
+
+ // #3750
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84032
+
+ // #3751
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 84048
+
+ // #3752
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84064
+
+ // #3753
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 84096
+
+ // #3754
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84112
+
+ // #3755
+ "LucidaBright"
+ "\377\376\375\374" // 84128
+
+ // #3756
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84144
+
+ // #3757
+ "LucidaBright"
+ "\377\376\375\374" // 84160
+
+ // #3758
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84176
+
+ // #3759
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84208
+
+ // #3760
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 84224
+
+ // #3761
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 84240
+
+ // #3762
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 84256
+
+ // #3763
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 84272
+
+ // #3764
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 84288
+
+ // #3765
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 84304
+
+ // #3766
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84320
+
+ // #3767
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 84336
+
+ // #3768
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84352
+
+ // #3769
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 84384
+
+ // #3770
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84400
+
+ // #3771
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 84416
+
+ // #3772
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84432
+
+ // #3773
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 84448
+
+ // #3774
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 84512+
+
+ // #3775
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 84544
+
+ // #3776
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 84560
+
+ // #3777
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84592
+
+ // #3778
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 84608
+
+ // #3779
+ "SabonSerif CE for Nokia"
+ "\377\376\375\374\373\372\371\370\367" // 84640
+
+ // #3780
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 84672
+
+ // #3781
+ "HYGothic-Medium"
+ "\377" // 84688
+
+ // #3782
+ "hanyang"
+ "\377\376\375\374\373\372\371\370\367" // 84704
+
+ // #3783
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 84736
+
+ // #3784
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84752
+
+ // #3785
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 84768
+
+ // #3786
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84784
+
+ // #3787
+ "LucidaBright"
+ "\377\376\375\374" // 84800
+
+ // #3788
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84816
+
+ // #3789
+ "LucidaBright"
+ "\377\376\375\374" // 84832
+
+ // #3790
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84848
+
+ // #3791
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 84880
+
+ // #3792
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 84896
+
+ // #3793
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 84928
+
+ // #3794
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 84944
+
+ // #3795
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 84960
+
+ // #3796
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 84976
+
+ // #3797
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 84992
+
+ // #3798
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85008
+
+ // #3799
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 85024
+
+ // #3800
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85040
+
+ // #3801
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Plain-Triplex"
+ "\377\376\375" // 85072
+
+ // #3802
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85088
+
+ // #3803
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 85104
+
+ // #3804
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85120
+
+ // #3805
+ "LucidaBright"
+ "\377\376\375\374" // 85136
+
+ // #3806
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85152
+
+ // #3807
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 85168
+
+ // #3808
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85184
+
+ // #3809
+ "LucidaBright"
+ "\377\376\375\374" // 85200
+
+ // #3810
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85216
+
+ // #3811
+ "LucidaBright"
+ "\377\376\375\374" // 85232
+
+ // #3812
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85248
+
+ // #3813
+ "LucidaBright"
+ "\377\376\375\374" // 85264
+
+ // #3814
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85280
+
+ // #3815
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 85296
+
+ // #3816
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 85344+
+
+ // #3817
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "NokiaSansTitleCyr"
+ "\377\376\375\374\373\372\371" // 85408+
+
+ // #3818
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85424
+
+ // #3819
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "NokiaSansTitleCyr"
+ "\377\376\375\374\373\372\371" // 85472+
+
+ // #3820
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85488
+
+ // #3821
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 85504
+
+ // #3822
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 85536+
+
+ // #3823
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 85552
+
+ // #3824
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85568
+
+ // #3825
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 85584
+
+ // #3826
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85600
+
+ // #3827
+ "LucidaBright"
+ "\377\376\375\374" // 85616
+
+ // #3828
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85632
+
+ // #3829
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 85648
+
+ // #3830
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85664
+
+ // #3831
+ "\377\376\375\374\373\372\371\370"
+ "Arial Black"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 85696
+
+ // #3832
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 85728
+
+ // #3833
+ "NokiaSerifTur"
+ "\377\376\375" // 85744
+
+ // #3834
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85760
+
+ // #3835
+ "LucidaBright"
+ "\377\376\375\374" // 85776
+
+ // #3836
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85792
+
+ // #3837
+ "NokiaSerifTur"
+ "\377\376\375" // 85808
+
+ // #3838
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 85824
+
+ // #3839
+ "Eli 5.0b"
+ "\377\376\375\374\373\372\371\370" // 85840
+
+ // #3840
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 85872
+
+ // #3841
+ "LucidaBright"
+ "\377\376\375\374" // 85888
+
+ // #3842
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 85904
+
+ // #3843
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 85936
+
+ // #3844
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 85952
+
+ // #3845
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans Light"
+ "\377\376\375\374\373\372\371\370" // 85984
+
+ // #3846
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 86016
+
+ // #3847
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 86032
+
+ // #3848
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86048
+
+ // #3849
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 86064
+
+ // #3850
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86080
+
+ // #3851
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 86096
+
+ // #3852
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 86112
+
+ // #3853
+ "LucidaBright"
+ "\377\376\375\374" // 86128
+
+ // #3854
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 86144
+
+ // #3855
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86176
+
+ // #3856
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 86192
+
+ // #3857
+ "\377\376\375\374\373\372\371\370"
+ "Caption"
+ "\377" // 86208
+
+ // #3858
+ "\377\376\375\374\373\372\371\370"
+ "Ets"
+ "\377\376\375\374\373" // 86224
+
+ // #3859
+ "LucidaBright"
+ "\377\376\375\374" // 86240
+
+ // #3860
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 86256
+
+ // #3861
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans SCLF"
+ "\377\376\375\374\373\372\371\370\367" // 86288
+
+ // #3862
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 86320
+
+ // #3863
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 86352
+
+ // #3864
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 86368
+
+ // #3865
+ "NokiaSansTur"
+ "\377\376\375\374" // 86384
+
+ // #3866
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 86400
+
+ // #3867
+ "Lucida Sans"
+ "\377\376\375\374\373" // 86416
+
+ // #3868
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86432
+
+ // #3869
+ "NokiaSansTur"
+ "\377\376\375\374" // 86448
+
+ // #3870
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 86464
+
+ // #3871
+ "LucidaBright"
+ "\377\376\375\374" // 86480
+
+ // #3872
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 86496
+
+ // #3873
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86528
+
+ // #3874
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86544
+
+ // #3875
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 86560
+
+ // #3876
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86576
+
+ // #3877
+ "\377\376\375\374\373\372\371\370"
+ "HGSGyoshotai"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 86608
+
+ // #3878
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 86624
+
+ // #3879
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86656
+
+ // #3880
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86672
+
+ // #3881
+ "HGPGyoshotai"
+ "\377\376\375\374" // 86688
+
+ // #3882
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 86704
+
+ // #3883
+ "Lucida Sans"
+ "\377\376\375\374\373" // 86720
+
+ // #3884
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86736
+
+ // #3885
+ "LucidaBright"
+ "\377\376\375\374" // 86752
+
+ // #3886
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 86768
+
+ // #3887
+ "\377\376\375\374\373\372\371\370"
+ "HGPSoeiKakupoptai"
+ "\377\376\375\374\373\372\371" // 86800
+
+ // #3888
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 86816
+
+ // #3889
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 86832
+
+ // #3890
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86848
+
+ // #3891
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86880
+
+ // #3892
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86896
+
+ // #3893
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 86912
+
+ // #3894
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86928
+
+ // #3895
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 86960
+
+ // #3896
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 86976
+
+ // #3897
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 87008
+
+ // #3898
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 87024
+
+ // #3899
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 87040
+
+ // #3900
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87056
+
+ // #3901
+ "LucidaBright"
+ "\377\376\375\374" // 87072
+
+ // #3902
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 87088
+
+ // #3903
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 87104
+
+ // #3904
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87120
+
+ // #3905
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 87136
+
+ // #3906
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87152
+
+ // #3907
+ "URW Bookman L"
+ "\377\376\375" // 87168
+
+ // #3908
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 87184
+
+ // #3909
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 87200
+
+ // #3910
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 87216
+
+ // #3911
+ "der D\303""\244""monschriftkegel"
+ "\377\376\375\374\373\372\371\370\367\366" // 87248
+
+ // #3912
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 87280
+
+ // #3913
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 87296
+
+ // #3914
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87312
+
+ // #3915
+ "Lucida Sans"
+ "\377\376\375\374\373" // 87328
+
+ // #3916
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 87344
+
+ // #3917
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 87360
+
+ // #3918
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 87376
+
+ // #3919
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 87392
+
+ // #3920
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 87408
+
+ // #3921
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 87424
+
+ // #3922
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 87440
+
+ // #3923
+ "LucidaBright"
+ "\377\376\375\374" // 87456
+
+ // #3924
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 87472
+
+ // #3925
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 87488
+
+ // #3926
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87504
+
+ // #3927
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 87536
+
+ // #3928
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87552
+
+ // #3929
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 87568
+
+ // #3930
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 87584
+
+ // #3931
+ "Lucida Sans"
+ "\377\376\375\374\373" // 87600
+
+ // #3932
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 87616
+
+ // #3933
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 87632
+
+ // #3934
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87648
+
+ // #3935
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87680
+
+ // #3936
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 87696
+
+ // #3937
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 87728
+
+ // #3938
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87744
+
+ // #3939
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Gothic-Italian"
+ "\377\376" // 87776
+
+ // #3940
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 87792
+
+ // #3941
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 87808
+
+ // #3942
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 87824
+
+ // #3943
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 87840
+
+ // #3944
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 87856
+
+ // #3945
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 87888
+
+ // #3946
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87904
+
+ // #3947
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 87920
+
+ // #3948
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 87936
+
+ // #3949
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 87952
+
+ // #3950
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 87968
+
+ // #3951
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88000
+
+ // #3952
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88016
+
+ // #3953
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 88048
+
+ // #3954
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88064
+
+ // #3955
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 88080
+
+ // #3956
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88096
+
+ // #3957
+ "LucidaBright"
+ "\377\376\375\374" // 88112
+
+ // #3958
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 88128
+
+ // #3959
+ "\377\376\375\374\373\372\371\370"
+ "cmsy10"
+ "\377\376" // 88144
+
+ // #3960
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 88160
+
+ // #3961
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88192
+
+ // #3962
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88208
+
+ // #3963
+ "LucidaBright"
+ "\377\376\375\374" // 88224
+
+ // #3964
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 88240
+
+ // #3965
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 88256
+
+ // #3966
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88272
+
+ // #3967
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 88288
+
+ // #3968
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88304
+
+ // #3969
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 88320
+
+ // #3970
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88336
+
+ // #3971
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88368
+
+ // #3972
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88384
+
+ // #3973
+ "LucidaBright"
+ "\377\376\375\374" // 88400
+
+ // #3974
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 88416
+
+ // #3975
+ "\377\376\375\374\373\372\371\370"
+ "HGGyoshotai"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88448
+
+ // #3976
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 88464
+
+ // #3977
+ "Nokia Sans SemiBold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88496
+
+ // #3978
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 88528
+
+ // #3979
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88560
+
+ // #3980
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88576
+
+ // #3981
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 88608
+
+ // #3982
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 88624
+
+ // #3983
+ "LucidaBright"
+ "\377\376\375\374" // 88640
+
+ // #3984
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 88656
+
+ // #3985
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88688
+
+ // #3986
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88704
+
+ // #3987
+ "\377\376\375\374\373\372\371\370"
+ "SabonMT"
+ "\377" // 88720
+
+ // #3988
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 88752
+
+ // #3989
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "RotisSansSerifCE for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 88816+
+
+ // #3990
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 88832
+
+ // #3991
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88864
+
+ // #3992
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 88880
+
+ // #3993
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 88896
+
+ // #3994
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 88912
+
+ // #3995
+ "Garamond"
+ "\377\376\375\374\373\372\371\370" // 88928
+
+ // #3996
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 88960
+
+ // #3997
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 88976
+
+ // #3998
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 88992
+
+ // #3999
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 89024
+
+ // #4000
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 89040
+
+ // #4001
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 89072
+
+ // #4002
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 89088
+
+ // #4003
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 89120
+
+ // #4004
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 89136
+
+ // #4005
+ "LucidaBright"
+ "\377\376\375\374" // 89152
+
+ // #4006
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 89168
+
+ // #4007
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89200
+
+ // #4008
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 89216
+
+ // #4009
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 89232
+
+ // #4010
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 89248
+
+ // #4011
+ "RotisSansSerifBal for Nokia"
+ "\377\376\375\374\373" // 89280
+
+ // #4012
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 89296
+
+ // #4013
+ "LucidaBright"
+ "\377\376\375\374" // 89312
+
+ // #4014
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 89328
+
+ // #4015
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 89360
+
+ // #4016
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 89376
+
+ // #4017
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Courier New"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 89440+
+
+ // #4018
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 89472
+
+ // #4019
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 89488
+
+ // #4020
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89504
+
+ // #4021
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 89536
+
+ // #4022
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 89552
+
+ // #4023
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89584
+
+ // #4024
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 89600
+
+ // #4025
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 89616
+
+ // #4026
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89632
+
+ // #4027
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 89664
+
+ // #4028
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 89680
+
+ // #4029
+ "Lucida Sans"
+ "\377\376\375\374\373" // 89696
+
+ // #4030
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 89712
+
+ // #4031
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 89744
+
+ // #4032
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 89760
+
+ // #4033
+ "LucidaBright"
+ "\377\376\375\374" // 89776
+
+ // #4034
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 89792
+
+ // #4035
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 89808
+
+ // #4036
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89824
+
+ // #4037
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 89840
+
+ // #4038
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89856
+
+ // #4039
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 89872
+
+ // #4040
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89888
+
+ // #4041
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 89904
+
+ // #4042
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 89920
+
+ // #4043
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 89936
+
+ // #4044
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89952
+
+ // #4045
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 89968
+
+ // #4046
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 89984
+
+ // #4047
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 90000
+
+ // #4048
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90016
+
+ // #4049
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 90032
+
+ // #4050
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90048
+
+ // #4051
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 90080
+
+ // #4052
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 90096
+
+ // #4053
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 90128
+
+ // #4054
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 90144
+
+ // #4055
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 90176
+
+ // #4056
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 90192
+
+ // #4057
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 90208
+
+ // #4058
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90224
+
+ // #4059
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 90240
+
+ // #4060
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90256
+
+ // #4061
+ "\377\376\375\374\373\372\371\370"
+ "HGMaruGothicMPRO"
+ "\377\376\375\374\373\372\371\370" // 90288
+
+ // #4062
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 90304
+
+ // #4063
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 90320
+
+ // #4064
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90336
+
+ // #4065
+ "LucidaBright"
+ "\377\376\375\374" // 90352
+
+ // #4066
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 90368
+
+ // #4067
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 90400
+
+ // #4068
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 90416
+
+ // #4069
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 90448
+
+ // #4070
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90464
+
+ // #4071
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 90496
+
+ // #4072
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 90512
+
+ // #4073
+ "URW Bookman L"
+ "\377\376\375" // 90528
+
+ // #4074
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 90544
+
+ // #4075
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 90560
+
+ // #4076
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90576
+
+ // #4077
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90608
+
+ // #4078
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 90624
+
+ // #4079
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 90656
+
+ // #4080
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 90672
+
+ // #4081
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 90688
+
+ // #4082
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90704
+
+ // #4083
+ "Nokia Sans SemiBold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 90736
+
+ // #4084
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 90768
+
+ // #4085
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansWideTur"
+ "\377\376\375\374\373\372\371\370" // 90800
+
+ // #4086
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 90816
+
+ // #4087
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 90848
+
+ // #4088
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 90864
+
+ // #4089
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 90880
+
+ // #4090
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 90896
+
+ // #4091
+ "URW Bookman L"
+ "\377\376\375" // 90912
+
+ // #4092
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 90928
+
+ // #4093
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 90960
+
+ // #4094
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 90976
+
+ // #4095
+ "New Gulim"
+ "\377\376\375\374\373\372\371" // 90992
+
+ // #4096
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 91008
+
+ // #4097
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 91040
+
+ // #4098
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91056
+
+ // #4099
+ "LucidaBright"
+ "\377\376\375\374" // 91072
+
+ // #4100
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 91088
+
+ // #4101
+ "LucidaBright"
+ "\377\376\375\374" // 91104
+
+ // #4102
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 91120
+
+ // #4103
+ "\377\376\375\374\373\372\371\370"
+ "AgfaRotisSansSerifExtraBold"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91168
+
+ // #4104
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 91184
+
+ // #4105
+ "Lucida Sans"
+ "\377\376\375\374\373" // 91200
+
+ // #4106
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91216
+
+ // #4107
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 91232
+
+ // #4108
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91248
+
+ // #4109
+ "Beta Dance"
+ "\377\376\375\374\373\372" // 91264
+
+ // #4110
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 91296
+
+ // #4111
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91328
+
+ // #4112
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91344
+
+ // #4113
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 91376
+
+ // #4114
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91392
+
+ // #4115
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 91408
+
+ // #4116
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91424
+
+ // #4117
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91456
+
+ // #4118
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91472
+
+ // #4119
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 91504
+
+ // #4120
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91520
+
+ // #4121
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 91552
+
+ // #4122
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 91568
+
+ // #4123
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 91584
+
+ // #4124
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91600
+
+ // #4125
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 91632
+
+ // #4126
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91648
+
+ // #4127
+ "Nokia Standard Multiscript"
+ "\377\376\375\374\373\372" // 91680
+
+ // #4128
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 91712
+
+ // #4129
+ "NokiaSerifTur"
+ "\377\376\375" // 91728
+
+ // #4130
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 91744
+
+ // #4131
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 91760
+
+ // #4132
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 91776
+
+ // #4133
+ "NokiaSerifTur"
+ "\377\376\375" // 91792
+
+ // #4134
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 91808
+
+ // #4135
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 91824
+
+ // #4136
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91840
+
+ // #4137
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 91856
+
+ // #4138
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91872
+
+ // #4139
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 91904
+
+ // #4140
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 91920
+
+ // #4141
+ "Nokia Sans"
+ "\377\376\375\374\373\372" // 91936
+
+ // #4142
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 91968
+
+ // #4143
+ "Binary"
+ "\377\376\375\374\373\372\371\370\367\366" // 91984
+
+ // #4144
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 92016
+
+ // #4145
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92048
+
+ // #4146
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 92064
+
+ // #4147
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 92096
+
+ // #4148
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92112
+
+ // #4149
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 92128
+
+ // #4150
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 92192+
+
+ // #4151
+ "NokiaSansCyr"
+ "\377\376\375\374" // 92208
+
+ // #4152
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 92224
+
+ // #4153
+ "NokiaSansCyr"
+ "\377\376\375\374" // 92240
+
+ // #4154
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 92256
+
+ // #4155
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 92272
+
+ // #4156
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 92288
+
+ // #4157
+ "LucidaBright"
+ "\377\376\375\374" // 92304
+
+ // #4158
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 92320
+
+ // #4159
+ "LucidaBright"
+ "\377\376\375\374" // 92336
+
+ // #4160
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 92352
+
+ // #4161
+ "URW Bookman L"
+ "\377\376\375" // 92368
+
+ // #4162
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 92384
+
+ // #4163
+ "LucidaBright"
+ "\377\376\375\374" // 92400
+
+ // #4164
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 92416
+
+ // #4165
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 92432
+
+ // #4166
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92448
+
+ // #4167
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92480
+
+ // #4168
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 92496
+
+ // #4169
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 92512
+
+ // #4170
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92528
+
+ // #4171
+ "Lucida Sans"
+ "\377\376\375\374\373" // 92544
+
+ // #4172
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 92560
+
+ // #4173
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 92592
+
+ // #4174
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 92608
+
+ // #4175
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 92624
+
+ // #4176
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92640
+
+ // #4177
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 92656
+
+ // #4178
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92672
+
+ // #4179
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 92688
+
+ // #4180
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92704
+
+ // #4181
+ "Nokia Sans"
+ "\377\376\375\374\373\372" // 92720
+
+ // #4182
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 92752
+
+ // #4183
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 92784
+
+ // #4184
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92800
+
+ // #4185
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 92816
+
+ // #4186
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 92832
+
+ // #4187
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 92848
+
+ // #4188
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 92864
+
+ // #4189
+ "LucidaBright"
+ "\377\376\375\374" // 92880
+
+ // #4190
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 92896
+
+ // #4191
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 92912
+
+ // #4192
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92928
+
+ // #4193
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 92944
+
+ // #4194
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 92960
+
+ // #4195
+ "Garamond"
+ "\377\376\375\374\373\372\371\370" // 92976
+
+ // #4196
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 93008
+
+ // #4197
+ "Lucida Sans Unicode"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93040
+
+ // #4198
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93056
+
+ // #4199
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 93072
+
+ // #4200
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93088
+
+ // #4201
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 93104
+
+ // #4202
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93120
+
+ // #4203
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 93152
+
+ // #4204
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93168
+
+ // #4205
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 93184
+
+ // #4206
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93200
+
+ // #4207
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 93216
+
+ // #4208
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93232
+
+ // #4209
+ "LucidaBright"
+ "\377\376\375\374" // 93248
+
+ // #4210
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 93264
+
+ // #4211
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93296
+
+ // #4212
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93312
+
+ // #4213
+ "\377\376\375\374\373\372\371\370"
+ "Hershey-Gothic-English"
+ "\377\376" // 93344+
+
+ // #4214
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93360
+
+ // #4215
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 93376
+
+ // #4216
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93392
+
+ // #4217
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93424
+
+ // #4218
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93440
+
+ // #4219
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 93456
+
+ // #4220
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93472
+
+ // #4221
+ "NokiaSansTur"
+ "\377\376\375\374" // 93488
+
+ // #4222
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93504
+
+ // #4223
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 93520
+
+ // #4224
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 93536
+
+ // #4225
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 93552
+
+ // #4226
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93568
+
+ // #4227
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 93600
+
+ // #4228
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 93616
+
+ // #4229
+ "Lucida Sans"
+ "\377\376\375\374\373" // 93632
+
+ // #4230
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 93648
+
+ // #4231
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 93664
+
+ // #4232
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93680
+
+ // #4233
+ "NokiaSansTur"
+ "\377\376\375\374" // 93696
+
+ // #4234
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93712
+
+ // #4235
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 93744
+
+ // #4236
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 93760
+
+ // #4237
+ "NCP Logo"
+ "\377\376\375\374\373\372\371\370" // 93776
+
+ // #4238
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93792
+
+ // #4239
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 93808
+
+ // #4240
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93824
+
+ // #4241
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans SC"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93856
+
+ // #4242
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 93888
+
+ // #4243
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 93904
+
+ // #4244
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93920
+
+ // #4245
+ "\377\376\375\374\373\372\371\370"
+ "Embargo"
+ "\377" // 93936
+
+ // #4246
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 93952
+
+ // #4247
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 93984
+
+ // #4248
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 94000
+
+ // #4249
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 94032
+
+ // #4250
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 94048
+
+ // #4251
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 94064
+
+ // #4252
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 94080
+
+ // #4253
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 94096
+
+ // #4254
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94112
+
+ // #4255
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 94128
+
+ // #4256
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94144
+
+ // #4257
+ "NMP Logo"
+ "\377\376\375\374\373\372\371\370" // 94160
+
+ // #4258
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94176
+
+ // #4259
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 94208
+
+ // #4260
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 94224
+
+ // #4261
+ "\377\376\375\374\373\372\371\370"
+ "STCaiyun"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 94256
+
+ // #4262
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94272
+
+ // #4263
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 94288
+
+ // #4264
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 94304
+
+ // #4265
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 94320
+
+ // #4266
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 94336
+
+ // #4267
+ "\377\376\375\374\373\372\371\370"
+ "Rotis Sans Serif for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 94384
+
+ // #4268
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 94400
+
+ // #4269
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 94432
+
+ // #4270
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 94448
+
+ // #4271
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 94464
+
+ // #4272
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 94480
+
+ // #4273
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 94496
+
+ // #4274
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 94512
+
+ // #4275
+ "URW Bookman L"
+ "\377\376\375" // 94528
+
+ // #4276
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 94544
+
+ // #4277
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 94560
+
+ // #4278
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 94624+
+
+ // #4279
+ "\377\376\375\374\373\372\371\370"
+ "Creature"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 94656
+
+ // #4280
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 94688
+
+ // #4281
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 94704
+
+ // #4282
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94720
+
+ // #4283
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 94736
+
+ // #4284
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 94752
+
+ // #4285
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 94768
+
+ // #4286
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94784
+
+ // #4287
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 94800
+
+ // #4288
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94816
+
+ // #4289
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 94848
+
+ // #4290
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 94864
+
+ // #4291
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 94880
+
+ // #4292
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 94896
+
+ // #4293
+ "LucidaBright"
+ "\377\376\375\374" // 94912
+
+ // #4294
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 94928
+
+ // #4295
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 94960
+
+ // #4296
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 94976
+
+ // #4297
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 94992
+
+ // #4298
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95008
+
+ // #4299
+ "Densmore"
+ "\377\376\375\374\373\372\371\370" // 95024
+
+ // #4300
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 95056
+
+ // #4301
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95072
+
+ // #4302
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95088
+
+ // #4303
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95104
+
+ // #4304
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95120
+
+ // #4305
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95136
+
+ // #4306
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95152
+
+ // #4307
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 95168
+
+ // #4308
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95184
+
+ // #4309
+ "NokiaSansTur"
+ "\377\376\375\374" // 95200
+
+ // #4310
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95216
+
+ // #4311
+ "Lucida Sans"
+ "\377\376\375\374\373" // 95232
+
+ // #4312
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 95248
+
+ // #4313
+ "NokiaSansTur"
+ "\377\376\375\374" // 95264
+
+ // #4314
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95280
+
+ // #4315
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 95296
+
+ // #4316
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95312
+
+ // #4317
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95328
+
+ // #4318
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95344
+
+ // #4319
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 95360
+
+ // #4320
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95376
+
+ // #4321
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 95392
+
+ // #4322
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95408
+
+ // #4323
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95424
+
+ // #4324
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95440
+
+ // #4325
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95456
+
+ // #4326
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95472
+
+ // #4327
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95488
+
+ // #4328
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95504
+
+ // #4329
+ "\377\376\375\374\373\372\371\370"
+ "Captain Podd"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 95536
+
+ // #4330
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95552
+
+ // #4331
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95568
+
+ // #4332
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95584
+
+ // #4333
+ "URW Bookman L"
+ "\377\376\375" // 95600
+
+ // #4334
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 95616
+
+ // #4335
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 95632
+
+ // #4336
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95648
+
+ // #4337
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 95664
+
+ // #4338
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95680
+
+ // #4339
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95712
+
+ // #4340
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 95728
+
+ // #4341
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 95744
+
+ // #4342
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95760
+
+ // #4343
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95776
+
+ // #4344
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95792
+
+ // #4345
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 95808
+
+ // #4346
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95824
+
+ // #4347
+ "Nokia Sans"
+ "\377\376\375\374\373\372" // 95840
+
+ // #4348
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 95872
+
+ // #4349
+ "YouYuan"
+ "\377\376\375\374\373\372\371\370\367" // 95888
+
+ // #4350
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95904
+
+ // #4351
+ "NokiaSansTur"
+ "\377\376\375\374" // 95920
+
+ // #4352
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 95936
+
+ // #4353
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 95952
+
+ // #4354
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 95968
+
+ // #4355
+ "NokiaSansTur"
+ "\377\376\375\374" // 95984
+
+ // #4356
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96000
+
+ // #4357
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96032
+
+ // #4358
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 96048
+
+ // #4359
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 96064
+
+ // #4360
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96080
+
+ // #4361
+ "NokiaSerifCyr"
+ "\377\376\375" // 96096
+
+ // #4362
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96112
+
+ // #4363
+ "NokiaSerifCyr"
+ "\377\376\375" // 96128
+
+ // #4364
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96144
+
+ // #4365
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 96160
+
+ // #4366
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96176
+
+ // #4367
+ "HGPGothicM"
+ "\377\376\375\374\373\372" // 96192
+
+ // #4368
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 96208
+
+ // #4369
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 96224
+
+ // #4370
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96240
+
+ // #4371
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans Mono"
+ "\377\376\375\374\373\372\371\370" // 96272
+
+ // #4372
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96288
+
+ // #4373
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96320
+
+ // #4374
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 96336
+
+ // #4375
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 96352
+
+ // #4376
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 96368
+
+ // #4377
+ "URW Bookman L"
+ "\377\376\375" // 96384
+
+ // #4378
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 96400
+
+ // #4379
+ "\377\376\375\374\373\372\371\370"
+ "HGSSoeiKakupoptai"
+ "\377\376\375\374\373\372\371" // 96432
+
+ // #4380
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 96448
+
+ // #4381
+ "\377\376\375\374\373\372\371\370"
+ "HGPGothicE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 96480
+
+ // #4382
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 96496
+
+ // #4383
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96528
+
+ // #4384
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 96544
+
+ // #4385
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 96560
+
+ // #4386
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96576
+
+ // #4387
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 96608
+
+ // #4388
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 96624
+
+ // #4389
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 96640
+
+ // #4390
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 96656
+
+ // #4391
+ "Lucida Sans"
+ "\377\376\375\374\373" // 96672
+
+ // #4392
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 96688
+
+ // #4393
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 96704
+
+ // #4394
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96720
+
+ // #4395
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 96736
+
+ // #4396
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96752
+
+ // #4397
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 96768
+
+ // #4398
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 96784
+
+ // #4399
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 96800
+
+ // #4400
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96816
+
+ // #4401
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 96832
+
+ // #4402
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96848
+
+ // #4403
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Serif SC"
+ "\377\376\375\374\373\372\371\370\367\366" // 96880
+
+ // #4404
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 96912
+
+ // #4405
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 96944
+
+ // #4406
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 96960
+
+ // #4407
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 96976
+
+ // #4408
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 96992
+
+ // #4409
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 97008
+
+ // #4410
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97024
+
+ // #4411
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 97040
+
+ // #4412
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 97056
+
+ // #4413
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97088
+
+ // #4414
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 97104
+
+ // #4415
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 97120
+
+ // #4416
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97136
+
+ // #4417
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 97152
+
+ // #4418
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97168
+
+ // #4419
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97200
+
+ // #4420
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 97216
+
+ // #4421
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 97232
+
+ // #4422
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97248
+
+ // #4423
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97280
+
+ // #4424
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 97296
+
+ // #4425
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 97312
+
+ // #4426
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97328
+
+ // #4427
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 97344
+
+ // #4428
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97360
+
+ // #4429
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 97392
+
+ // #4430
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 97408
+
+ // #4431
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 97424
+
+ // #4432
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97440
+
+ // #4433
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 97456
+
+ // #4434
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97472
+
+ // #4435
+ "wasy10"
+ "\377\376\375\374\373\372\371\370\367\366" // 97488
+
+ // #4436
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 97504
+
+ // #4437
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 97520
+
+ // #4438
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97536
+
+ // #4439
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 97552
+
+ // #4440
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 97568
+
+ // #4441
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 97584
+
+ // #4442
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 97600
+
+ // #4443
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97632
+
+ // #4444
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 97648
+
+ // #4445
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 97664
+
+ // #4446
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97680
+
+ // #4447
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 97696
+
+ // #4448
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97712
+
+ // #4449
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 97744
+
+ // #4450
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 97760
+
+ // #4451
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 97776
+
+ // #4452
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 97792
+
+ // #4453
+ "Lucida Sans"
+ "\377\376\375\374\373" // 97808
+
+ // #4454
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 97824
+
+ // #4455
+ "URW Bookman L"
+ "\377\376\375" // 97840
+
+ // #4456
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 97856
+
+ // #4457
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 97872
+
+ // #4458
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 97888
+
+ // #4459
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 97904
+
+ // #4460
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 97920
+
+ // #4461
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans Light"
+ "\377\376\375\374\373\372\371\370" // 97952
+
+ // #4462
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 97984
+
+ // #4463
+ "Lucida Sans"
+ "\377\376\375\374\373" // 98000
+
+ // #4464
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98016
+
+ // #4465
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 98048
+
+ // #4466
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 98064
+
+ // #4467
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 98080
+
+ // #4468
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98096
+
+ // #4469
+ "\377\376\375\374\373\372\371\370"
+ "Fudd"
+ "\377\376\375\374" // 98112
+
+ // #4470
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 98128
+
+ // #4471
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 98160
+
+ // #4472
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98176
+
+ // #4473
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 98208
+
+ // #4474
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98224
+
+ // #4475
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 98240
+
+ // #4476
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 98256
+
+ // #4477
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 98272
+
+ // #4478
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98288
+
+ // #4479
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 98304
+
+ // #4480
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98320
+
+ // #4481
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 98352
+
+ // #4482
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98368
+
+ // #4483
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 98384
+
+ // #4484
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 98464+
+
+ // #4485
+ "\377\376\375\374\373\372\371\370"
+ "URW Gothic L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 98496
+
+ // #4486
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 98512
+
+ // #4487
+ "Lucida Sans"
+ "\377\376\375\374\373" // 98528
+
+ // #4488
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98544
+
+ // #4489
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 98560
+
+ // #4490
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 98576
+
+ // #4491
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 98592
+
+ // #4492
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 98608
+
+ // #4493
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 98640
+
+ // #4494
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98656
+
+ // #4495
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98688
+
+ // #4496
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98704
+
+ // #4497
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 98736
+
+ // #4498
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98752
+
+ // #4499
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 98784
+
+ // #4500
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 98800
+
+ // #4501
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 98832
+
+ // #4502
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 98848
+
+ // #4503
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 98864
+
+ // #4504
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 98912+
+
+ // #4505
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 98944
+
+ // #4506
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 98960
+
+ // #4507
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 98992
+
+ // #4508
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99008
+
+ // #4509
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 99024
+
+ // #4510
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99040
+
+ // #4511
+ "Failed Attempt"
+ "\377\376" // 99056
+
+ // #4512
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 99088
+
+ // #4513
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 99120
+
+ // #4514
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 99136
+
+ // #4515
+ "\377\376\375\374\373\372\371\370"
+ "URW Palladio L"
+ "\377\376\375\374\373\372\371\370\367\366" // 99168
+
+ // #4516
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 99184
+
+ // #4517
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99216
+
+ // #4518
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 99232
+
+ // #4519
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 99248
+
+ // #4520
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 99264
+
+ // #4521
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 99280
+
+ // #4522
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99296
+
+ // #4523
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 99312
+
+ // #4524
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99328
+
+ // #4525
+ "NokiaSansCnCyr"
+ "\377\376" // 99344
+
+ // #4526
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99360
+
+ // #4527
+ "NokiaSansCnCyr"
+ "\377\376" // 99376
+
+ // #4528
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99392
+
+ // #4529
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 99408
+
+ // #4530
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99424
+
+ // #4531
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 99440
+
+ // #4532
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99456
+
+ // #4533
+ "NokiaSansCE"
+ "\377\376\375\374\373" // 99472
+
+ // #4534
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99488
+
+ // #4535
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 99520
+
+ // #4536
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 99536
+
+ // #4537
+ "BatangChe"
+ "\377\376\375\374\373\372\371" // 99552
+
+ // #4538
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 99568
+
+ // #4539
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 99584
+
+ // #4540
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99600
+
+ // #4541
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99632
+
+ // #4542
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 99648
+
+ // #4543
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 99664
+
+ // #4544
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99680
+
+ // #4545
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99712
+
+ // #4546
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 99728
+
+ // #4547
+ "NokiaSansTitle"
+ "\377\376" // 99744
+
+ // #4548
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99760
+
+ // #4549
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 99776
+
+ // #4550
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99792
+
+ // #4551
+ "NokiaSansTitle"
+ "\377\376" // 99808
+
+ // #4552
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99824
+
+ // #4553
+ "Garamond"
+ "\377\376\375\374\373\372\371\370" // 99840
+
+ // #4554
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 99872
+
+ // #4555
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 99888
+
+ // #4556
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 99904
+
+ // #4557
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 99936
+
+ // #4558
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 99952
+
+ // #4559
+ "NokiaSerifCyr"
+ "\377\376\375" // 99968
+
+ // #4560
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 99984
+
+ // #4561
+ "NokiaSerifCyr"
+ "\377\376\375" // 100000
+
+ // #4562
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100016
+
+ // #4563
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 100032
+
+ // #4564
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 100048
+
+ // #4565
+ "LucidaBright"
+ "\377\376\375\374" // 100064
+
+ // #4566
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 100080
+
+ // #4567
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 100096
+
+ // #4568
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 100112
+
+ // #4569
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 100128
+
+ // #4570
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 100192+
+
+ // #4571
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 100224
+
+ // #4572
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 100240
+
+ // #4573
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 100256
+
+ // #4574
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 100272
+
+ // #4575
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 100288
+
+ // #4576
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 100304
+
+ // #4577
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 100336
+
+ // #4578
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 100352
+
+ // #4579
+ "Distortia"
+ "\377\376\375\374\373\372\371" // 100368
+
+ // #4580
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 100400
+
+ // #4581
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 100416
+
+ // #4582
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 100432
+
+ // #4583
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 100464
+
+ // #4584
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 100480
+
+ // #4585
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 100496
+
+ // #4586
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 100512
+
+ // #4587
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleTur"
+ "\377\376\375\374\373\372\371" // 100544
+
+ // #4588
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100560
+
+ // #4589
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 100592
+
+ // #4590
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 100608
+
+ // #4591
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleTur"
+ "\377\376\375\374\373\372\371" // 100640
+
+ // #4592
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100656
+
+ // #4593
+ "NokiaSansCyr"
+ "\377\376\375\374" // 100672
+
+ // #4594
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100688
+
+ // #4595
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 100720
+
+ // #4596
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 100736
+
+ // #4597
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 100768
+
+ // #4598
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 100784
+
+ // #4599
+ "NokiaSansCyr"
+ "\377\376\375\374" // 100800
+
+ // #4600
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100816
+
+ // #4601
+ "Lucida Sans"
+ "\377\376\375\374\373" // 100832
+
+ // #4602
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 100848
+
+ // #4603
+ "NokiaSansCnBal"
+ "\377\376" // 100864
+
+ // #4604
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100880
+
+ // #4605
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleBal"
+ "\377\376\375\374\373\372\371" // 100912
+
+ // #4606
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100928
+
+ // #4607
+ "\377\376\375\374\373\372\371\370"
+ "NokiaSansTitleBal"
+ "\377\376\375\374\373\372\371" // 100960
+
+ // #4608
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 100976
+
+ // #4609
+ "NokiaSansCnBal"
+ "\377\376" // 100992
+
+ // #4610
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 101008
+
+ // #4611
+ "\377\376\375\374\373\372\371\370"
+ "MS UI Gothic"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 101040
+
+ // #4612
+ "\377\376\375\374\373\372\371\370"
+ "ricoh"
+ "\377\376\375" // 101056
+
+ // #4613
+ "Lucida Sans"
+ "\377\376\375\374\373" // 101072
+
+ // #4614
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 101088
+
+ // #4615
+ "\377\376\375\374\373\372\371\370"
+ "Tengwar Annatar"
+ "\377\376\375\374\373\372\371\370\367" // 101120
+
+ // #4616
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 101136
+
+ // #4617
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Nokia Standard"
+ "\377\376\375\374\373\372\371\370\367\366" // 101216+
+
+ // #4618
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 101248
+
+ // #4619
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 101280
+
+ // #4620
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 101296
+
+ // #4621
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 101328
+
+ // #4622
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101344
+
+ // #4623
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 101376
+
+ // #4624
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 101392
+
+ // #4625
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 101424
+
+ // #4626
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 101440
+
+ // #4627
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 101456
+
+ // #4628
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 101472
+
+ // #4629
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 101488
+
+ // #4630
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101504
+
+ // #4631
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 101520
+
+ // #4632
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 101536
+
+ // #4633
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 101552
+
+ // #4634
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101568
+
+ // #4635
+ "Liberation Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 101600
+
+ // #4636
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 101616
+
+ // #4637
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 101632
+
+ // #4638
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 101648
+
+ // #4639
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101680
+
+ // #4640
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 101696
+
+ // #4641
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 101712
+
+ // #4642
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 101728
+
+ // #4643
+ "Lucida Sans"
+ "\377\376\375\374\373" // 101744
+
+ // #4644
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 101760
+
+ // #4645
+ "LucidaBright"
+ "\377\376\375\374" // 101776
+
+ // #4646
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 101792
+
+ // #4647
+ "LucidaBright"
+ "\377\376\375\374" // 101808
+
+ // #4648
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 101824
+
+ // #4649
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101856
+
+ // #4650
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 101872
+
+ // #4651
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 101888
+
+ // #4652
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 101904
+
+ // #4653
+ "LucidaBright"
+ "\377\376\375\374" // 101920
+
+ // #4654
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 101936
+
+ // #4655
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 101968
+
+ // #4656
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 101984
+
+ // #4657
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 102016
+
+ // #4658
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102032
+
+ // #4659
+ "Lucida Sans"
+ "\377\376\375\374\373" // 102048
+
+ // #4660
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102064
+
+ // #4661
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 102080
+
+ // #4662
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 102096
+
+ // #4663
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 102112
+
+ // #4664
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 102128
+
+ // #4665
+ "Century Gothic"
+ "\377\376" // 102144
+
+ // #4666
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 102176
+
+ // #4667
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 102208
+
+ // #4668
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102224
+
+ // #4669
+ "Lucida Sans"
+ "\377\376\375\374\373" // 102240
+
+ // #4670
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102256
+
+ // #4671
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 102304+
+
+ // #4672
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 102320
+
+ // #4673
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 102352
+
+ // #4674
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 102368
+
+ // #4675
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 102384
+
+ // #4676
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 102400
+
+ // #4677
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 102432
+
+ // #4678
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 102448
+
+ // #4679
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 102464
+
+ // #4680
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 102480
+
+ // #4681
+ "NokiaSansWideBal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 102512
+
+ // #4682
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 102528
+
+ // #4683
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 102544
+
+ // #4684
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 102560
+
+ // #4685
+ "\377\376\375\374\373\372\371\370"
+ "msbm10"
+ "\377\376" // 102576
+
+ // #4686
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 102592
+
+ // #4687
+ "Century Gothic"
+ "\377\376" // 102608
+
+ // #4688
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 102640
+
+ // #4689
+ "Lucida Sans"
+ "\377\376\375\374\373" // 102656
+
+ // #4690
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102672
+
+ // #4691
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 102704
+
+ // #4692
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102720
+
+ // #4693
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 102752
+
+ // #4694
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 102768
+
+ // #4695
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Sabon Serif for Nokia"
+ "\377\376\375" // 102816+
+
+ // #4696
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 102848
+
+ // #4697
+ "LucidaBright"
+ "\377\376\375\374" // 102864
+
+ // #4698
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 102880
+
+ // #4699
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 102896
+
+ // #4700
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 102944+
+
+ // #4701
+ "\377\376\375\374\373\372\371\370"
+ "Rotis Sans Serif for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 102992
+
+ // #4702
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 103008
+
+ // #4703
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 103024
+
+ // #4704
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 103072+
+
+ // #4705
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 103088
+
+ // #4706
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 103136+
+
+ // #4707
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 103152
+
+ // #4708
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 103200+
+
+ // #4709
+ "\377\376\375\374\373\372\371\370"
+ "Arial monospaced for SAP"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 103248
+
+ // #4710
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 103280
+
+ // #4711
+ "\377\376\375\374\373\372\371\370"
+ "Font in a Red Suit"
+ "\377\376\375\374\373\372" // 103312
+
+ // #4712
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 103344
+
+ // #4713
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 103360
+
+ // #4714
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 103376
+
+ // #4715
+ "NokiaSansTitleCE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 103408
+
+ // #4716
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 103424
+
+ // #4717
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 103456
+
+ // #4718
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 103472
+
+ // #4719
+ "Electroharmonix"
+ "\377" // 103488
+
+ // #4720
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 103520
+
+ // #4721
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 103536
+
+ // #4722
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 103552
+
+ // #4723
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 103568
+
+ // #4724
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 103584
+
+ // #4725
+ "NokiaSansTitleCE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 103616
+
+ // #4726
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 103632
+
+ // #4727
+ "NokiaSerifGre"
+ "\377\376\375" // 103648
+
+ // #4728
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 103664
+
+ // #4729
+ "NokiaSerifGre"
+ "\377\376\375" // 103680
+
+ // #4730
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 103696
+
+ // #4731
+ "\377\376\375\374\373\372\371\370"
+ "Dingbats"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 103728
+
+ // #4732
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 103744
+
+ // #4733
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 103776
+
+ // #4734
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 103792
+
+ // #4735
+ "RotisSansSerifBal for Nokia"
+ "\377\376\375\374\373" // 103824
+
+ // #4736
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 103840
+
+ // #4737
+ "LucidaBright"
+ "\377\376\375\374" // 103856
+
+ // #4738
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 103872
+
+ // #4739
+ "LucidaBright"
+ "\377\376\375\374" // 103888
+
+ // #4740
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 103904
+
+ // #4741
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 103936
+
+ // #4742
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 103952
+
+ // #4743
+ "LucidaBright"
+ "\377\376\375\374" // 103968
+
+ // #4744
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 103984
+
+ // #4745
+ "LucidaBright"
+ "\377\376\375\374" // 104000
+
+ // #4746
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 104016
+
+ // #4747
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 104032
+
+ // #4748
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 104048
+
+ // #4749
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Serif SC"
+ "\377\376\375\374\373\372\371\370\367\366" // 104080
+
+ // #4750
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 104112
+
+ // #4751
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "RotisSansSerifCE for Nokia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 104176+
+
+ // #4752
+ "\377\376\375\374\373\372\371\370"
+ "agfa"
+ "\377\376\375\374" // 104192
+
+ // #4753
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 104224
+
+ // #4754
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 104240
+
+ // #4755
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 104256
+
+ // #4756
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 104272
+
+ // #4757
+ "LucidaBright"
+ "\377\376\375\374" // 104288
+
+ // #4758
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 104304
+
+ // #4759
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 104320
+
+ // #4760
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 104336
+
+ // #4761
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Sabon Serif for Nokia"
+ "\377\376\375" // 104416+
+
+ // #4762
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 104448
+
+ // #4763
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 104464
+
+ // #4764
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 104480
+
+ // #4765
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 104512
+
+ // #4766
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 104528
+
+ // #4767
+ "Lucida Sans"
+ "\377\376\375\374\373" // 104544
+
+ // #4768
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 104560
+
+ // #4769
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 104592
+
+ // #4770
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 104608
+
+ // #4771
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 104640
+
+ // #4772
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 104656
+
+ // #4773
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 104672
+
+ // #4774
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 104688
+
+ // #4775
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 104720
+
+ // #4776
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 104736
+
+ // #4777
+ "DirtyBaker'sDozen"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 104768
+
+ // #4778
+ "\377\376\375\374\373\372\371\370"
+ "macromedia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 104800
+
+ // #4779
+ "\377\376\375\374\373\372\371\370"
+ "Terminal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 104832
+
+ // #4780
+ "DEC"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 104848
+
+ // #4781
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 104864
+
+ // #4782
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 104880
+
+ // #4783
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 104896
+
+ // #4784
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 104912
+
+ // #4785
+ "NokiaSansTur"
+ "\377\376\375\374" // 104928
+
+ // #4786
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 104944
+
+ // #4787
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 104960
+
+ // #4788
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 104976
+
+ // #4789
+ "NokiaSansTur"
+ "\377\376\375\374" // 104992
+
+ // #4790
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 105008
+
+ // #4791
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Vera Sans"
+ "\377\376\375\374\373" // 105040
+
+ // #4792
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 105072
+
+ // #4793
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 105104
+
+ // #4794
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 105120
+
+ // #4795
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Mono L"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 105152
+
+ // #4796
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 105168
+
+ // #4797
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 105248+
+
+ // #4798
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 105280
+
+ // #4799
+ "\377\376\375\374\373\372\371\370"
+ "Nimbus Sans L Condensed"
+ "\377" // 105312
+
+ // #4800
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 105328
+
+ // #4801
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Nokia Sans Wide"
+ "\377\376\375\374\373\372\371\370\367" // 105376+
+
+ // #4802
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 105408
+
+ // #4803
+ "NokiaSansCn"
+ "\377\376\375\374\373" // 105424
+
+ // #4804
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 105440
+
+ // #4805
+ "SabonSerif Bal for Nokia"
+ "\377\376\375\374\373\372\371\370" // 105472
+
+ // #4806
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 105504
+
+ // #4807
+ "NokiaSansCn"
+ "\377\376\375\374\373" // 105520
+
+ // #4808
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 105536
+
+ // #4809
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 105552
+
+ // #4810
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 105568
+
+ // #4811
+ "Lucida Sans"
+ "\377\376\375\374\373" // 105584
+
+ // #4812
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 105600
+
+ // #4813
+ "\377\376\375\374\373\372\371\370"
+ "Standard Symbols L"
+ "\377\376\375\374\373\372" // 105632
+
+ // #4814
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 105648
+
+ // #4815
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 105664
+
+ // #4816
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 105680
+
+ // #4817
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 105696
+
+ // #4818
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 105760+
+
+ // #4819
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 105776
+
+ // #4820
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 105792
+
+ // #4821
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 105808
+
+ // #4822
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 105824
+
+ // #4823
+ "LucidaBright"
+ "\377\376\375\374" // 105840
+
+ // #4824
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 105856
+
+ // #4825
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 105888
+
+ // #4826
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 105904
+
+ // #4827
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 105936
+
+ // #4828
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 105952
+
+ // #4829
+ "NokiaSansWideCyr"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 105984
+
+ // #4830
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 106000
+
+ // #4831
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106032
+
+ // #4832
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106048
+
+ // #4833
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 106064
+
+ // #4834
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106080
+
+ // #4835
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 106096
+
+ // #4836
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106112
+
+ // #4837
+ "Lucida Sans"
+ "\377\376\375\374\373" // 106128
+
+ // #4838
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106144
+
+ // #4839
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106176
+
+ // #4840
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106192
+
+ // #4841
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106224
+
+ // #4842
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106240
+
+ // #4843
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 106256
+
+ // #4844
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 106272
+
+ // #4845
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 106288
+
+ // #4846
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106304
+
+ // #4847
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 106336
+
+ // #4848
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 106352
+
+ // #4849
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 106384
+
+ // #4850
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106400
+
+ // #4851
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 106432
+
+ // #4852
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106448
+
+ // #4853
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 106480
+
+ // #4854
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106496
+
+ // #4855
+ "\355""\234""\264""\353""\250""\274""\354""\230""\233""\354""\262""\264"""
+ "\377\376\375\374" // 106512
+
+ // #4856
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 106528
+
+ // #4857
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 106544
+
+ // #4858
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106560
+
+ // #4859
+ "Lucida Sans"
+ "\377\376\375\374\373" // 106576
+
+ // #4860
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106592
+
+ // #4861
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 106608
+
+ // #4862
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 106624
+
+ // #4863
+ "NokiaSerifCyr"
+ "\377\376\375" // 106640
+
+ // #4864
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 106656
+
+ // #4865
+ "NokiaSerifCyr"
+ "\377\376\375" // 106672
+
+ // #4866
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 106688
+
+ // #4867
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106720
+
+ // #4868
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 106736
+
+ // #4869
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 106752
+
+ // #4870
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106768
+
+ // #4871
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 106784
+
+ // #4872
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106800
+
+ // #4873
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "DejaVu Serif"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 106848+
+
+ // #4874
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 106864
+
+ // #4875
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 106880
+
+ // #4876
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106896
+
+ // #4877
+ "Lucida Sans"
+ "\377\376\375\374\373" // 106912
+
+ // #4878
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 106928
+
+ // #4879
+ "\377\376\375\374\373\372\371\370"
+ "Fixed"
+ "\377\376\375" // 106944
+
+ // #4880
+ "Misc"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 106960
+
+ // #4881
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 106976
+
+ // #4882
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 106992
+
+ // #4883
+ "Helvetica"
+ "\377\376\375\374\373\372\371" // 107008
+
+ // #4884
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107024
+
+ // #4885
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107056
+
+ // #4886
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 107072
+
+ // #4887
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 107104
+
+ // #4888
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107120
+
+ // #4889
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 107136
+
+ // #4890
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 107168+
+
+ // #4891
+ "NokiaSansGre"
+ "\377\376\375\374" // 107184
+
+ // #4892
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 107200
+
+ // #4893
+ "NokiaSansGre"
+ "\377\376\375\374" // 107216
+
+ // #4894
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 107232
+
+ // #4895
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 107248
+
+ // #4896
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107264
+
+ // #4897
+ "\377\376\375\374\373\372\371\370"
+ "Times"
+ "\377\376\375" // 107280
+
+ // #4898
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107296
+
+ // #4899
+ "Lucida Sans"
+ "\377\376\375\374\373" // 107312
+
+ // #4900
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 107328
+
+ // #4901
+ "\377\376\375\374\373\372\371\370"
+ "Nokia Sans SCLF"
+ "\377\376\375\374\373\372\371\370\367" // 107360
+
+ // #4902
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 107392
+
+ // #4903
+ "Nimbus Roman No9 L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 107424
+
+ // #4904
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 107440
+
+ // #4905
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "SabonSerif Tur for Nokia"
+ "\377\376\375\374\373\372\371\370" // 107488+
+
+ // #4906
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 107520
+
+ // #4907
+ "DotumChe"
+ "\377\376\375\374\373\372\371\370" // 107536
+
+ // #4908
+ "microsoft"
+ "\377\376\375\374\373\372\371" // 107552
+
+ // #4909
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Charter"
+ "\377\376\375\374\373\372\371" // 107584
+
+ // #4910
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 107616
+
+ // #4911
+ "LiSu"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 107632
+
+ // #4912
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 107648
+
+ // #4913
+ "Century Gothic"
+ "\377\376" // 107664
+
+ // #4914
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 107696
+
+ // #4915
+ "LucidaBright"
+ "\377\376\375\374" // 107712
+
+ // #4916
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 107728
+
+ // #4917
+ "\377\376\375\374\373\372\371\370"
+ "Standard Symbols L"
+ "\377\376\375\374\373\372" // 107760
+
+ // #4918
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 107776
+
+ // #4919
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107808
+
+ // #4920
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 107824
+
+ // #4921
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 107840
+
+ // #4922
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 107856
+
+ // #4923
+ "NokiaSerif"
+ "\377\376\375\374\373\372" // 107872
+
+ // #4924
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 107888
+
+ // #4925
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 107904
+
+ // #4926
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 107920
+
+ // #4927
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 107936
+
+ // #4928
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107952
+
+ // #4929
+ "Courier"
+ "\377\376\375\374\373\372\371\370\367" // 107968
+
+ // #4930
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 107984
+
+ // #4931
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 108000
+
+ // #4932
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 108016
+
+ // #4933
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 108032
+
+ // #4934
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 108048
+
+ // #4935
+ "NokiaSans"
+ "\377\376\375\374\373\372\371" // 108064
+
+ // #4936
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 108080
+
+ // #4937
+ "Lucida Sans"
+ "\377\376\375\374\373" // 108096
+
+ // #4938
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108112
+
+ // #4939
+ "Lucida Sans Typewriter"
+ "\377\376\375\374\373\372\371\370\367\366" // 108144
+
+ // #4940
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108160
+
+ // #4941
+ "\377\376\375\374\373\372\371\370"
+ "Arial monospaced for SAP"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108208
+
+ // #4942
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108240
+
+ // #4943
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108272
+
+ // #4944
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108288
+
+ // #4945
+ "LucidaBright"
+ "\377\376\375\374" // 108304
+
+ // #4946
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 108320
+
+ // #4947
+ "Lucida Sans"
+ "\377\376\375\374\373" // 108336
+
+ // #4948
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108352
+
+ // #4949
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108384
+
+ // #4950
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 108400
+
+ // #4951
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108432
+
+ // #4952
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108448
+
+ // #4953
+ "\377\376\375\374\373\372\371\370"
+ "Terminal"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108480
+
+ // #4954
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 108512+
+
+ // #4955
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 108528
+
+ // #4956
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 108576+
+
+ // #4957
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 108592
+
+ // #4958
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 108640+
+
+ // #4959
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 108656
+
+ // #4960
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108672
+
+ // #4961
+ "\377\376\375\374\373\372\371\370"
+ "STHupo"
+ "\377\376" // 108688
+
+ // #4962
+ "\377\376\375\374\373\372\371\370"
+ "unknown"
+ "\377" // 108704
+
+ // #4963
+ "\377\376\375\374\373\372\371\370"
+ "Utopia"
+ "\377\376" // 108720
+
+ // #4964
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108736
+
+ // #4965
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 108768
+
+ // #4966
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108784
+
+ // #4967
+ "SabonSerif Bal for Nokia"
+ "\377\376\375\374\373\372\371\370" // 108816
+
+ // #4968
+ "\377\376\375\374\373\372\371\370"
+ "monotype"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108848
+
+ // #4969
+ "LucidaTypewriter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 108880
+
+ // #4970
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 108896
+
+ // #4971
+ "\377\376\375\374\373\372\371\370"
+ "Lucida"
+ "\377\376" // 108912
+
+ // #4972
+ "\377\376\375\374\373\372\371\370"
+ "B&H"
+ "\377\376\375\374\373" // 108928
+
+ // #4973
+ "\377\376\375\374\373\372\371\370"
+ "Lucida Bright"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 108960
+
+ // #4974
+ "b&h"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 108976
+
+ // #4975
+ "\377\376\375\374\373\372\371\370"
+ "New Century Schoolbook"
+ "\377\376" // 109008
+
+ // #4976
+ "Adobe"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 109024
+
+ // #4977
+ "\377\376\375\374\373\372\371\370"
+ "Charter"
+ "\377" // 109040
+
+ // #4978
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 109088+
+
+ // #4979
+ "\377\376\375\374\373\372\371\370"
+ "Bitstream Charter"
+ "\377\376\375\374\373\372\371" // 109120
+
+ // #4980
+ "\377\376\375\374\373\372\371\370"
+ "bitstream"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 109152
+
+ // #4981
+ "Century Schoolbook L"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 109184
+
+ // #4982
+ "\377\376\375\374\373\372\371\370"
+ "urw"
+ "\377\376\375\374\373" // 109200
+
+ // #4983
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 109232
+
+ // #4984
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "/usr/share/fonts/TTF/dejavu/DejaVuSans.ttf"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 109312+
+
+ // #4985
+ "\377\376\375\374\373\372\371\370"
+ "<para>You can help us improve KDE Software by reporting this error.<nl /><link url='#aboutbugreporting'>Learn more about bug reporting.</link></para><para><note>It is safe to close this dialog if you do not want to report this bug.</note></para>"
+ "\377\376\375" // 109568+
+
+ // #4987
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "<para>Voc\303""\252"" pode nos ajudar a melhorar os aplicativos do KDE relatando este erro.<nl /><link url='#aboutbugreporting'>Aprenda mais sobre os relat\303""\263""rios de erros.</link></para><para><note>\303""\211"" seguro fechar este di\303""\241""logo, caso n\303""\243""o deseje relatar este erro.</note></para>"
+ "\377\376\375\374\373\372\371" // 109856+
+
+ // #4988
+ "\377\376\375\374\373\372\371\370"
+ "Details:"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 109888
+
+ // #4990
+ "\377\376\375"
+ "Detalhes:"
+ "\377\376\375\374" // 109904
+
+ // #4991
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "<para>Executable: <application>%1</application> PID: <numid>%2</numid> Signal: %3 (%4)</para>"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 110064+
+
+ // #4993
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354"
+ "<para>Execut\303""\241""vel: <application>%1</application> PID: <numid>%2</numid> Sinal: %3 (%4)</para>"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110192+
+
+ // #4994
+ "&General"
+ "\377\376\375\374\373\372\371\370" // 110208
+
+ // #4996
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "&Geral"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 110240
+
+ // #4997
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 110272
+
+ // #4998
+ "\377\376\375\374\373\372\371\370"
+ "/usr/share/fonts/TTF/dejavu/DejaVuSans-Oblique.ttf"
+ "\377\376\375\374\373\372" // 110336+
+
+ // #4999
+ "\377\376\375\374\373\372\371\370"
+ "DejaVu Sans"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 110368
+
+ // #5000
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "/usr/share/fonts/TTF/dejavu/DejaVuSans-Bold.ttf"
+ "\377" // 110448+
+
+ // #5001
+ "Form"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 110464
+
+ // #5002
+ "\377\376\375\374\373"
+ "GetBacktraceWidget"
+ "\377\376\375\374\373\372\371\370\367" // 110496+
+
+ // #5003
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331"
+ "verticalLayout_4"
+ "\377\376\375\374\373\372\371\370\367" // 110560+
+
+ // #5004
+ "\377"
+ "verticalLayout"
+ "\377" // 110576
+
+ // #5005
+ "\377"
+ "m_statusWidget"
+ "\377" // 110592
+
+ // #5006
+ "\377\376\375\374\373\372\371\370"
+ "mainLayout"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 110624
+
+ // #5007
+ "\377\376\375"
+ "m_backtraceStack"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 110656
+
+ // #5008
+ "\377\376\375\374"
+ "backtracePage"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110688
+
+ // #5009
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "horizontalLayout"
+ "\377\376\375\374\373" // 110720
+
+ // #5010
+ "\377\376"
+ "m_backtraceEdit"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 110752+
+
+ // #5011
+ "\377\376"
+ "backtraceHelpPage"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 110784
+
+ // #5012
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "verticalLayout_3"
+ "\377\376\375" // 110816
+
+ // #5013
+ "\377\376\375"
+ "horizontalLayout_3"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 110848
+
+ // #5014
+ "\377\376\375\374"
+ "m_backtraceHelpIcon"
+ "\377\376\375\374\373\372\371\370\367" // 110880
+
+ // #5015
+ "\377\376\375\374\373\372\371\370"
+ "m_backtraceHelpLabel"
+ "\377\376\375\374" // 110912
+
+ // #5016
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "m_toggleBacktraceCheckBox"
+ "\377\376\375\374\373\372\371\370\367\366" // 110960+
+
+ // #5017
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "horizontalLayout_2"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 111008
+
+ // #5018
+ "\377\376\375\374\373\372\371"
+ "m_reloadBacktraceButton"
+ "\377\376" // 111040
+
+ // #5019
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "m_installDebugButton"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 111088+
+
+ // #5020
+ "\377\376"
+ "m_copyButton"
+ "\377\376" // 111104
+
+ // #5021
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "m_saveButton"
+ "\377\376\375\374\373" // 111136
+
+ // #5022
+ "\377\376\375\374\373\372\371\370\367\366"
+ "verticalLayout_2"
+ "\377\376\375\374\373\372" // 111168
+
+ // #5023
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "m_extraDetailsLabel"
+ "\377" // 111200
+
+ // #5024
+ "Show backtrace content (advanced)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 111248
+
+ // #5026
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314"
+ "Exibir o conte\303""\272""do do \42""backtrace\42"" (avan\303""\247""ado)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 111360+
+
+ // #5027
+ "Use this button to reload the crash information (backtrace). This is useful when you have installed the proper debug symbol packages and you want to obtain a better backtrace."
+ "\377" // 111536+
+
+ // #5029
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Use este bot\303""\243""o para recarregar as informa\303""\247""\303""\265""es da falha (backtrace). Isto \303""\251"" \303""\272""til quando voc\303""\252"" tiver instalado os pacotes de s\303""\255""mbolos de depura\303""\247""\303""\243""o adequados e quiser obter um \42""backtrace\42"" melhor."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 111776+
+
+ // #5030
+ "&Reload"
+ "\377\376\375\374\373\372\371\370\367" // 111792
+
+ // #5032
+ "\377\376\375\374\373\372\371\370\367\366"
+ "&Recarregar"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 111824
+
+ // #5033
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320"
+ "Use this button to install the missing debug symbols packages."
+ "\377\376" // 111936+
+
+ // #5035
+ "\377\376\375\374\373\372\371\370"
+ "Use este bot\303""\243""o para instalar os pacotes contendo os s\303""\255""mbolos de depura\303""\247""\303""\243""o faltantes."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 112048+
+
+ // #5036
+ "\377\376\375\374\373\372\371\370"
+ "&Install Debug Symbols"
+ "\377\376" // 112080
+
+ // #5038
+ "\377\376\375\374"
+ "&Instalar os s\303""\255""mbolos de depura\303""\247""\303""\243""o"
+ "\377\376\375\374\373\372\371" // 112128
+
+ // #5039
+ "\377\376\375\374\373\372\371\370"
+ "Use this button to copy the crash information (backtrace) to the clipboard."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 112224+
+
+ // #5041
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332"
+ "Use este bot\303""\243""o para copiar as informa\303""\247""\303""\265""es da falha (backtrace) para a \303""\241""rea de transfer\303""\252""ncia."
+ "\377\376\375\374\373\372\371\370\367" // 112368+
+
+ // #5042
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "Use this button to save the crash information (backtrace) to a file. This is useful if you want to take a look at it or to report the bug later."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 112544+
+
+ // #5044
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331"
+ "Use este bot\303""\243""o para salvar as informa\303""\247""\303""\265""es da falha (backtrace) para um arquivo. Isto \303""\251"" \303""\272""til se quiser visualis\303""\241""-lo ou reportar o erro mais tarde."
+ "\377\376" // 112736+
+
+ // #5045
+ "Monospace,10,-1,5,50,0,0,0,0,0"
+ "\377\376" // 112768
+
+ // #5046
+ "\377\376\375\374\373\372\371\370"
+ "&Developer Information"
+ "\377\376" // 112800+
+
+ // #5048
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324"
+ "Informa\303""\247""\303""\265""es do &desenvolvedor"
+ "\377\376\375\374\373" // 112880+
+
+ // #5049
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "Close the current window or document"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 112944+
+
+ // #5051
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343"
+ "Fechar a janela ou documento atual"
+ "\377" // 113008+
+
+ // #5052
+ "&Close"
+ "\377\376\375\374\373\372\371\370\367\366" // 113024
+
+ // #5054
+ "\377\376\375\374\373\372\371\370\367"
+ "Fe&char"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 113056
+
+ // #5055
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340"
+ "Starts the bug report assistant."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 113136+
+
+ // #5057
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346"
+ "Inicia o assistente de relat\303""\263""rio de erros."
+ "\377\376\375\374\373\372\371\370\367\366\365" // 113216+
+
+ // #5058
+ "Report Bug"
+ "\377\376\375\374\373\372" // 113232
+
+ // #5060
+ "\377\376\375"
+ "Relatar erro"
+ "\377" // 113248
+
+ // #5061
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "Starts a program to debug the crashed application."
+ "\377\376\375\374\373\372" // 113344+
+
+ // #5063
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Inicia um programa para depura\303""\247""\303""\243""o do aplicativo que falhou."
+ "\377\376\375\374\373\372\371" // 113424+
+
+ // #5064
+ "Debug"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 113440
+
+ // #5066
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Depurar"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 113472
+
+ // #5067
+ "gdb"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 113488
+
+ // #5068
+ "\377\376\375\374\373\372\371\370"
+ "Debug in <application>%1</application>"
+ "\377\376" // 113536
+
+ // #5070
+ "\377\376\375\374\373\372"
+ "Depurar no <application>%1</application>"
+ "\377\376" // 113584+
+
+ // #5071
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360"
+ "Use this button to restart the crashed application."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 113664+
+
+ // #5073
+ "\377"
+ "Use este bot\303""\243""o para iniciar novamente o aplicativo que falhou."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 113744+
+
+ // #5074
+ "\377\376\375\374\373\372\371\370"
+ "Restart Application"
+ "\377\376\375\374\373" // 113776
+
+ // #5076
+ "Reiniciar aplicativo"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 113808
+
+ // #5077
+ "Close this dialog (you will lose the crash information.)"
+ "\377\376\375\374\373\372\371\370" // 113872
+
+ // #5079
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316"
+ "Fechar este di\303""\241""logo (voc\303""\252"" perder\303""\241"" as informa\303""\247""\303""\265""es da falha.)"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 114000+
+
+ // #5080
+ "\377\376\375\374\373\372\371\370"
+ "/org/freedesktop/DBus"
+ "\377\376\375" // 114032
+
+ // #5081
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "org.freedesktop.DBus"
+ "\377\376\375\374" // 114080+
+
+ // #5082
+ "\377\376\375\374\373\372\371\370"
+ "NameAcquired"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 114112
+
+ // #5083
+ "\377\376\375\374\373\372\371\370"
+ "org.freedesktop.DBus"
+ "\377\376\375\374" // 114144
+
+ // #5084
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "s"
+ "\377\376" // 114160
+
+ // #5085
+ "\377\376\375\374"
+ ":1.1920"
+ "\377\376\375\374\373" // 114176
+
+ // #5086
+ "\377\376\375\374\373\372\371\370"
+ "/org/freedesktop/DBus"
+ "\377\376\375" // 114208
+
+ // #5087
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "org.freedesktop.DBus"
+ "\377\376\375\374" // 114272+
+
+ // #5088
+ "\377\376\375\374\373\372\371\370"
+ "NameAcquired"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 114304
+
+ // #5089
+ "\377\376\375\374\373\372\371\370"
+ "org.freedesktop.DBus"
+ "\377\376\375\374" // 114336
+
+ // #5090
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363"
+ "s"
+ "\377\376" // 114352
+
+ // #5091
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354"
+ "org.kde.drkonqi-30955"
+ "\377\376\375\374\373\372\371" // 114400+
+
+ // #5092
+ "\377\376\375\374\373\372\371\370"
+ "&New"
+ "\377\376\375\374" // 114416
+
+ // #5094
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "&Novo"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 114448
+
+ // #5095
+ "&Open..."
+ "\377\376\375\374\373\372\371\370" // 114464
+
+ // #5097
+ "\377\376\375\374\373\372\371"
+ "&Abrir..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 114496
+
+ // #5098
+ "Open &Recent"
+ "\377\376\375\374" // 114512
+
+ // #5100
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302"
+ "Abrir &recente"
+ "\377\376\375\374" // 114592+
+
+ // #5101
+ "&Save"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 114608
+
+ // #5103
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "&Salvar"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 114640
+
+ // #5104
+ "\377\376\375\374\373\372\371\370"
+ "Save &As..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 114672
+
+ // #5106
+ "\377\376"
+ "Salvar &como..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 114704
+
+ // #5107
+ "Re&vert"
+ "\377\376\375\374\373\372\371\370\367" // 114720
+
+ // #5109
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326"
+ "Re&verter"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 114784+
+
+ // #5110
+ "&Close"
+ "\377\376\375\374\373\372\371\370\367\366" // 114800
+
+ // #5112
+ "\377\376\375\374\373\372\371\370\367"
+ "Fe&char"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 114832
+
+ // #5113
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "&Print..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 114912+
+
+ // #5115
+ "&Imprimir..."
+ "\377\376\375\374" // 114928
+
+ // #5116
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Print Previe&w"
+ "\377\376\375\374\373\372\371\370\367\366" // 114976+
+
+ // #5118
+ "\377\376"
+ "Visuali&zar impress\303""\243""o"
+ "\377\376\375\374\373\372\371\370" // 115008
+
+ // #5119
+ "\377\376\375\374\373\372\371\370"
+ "&Mail..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 115040
+
+ // #5121
+ "\377\376\375\374\373\372\371\370\367\366"
+ "Enviar por e-&mail..."
+ "\377" // 115072
+
+ // #5122
+ "&Quit"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 115088
+
+ // #5124
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Sa&ir"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 115120
+
+ // #5125
+ "&Undo"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 115136
+
+ // #5127
+ "&Desfazer"
+ "\377\376\375\374\373\372\371" // 115152
+
+ // #5128
+ "Re&do"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 115168
+
+ // #5130
+ "\377"
+ "Re&fazer"
+ "\377\376\375\374\373\372\371" // 115184
+
+ // #5131
+ "Cu&t"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 115200
+
+ // #5133
+ "\377\376\375\374"
+ "Recor&tar"
+ "\377\376\375" // 115216
+
+ // #5134
+ "&Copy"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 115232
+
+ // #5136
+ "\377\376\375\374\373\372\371"
+ "&Copiar"
+ "\377\376" // 115248
+
+ // #5137
+ "&Paste"
+ "\377\376\375\374\373\372\371\370\367\366" // 115264
+
+ // #5139
+ "\377\376\375\374\373"
+ "Co&lar"
+ "\377\376\375\374\373" // 115280
+
+ // #5140
+ "&Paste"
+ "\377\376\375\374\373\372\371\370\367\366" // 115296
+
+ // #5142
+ "\377\376\375\374\373"
+ "Co&lar"
+ "\377\376\375\374\373" // 115312
+
+ // #5143
+ "C&lear"
+ "\377\376\375\374\373\372\371\370\367\366" // 115328
+
+ // #5145
+ "\377\376"
+ "&Limpar"
+ "\377\376\375\374\373\372\371" // 115344
+
+ // #5146
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Select &All"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 115424+
+
+ // #5148
+ "\377\376\375\374\373\372\371\370\367"
+ "Selecion&ar tudo"
+ "\377\376\375\374\373\372\371" // 115456
+
+ // #5149
+ "\377\376\375\374\373\372\371\370"
+ "Dese&lect"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 115488+
+
+ // #5151
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "&Desmarcar"
+ "\377\376\375\374\373\372\371\370\367\366" // 115520
+
+ // #5152
+ "\377\376\375\374\373\372\371\370"
+ "&Find..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 115552
+
+ // #5154
+ "\377\376\375\374\373\372"
+ "&Localizar..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 115584
+
+ // #5155
+ "\377\376\375\374\373\372\371\370"
+ "Find &Next"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 115616+
+
+ // #5157
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Localizar p&r\303""\263""xima"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 115664
+
+ // #5158
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310"
+ "Find Pre&vious"
+ "\377\376\375\374\373\372\371\370\367\366" // 115744+
+
+ // #5160
+ "\377\376\375"
+ "Localizar &anterior"
+ "\377\376\375\374\373\372\371\370\367\366" // 115776
+
+ // #5161
+ "\377\376\375\374\373\372\371\370"
+ "&Replace..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 115808+
+
+ // #5163
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332"
+ "Substitui&r..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 115872+
+
+ // #5164
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330"
+ "&Actual Size"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 115936+
+
+ // #5166
+ "\377\376\375\374\373\372\371\370\367\366\365\364"
+ "Tamanho re&al"
+ "\377\376\375\374\373\372\371" // 115968
+
+ // #5167
+ "\377\376\375\374\373\372\371\370"
+ "&Fit to Page"
+ "\377\376\375\374\373\372\371\370\367\366\365\364" // 116000+
+
+ // #5169
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336"
+ "A&justar \303""\240"" p\303""\241""gina"
+ "\377\376\375\374\373\372\371\370\367\366\365" // 116064+
+
+ // #5170
+ "\377\376\375\374\373\372\371\370"
+ "Fit to Page &Width"
+ "\377\376\375\374\373\372" // 116096
+
+ // #5172
+ "\377\376\375\374\373\372\371\370\367"
+ "Ajustar \303""\240"" &largura da p\303""\241""gina"
+ "\377\376\375\374\373\372\371\370\367" // 116144+
+
+ // #5173
+ "\377\376\375\374\373\372\371\370"
+ "Fit to Page &Height"
+ "\377\376\375\374\373" // 116176
+
+ // #5175
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Ajustar \303""\240"" al&tura da p\303""\241""gina"
+ "\377\376\375\374\373\372\371\370" // 116224
+
+ // #5176
+ "\377\376\375\374\373\372\371\370"
+ "Zoom &In"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 116256
+
+ // #5178
+ "\377"
+ "Ampl&iar"
+ "\377\376\375\374\373\372\371" // 116272
+
+ // #5179
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Zoom &Out"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 116320+
+
+ // #5181
+ "\377\376\375\374\373\372\371\370\367\366"
+ "&Reduzir"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116352
+
+ // #5182
+ "\377\376\375\374\373\372\371\370"
+ "&Zoom..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 116384
+
+ // #5184
+ "\377\376\375"
+ "&Zoom..."
+ "\377\376\375\374\373" // 116400
+
+ // #5185
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "&Redisplay"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116448+
+
+ // #5187
+ "\377\376"
+ "&Reexibir"
+ "\377\376\375\374\373" // 116464
+
+ // #5188
+ "&Up"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 116480
+
+ // #5190
+ "\377\376\375\374\373\372\371\370"
+ "A&cima"
+ "\377\376" // 116496
+
+ // #5191
+ "&Previous Page"
+ "\377\376" // 116512
+
+ // #5193
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "P\303""\241""gina &anterior"
+ "\377" // 116544
+
+ // #5194
+ "&Next Page"
+ "\377\376\375\374\373\372" // 116560
+
+ // #5196
+ "\377\376\375\374\373\372\371\370\367\366\365"
+ "Pr\303""\263""xi&ma p\303""\241""gina"
+ "\377\376\375\374" // 116592
+
+ // #5197
+ "&Go To..."
+ "\377\376\375\374\373\372\371" // 116608
+
+ // #5199
+ "\377\376\375\374\373\372\371"
+ "&Ir para..."
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116640
+
+ // #5200
+ "&Go to Page..."
+ "\377\376" // 116656
+
+ // #5202
+ "\377\376\375\374\373\372\371"
+ "&Ir para a p\303""\241""gina..."
+ "\377\376\375\374" // 116688
+
+ // #5203
+ "&Go to Line..."
+ "\377\376" // 116704
+
+ // #5205
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335"
+ "&Ir para a linha..."
+ "\377\376\375\374\373\372\371\370\367\366" // 116768+
+
+ // #5206
+ "&First Page"
+ "\377\376\375\374\373" // 116784
+
+ // #5208
+ "&Primeira p\303""\241""gina"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361" // 116816
+
+ // #5209
+ "&Last Page"
+ "\377\376\375\374\373\372" // 116832
+
+ // #5211
+ "\377\376\375\374\373\372\371"
+ "&\303""\232""ltima p\303""\241""gina"
+ "\377\376\375\374\373\372\371\370\367" // 116864
+
+ // #5212
+ "\377\376\375\374\373\372\371\370"
+ "&Back in the Document"
+ "\377\376\375" // 116896
+
+ // #5214
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322"
+ "&Voltar no documento"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 116976+
+
+ // #5215
+ "&Forward in the Document"
+ "\377\376\375\374\373\372\371\370" // 117008
+
+ // #5217
+ "\377\376\375\374\373\372"
+ "&Avan\303""\247""ar no documento"
+ "\377\376\375\374" // 117040
+
+ // #5218
+ "&Add Bookmark"
+ "\377\376\375" // 117056
+
+ // #5220
+ "\377\376\375\374\373"
+ "&Adicionar favorito"
+ "\377\376\375\374\373\372\371\370" // 117088
+
+ // #5221
+ "\377\376\375\374\373\372\371\370"
+ "&Edit Bookmarks..."
+ "\377\376\375\374\373\372" // 117120
+
+ // #5223
+ "\377\376\375\374\373\372\371\370\367"
+ "&Editar favoritos..."
+ "\377\376\375" // 117152+
+
+ // #5224
+ "&Spelling..."
+ "\377\376\375\374" // 117168
+
+ // #5226
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344"
+ "&Ortografia..."
+ "\377\376\375\374\373\372" // 117216+
+
+ // #5227
+ "Show &Menubar"
+ "\377\376\375" // 117232
+
+ // #5229
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350"
+ "Exibir barra de &menus"
+ "\377\376" // 117280+
+
+ // #5230
+ "Show &Toolbar"
+ "\377\376\375" // 117296
+
+ // #5232
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361"
+ "Exibir barra de &ferramentas"
+ "\377\376\375\374\373" // 117344
+
+ // #5233
+ "Show St&atusbar"
+ "\377" // 117360
+
+ // #5235
+ "\377\376\375\374"
+ "Mostrar barra de st&atus"
+ "\377\376\375\374" // 117392
+
+ // #5236
+ "\377\376\375\374\373\372\371\370"
+ "F&ull Screen Mode"
+ "\377\376\375\374\373\372\371" // 117424
+
+ // #5238
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341"
+ "&Modo de tela cheia"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362" // 117488+
+
+ // #5239
+ "&Save Settings"
+ "\377\376" // 117504
+
+ // #5241
+ "\377\376\375\374\373\372\371\370\367"
+ "&Salvar configura\303""\247""\303""\265""es"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 117552
+
+ // #5242
+ "\377\376\375\374\373\372\371\370"
+ "Configure S&hortcuts..."
+ "\377" // 117584
+
+ // #5244
+ "\377\376\375\374\373\372\371\370\367"
+ "Configurar atal&hos..."
+ "\377" // 117616
+
+ // #5245
+ "\377\376\375\374\373\372\371\370"
+ "&Configure %1..."
+ "\377\376\375\374\373\372\371\370" // 117648
+
+ // #5247
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313"
+ "&Configurar o %1..."
+ "\377\376\375\374\373\372\371\370" // 117728+
+
+ // #5248
+ "\377\376\375\374\373\372\371\370"
+ "Configure Tool&bars..."
+ "\377\376" // 117760
+
+ // #5250
+ "\377\376\375\374\373\372\371\370"
+ "Configurar &barra de ferramentas..."
+ "\377\376\375\374\373" // 117808
+
+ // #5251
+ "Configure &Notifications..."
+ "\377\376\375\374\373" // 117840
+
+ // #5253
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304"
+ "Configurar n&otifica\303""\247""\303""\265""es..."
+ "\377\376\375\374\373\372\371" // 117936+
+
+ // #5254
+ "%1 &Handbook"
+ "\377\376\375\374" // 117952
+
+ // #5256
+ "\377\376\375\374\373\372"
+ "&Manual do %1"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363" // 117984
+
+ // #5257
+ "What's &This?"
+ "\377\376\375" // 118000
+
+ // #5259
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345"
+ "O que \303""\251"" is&to?"
+ "\377\376\375\374\373\372" // 118048+
+
+ // #5260
+ "Tip of the &Day"
+ "\377" // 118064
+
+ // #5262
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362"
+ "Dica do &dia"
+ "\377\376\375\374\373\372" // 118096
+
+ // #5263
+ "&Report Bug..."
+ "\377\376" // 118112
+
+ // #5265
+ "\377\376\375\374\373"
+ "&Relatar erro..."
+ "\377\376\375\374\373\372\371\370\367\366\365" // 118144
+
+ // #5266
+ "Switch Application &Language..."
+ "\377" // 118176
+
+ // #5268
+ "\377\376\375\374\373\372\371\370\367"
+ "Mudar o idioma do ap&licativo..."
+ "\377\376\375\374\373\372\371" // 118224
+
+ // #5269
+ "&About %1"
+ "\377\376\375\374\373\372\371" // 118240
+
+ // #5271
+ "&Sobre o %1"
+ "\377\376\375\374\373" // 118256
+
+ // #5272
+ "About &KDE"
+ "\377\376\375\374\373\372" // 118272
+
+ // #5274
+ "\377\376\375\374"
+ "Sobre o &KDE"
+ "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360" // 118304
+
+};
+static const int intData[] = {
+ 21, 8, 8, 3416, 3416, // #0
+ 14, 32, 32, 320, 320, // #1
+ 0, 48, 48, 3428, 3428, // #2
+ 26, 48, 48, 800, 800, // #3
+ 0, 80, 80, 3428, 3428, // #4
+ 29, 80, 80, 800, 800, // #5
+ 0, 112, 112, 3428, 3428, // #6
+ 13, 136, 136, 760, 760, // #7
+ 0, 160, 160, 3428, 3428, // #8
+ 0, 160, 160, 3428, 3428, // #9
+ 0, 160, 160, 3428, 3428, // #10
+ 0, 160, 160, 3428, 3428, // #11
+ 0, 160, 160, 3428, 3428, // #12
+ 0, 160, 160, 3428, 3428, // #13
+ 0, 160, 160, 3428, 3428, // #14
+ 0, 160, 160, 3428, 3428, // #15
+ 0, 160, 160, 3428, 3428, // #16
+ 0, 160, 160, 3428, 3428, // #17
+ 0, 160, 160, 3428, 3428, // #18
+ 0, 160, 160, 3428, 3428, // #19
+ 0, 160, 160, 3428, 3428, // #20
+ 0, 160, 160, 3428, 3428, // #21
+ 0, 160, 160, 3428, 3428, // #22
+ 0, 160, 160, 3428, 3428, // #23
+ 0, 160, 160, 3428, 3428, // #24
+ 0, 160, 160, 3428, 3428, // #25
+ 0, 160, 160, 3428, 3428, // #26
+ 0, 160, 160, 3428, 3428, // #27
+ 0, 160, 160, 3428, 3428, // #28
+ 0, 160, 160, 3428, 3428, // #29
+ 0, 160, 160, 3428, 3428, // #30
+ 0, 160, 160, 3428, 3428, // #31
+ 0, 160, 160, 3428, 3428, // #32
+ 0, 160, 160, 3428, 3428, // #33
+ 0, 160, 160, 3428, 3428, // #34
+ 0, 160, 160, 3428, 3428, // #35
+ 0, 160, 160, 3428, 3428, // #36
+ 0, 160, 160, 3428, 3428, // #37
+ 0, 160, 160, 3428, 3428, // #38
+ 0, 160, 160, 3428, 3428, // #39
+ 0, 160, 160, 3428, 3428, // #40
+ 0, 160, 160, 3428, 3428, // #41
+ 0, 160, 160, 3428, 3428, // #42
+ 0, 160, 160, 3428, 3428, // #43
+ 0, 160, 160, 3428, 3428, // #44
+ 0, 160, 160, 3428, 3428, // #45
+ 0, 160, 160, 3428, 3428, // #46
+ 0, 160, 160, 3428, 3428, // #47
+ 0, 160, 160, 3428, 3428, // #48
+ 0, 160, 160, 3428, 3428, // #49
+ 0, 160, 160, 3428, 3428, // #50
+ 0, 160, 160, 3428, 3428, // #51
+ 0, 160, 160, 3428, 3428, // #52
+ 0, 160, 160, 3428, 3428, // #53
+ 7, 168, 168, 3464, 3464, // #54
+ 7, 184, 184, 3464, 3464, // #55
+ 80, 200, 200, 1128, 1128, // #56
+ 8, 288, 288, 3280, 3280, // #57
+ 80, 328, 328, 1128, 1128, // #58
+ 25, 448, 448, 2416, 2416, // #59
+ 6, 488, 488, 2184, 2184, // #60
+ 6, 504, 504, 2184, 2184, // #61
+ 80, 520, 520, 520, 520, // #62
+ 8, 608, 608, 3472, 3472, // #63
+ 80, 648, 648, 520, 520, // #64
+ 25, 736, 736, 3408, 3408, // #65
+ 16, 776, 776, 792, 792, // #66
+ 7, 800, 800, 3760, 3760, // #67
+ 7, 824, 824, 3464, 3464, // #68
+ 7, 840, 840, 3464, 3464, // #69
+ 4, 848, 848, 3984, 3984, // #70
+ 7, 872, 872, 3976, 3976, // #71
+ 6, 880, 880, 1232, 1232, // #72
+ 4, 896, 896, 3216, 3216, // #73
+ 4, 912, 912, 2528, 2528, // #74
+ 6, 928, 928, 3792, 3792, // #75
+ 4, 952, 952, 2040, 2040, // #76
+ 4, 968, 968, 1352, 1352, // #77
+ 6, 984, 984, 2616, 2616, // #78
+ 4, 992, 992, 368, 368, // #79
+ 4, 1008, 1008, 3776, 3776, // #80
+ 6, 1024, 1024, 944, 944, // #81
+ 4, 1048, 1048, 1976, 1976, // #82
+ 7, 1056, 1056, 3376, 3376, // #83
+ 6, 1080, 1080, 2552, 2552, // #84
+ 7, 1096, 1096, 3464, 3464, // #85
+ 6, 1112, 1112, 2360, 2360, // #86
+ 11, 1128, 1128, 3672, 3672, // #87
+ 7, 1152, 1152, 3408, 3408, // #88
+ 6, 1176, 1176, 3208, 3208, // #89
+ 1063, 1216, 1216, 608, 608, // #90
+ 7, 2296, 2296, 3576, 3576, // #91
+ 9, 2304, 2304, 3680, 3680, // #92
+ 7, 2328, 2328, 3576, 3576, // #93
+ 9, 2336, 2336, 3680, 3680, // #94
+ 7, 2352, 2352, 1808, 1808, // #95
+ 9, 2376, 2376, 1912, 1912, // #96
+ 7, 2400, 2400, 1808, 1808, // #97
+ 9, 2440, 2440, 1912, 1912, // #98
+ 10, 2472, 2472, 2216, 2216, // #99
+ 9, 2504, 2504, 2328, 2328, // #100
+ 10, 2536, 2536, 2216, 2216, // #101
+ 9, 2568, 2568, 2328, 2328, // #102
+ 12, 2592, 2592, 2624, 2624, // #103
+ 9, 2608, 2608, 2736, 2736, // #104
+ 12, 2624, 2624, 2624, 2624, // #105
+ 9, 2640, 2640, 2736, 2736, // #106
+ 10, 2656, 2656, 3040, 3040, // #107
+ 9, 2672, 2672, 3152, 3152, // #108
+ 10, 2688, 2688, 3040, 3040, // #109
+ 9, 2704, 2704, 3152, 3152, // #110
+ 7, 2728, 2728, 3448, 3448, // #111
+ 9, 2736, 2736, 3552, 3552, // #112
+ 7, 2760, 2760, 3448, 3448, // #113
+ 9, 2768, 2768, 3552, 3552, // #114
+ 7, 2792, 2792, 3848, 3848, // #115
+ 9, 2800, 2800, 3952, 3952, // #116
+ 7, 2824, 2824, 3848, 3848, // #117
+ 9, 2832, 2832, 3952, 3952, // #118
+ 6, 2856, 2856, 152, 152, // #119
+ 9, 2864, 2864, 256, 256, // #120
+ 6, 2888, 2888, 152, 152, // #121
+ 9, 2896, 2896, 256, 256, // #122
+ 13, 2920, 2920, 552, 552, // #123
+ 9, 2952, 2952, 664, 664, // #124
+ 13, 2984, 2984, 552, 552, // #125
+ 9, 3016, 3016, 664, 664, // #126
+ 9, 3040, 3040, 960, 960, // #127
+ 9, 3056, 3056, 1072, 1072, // #128
+ 9, 3072, 3072, 960, 960, // #129
+ 9, 3088, 3088, 1072, 1072, // #130
+ 9, 3104, 3104, 960, 960, // #131
+ 9, 3120, 3120, 1072, 1072, // #132
+ 6, 3144, 3144, 1368, 1368, // #133
+ 9, 3152, 3152, 1472, 1472, // #134
+ 6, 3176, 3176, 1368, 1368, // #135
+ 9, 3184, 3184, 1472, 1472, // #136
+ 6, 3208, 3208, 1368, 1368, // #137
+ 9, 3216, 3216, 1472, 1472, // #138
+ 6, 3232, 3232, 1776, 1776, // #139
+ 9, 3256, 3256, 1880, 1880, // #140
+ 6, 3280, 3280, 1776, 1776, // #141
+ 9, 3304, 3304, 1880, 1880, // #142
+ 7, 3328, 3328, 2176, 2176, // #143
+ 9, 3352, 3352, 2280, 2280, // #144
+ 7, 3376, 3376, 2176, 2176, // #145
+ 9, 3400, 3400, 2280, 2280, // #146
+ 10, 3432, 3432, 2584, 2584, // #147
+ 9, 3464, 3464, 2696, 2696, // #148
+ 10, 3496, 3496, 2584, 2584, // #149
+ 9, 3528, 3528, 2696, 2696, // #150
+ 12, 3552, 3552, 2992, 2992, // #151
+ 9, 3568, 3568, 3104, 3104, // #152
+ 12, 3584, 3584, 2992, 2992, // #153
+ 9, 3600, 3600, 3104, 3104, // #154
+ 10, 3616, 3616, 3408, 3408, // #155
+ 9, 3632, 3632, 3520, 3520, // #156
+ 10, 3648, 3648, 3408, 3408, // #157
+ 9, 3664, 3664, 3520, 3520, // #158
+ 7, 3688, 3688, 3816, 3816, // #159
+ 9, 3696, 3696, 3920, 3920, // #160
+ 7, 3720, 3720, 3816, 3816, // #161
+ 9, 3728, 3728, 3920, 3920, // #162
+ 7, 3752, 3752, 120, 120, // #163
+ 9, 3760, 3760, 224, 224, // #164
+ 7, 3784, 3784, 120, 120, // #165
+ 9, 3792, 3792, 224, 224, // #166
+ 6, 3816, 3816, 520, 520, // #167
+ 9, 3824, 3824, 624, 624, // #168
+ 6, 3848, 3848, 520, 520, // #169
+ 9, 3856, 3856, 624, 624, // #170
+ 13, 3880, 3880, 920, 920, // #171
+ 9, 3912, 3912, 1032, 1032, // #172
+ 13, 3944, 3944, 920, 920, // #173
+ 9, 3976, 3976, 1032, 1032, // #174
+ 9, 4000, 4000, 1328, 1328, // #175
+ 9, 4016, 4016, 1440, 1440, // #176
+ 9, 4032, 4032, 1328, 1328, // #177
+ 9, 4048, 4048, 1440, 1440, // #178
+ 6, 4072, 4072, 1736, 1736, // #179
+ 9, 4080, 4080, 1840, 1840, // #180
+ 6, 4104, 4104, 1736, 1736, // #181
+ 9, 4112, 4112, 1840, 1840, // #182
+ 6, 4136, 4136, 1736, 1736, // #183
+ 9, 4144, 4144, 1840, 1840, // #184
+ 6, 4168, 4168, 2136, 2136, // #185
+ 9, 4176, 4176, 2240, 2240, // #186
+ 6, 4200, 4200, 2136, 2136, // #187
+ 9, 4208, 4208, 2240, 2240, // #188
+ 7, 4232, 4232, 2536, 2536, // #189
+ 9, 4240, 4240, 2640, 2640, // #190
+ 7, 4264, 4264, 2536, 2536, // #191
+ 9, 4272, 4272, 2640, 2640, // #192
+ 10, 4288, 4288, 2944, 2944, // #193
+ 9, 4304, 4304, 3056, 3056, // #194
+ 10, 4320, 4320, 2944, 2944, // #195
+ 9, 4336, 4336, 3056, 3056, // #196
+ 12, 4360, 4360, 3352, 3352, // #197
+ 9, 4392, 4392, 3464, 3464, // #198
+ 12, 4424, 4424, 3352, 3352, // #199
+ 9, 4456, 4456, 3464, 3464, // #200
+ 10, 4488, 4488, 3768, 3768, // #201
+ 9, 4520, 4520, 3880, 3880, // #202
+ 10, 4552, 4552, 3768, 3768, // #203
+ 9, 4584, 4584, 3880, 3880, // #204
+ 7, 4616, 4616, 88, 88, // #205
+ 9, 4624, 4624, 192, 192, // #206
+ 7, 4648, 4648, 88, 88, // #207
+ 9, 4656, 4656, 192, 192, // #208
+ 7, 4680, 4680, 488, 488, // #209
+ 9, 4688, 4688, 592, 592, // #210
+ 7, 4712, 4712, 488, 488, // #211
+ 9, 4720, 4720, 592, 592, // #212
+ 6, 4744, 4744, 888, 888, // #213
+ 9, 4752, 4752, 992, 992, // #214
+ 6, 4776, 4776, 888, 888, // #215
+ 9, 4784, 4784, 992, 992, // #216
+ 13, 4808, 4808, 1288, 1288, // #217
+ 9, 4872, 4872, 1400, 1400, // #218
+ 13, 4904, 4904, 1288, 1288, // #219
+ 9, 4936, 4936, 1400, 1400, // #220
+ 9, 4960, 4960, 1696, 1696, // #221
+ 9, 4976, 4976, 1808, 1808, // #222
+ 9, 4992, 4992, 1696, 1696, // #223
+ 9, 5008, 5008, 1808, 1808, // #224
+ 9, 5024, 5024, 1696, 1696, // #225
+ 9, 5040, 5040, 1808, 1808, // #226
+ 6, 5064, 5064, 2104, 2104, // #227
+ 9, 5072, 5072, 2208, 2208, // #228
+ 6, 5096, 5096, 2104, 2104, // #229
+ 9, 5104, 5104, 2208, 2208, // #230
+ 6, 5128, 5128, 2104, 2104, // #231
+ 9, 5136, 5136, 2208, 2208, // #232
+ 6, 5160, 5160, 2504, 2504, // #233
+ 9, 5168, 5168, 2608, 2608, // #234
+ 6, 5192, 5192, 2504, 2504, // #235
+ 9, 5200, 5200, 2608, 2608, // #236
+ 7, 5224, 5224, 72, 72, // #237
+ 9, 5232, 5232, 176, 176, // #238
+ 7, 5256, 5256, 72, 72, // #239
+ 9, 5264, 5264, 176, 176, // #240
+ 10, 5280, 5280, 480, 480, // #241
+ 9, 5296, 5296, 592, 592, // #242
+ 10, 5312, 5312, 480, 480, // #243
+ 9, 5328, 5328, 592, 592, // #244
+ 12, 5384, 5384, 888, 888, // #245
+ 9, 5416, 5416, 1000, 1000, // #246
+ 12, 5448, 5448, 888, 888, // #247
+ 9, 5480, 5480, 1000, 1000, // #248
+ 10, 5512, 5512, 1304, 1304, // #249
+ 9, 5544, 5544, 1416, 1416, // #250
+ 10, 5576, 5576, 1304, 1304, // #251
+ 9, 5608, 5608, 1416, 1416, // #252
+ 7, 5632, 5632, 1712, 1712, // #253
+ 9, 5656, 5656, 1816, 1816, // #254
+ 7, 5680, 5680, 1712, 1712, // #255
+ 9, 5704, 5704, 1816, 1816, // #256
+ 7, 5728, 5728, 2112, 2112, // #257
+ 9, 5752, 5752, 2216, 2216, // #258
+ 7, 5776, 5776, 2112, 2112, // #259
+ 9, 5800, 5800, 2216, 2216, // #260
+ 6, 5824, 5824, 2512, 2512, // #261
+ 9, 5896, 5896, 2616, 2616, // #262
+ 6, 5920, 5920, 2512, 2512, // #263
+ 9, 5960, 5960, 2616, 2616, // #264
+ 13, 5992, 5992, 2920, 2920, // #265
+ 9, 6024, 6024, 3032, 3032, // #266
+ 13, 6056, 6056, 2920, 2920, // #267
+ 9, 6088, 6088, 3032, 3032, // #268
+ 9, 6112, 6112, 3328, 3328, // #269
+ 9, 6128, 6128, 3440, 3440, // #270
+ 9, 6144, 6144, 3328, 3328, // #271
+ 9, 6160, 6160, 3440, 3440, // #272
+ 9, 6176, 6176, 3328, 3328, // #273
+ 9, 6192, 6192, 3440, 3440, // #274
+ 6, 6216, 6216, 3736, 3736, // #275
+ 9, 6224, 6224, 3840, 3840, // #276
+ 6, 6248, 6248, 3736, 3736, // #277
+ 9, 6256, 6256, 3840, 3840, // #278
+ 6, 6280, 6280, 3736, 3736, // #279
+ 9, 6288, 6288, 3840, 3840, // #280
+ 6, 6312, 6312, 40, 40, // #281
+ 9, 6320, 6320, 144, 144, // #282
+ 6, 6344, 6344, 40, 40, // #283
+ 9, 6352, 6352, 144, 144, // #284
+ 7, 6376, 6376, 440, 440, // #285
+ 9, 6384, 6384, 544, 544, // #286
+ 7, 6408, 6408, 440, 440, // #287
+ 9, 6416, 6416, 544, 544, // #288
+ 10, 6432, 6432, 848, 848, // #289
+ 9, 6448, 6448, 960, 960, // #290
+ 10, 6464, 6464, 848, 848, // #291
+ 9, 6480, 6480, 960, 960, // #292
+ 12, 6504, 6504, 1256, 1256, // #293
+ 9, 6536, 6536, 1368, 1368, // #294
+ 12, 6568, 6568, 1256, 1256, // #295
+ 9, 6600, 6600, 1368, 1368, // #296
+ 10, 6632, 6632, 1672, 1672, // #297
+ 9, 6664, 6664, 1784, 1784, // #298
+ 10, 6696, 6696, 1672, 1672, // #299
+ 9, 6728, 6728, 1784, 1784, // #300
+ 7, 6752, 6752, 2080, 2080, // #301
+ 9, 6776, 6776, 2184, 2184, // #302
+ 7, 6800, 6800, 2080, 2080, // #303
+ 9, 6824, 6824, 2184, 2184, // #304
+ 7, 6848, 6848, 2480, 2480, // #305
+ 9, 6872, 6872, 2584, 2584, // #306
+ 7, 6896, 6896, 2480, 2480, // #307
+ 9, 6920, 6920, 2584, 2584, // #308
+ 6, 6944, 6944, 2880, 2880, // #309
+ 9, 6968, 6968, 2984, 2984, // #310
+ 6, 6992, 6992, 2880, 2880, // #311
+ 9, 7016, 7016, 2984, 2984, // #312
+ 13, 7040, 7040, 3280, 3280, // #313
+ 9, 7056, 7056, 3392, 3392, // #314
+ 13, 7072, 7072, 3280, 3280, // #315
+ 9, 7088, 7088, 3392, 3392, // #316
+ 9, 7112, 7112, 3688, 3688, // #317
+ 9, 7144, 7144, 3800, 3800, // #318
+ 9, 7176, 7176, 3688, 3688, // #319
+ 9, 7208, 7208, 3800, 3800, // #320
+ 9, 7240, 7240, 3688, 3688, // #321
+ 9, 7272, 7272, 3800, 3800, // #322
+ 6, 7296, 7296, 0, 0, // #323
+ 9, 7320, 7320, 104, 104, // #324
+ 6, 7344, 7344, 0, 0, // #325
+ 9, 7368, 7368, 104, 104, // #326
+ 6, 7392, 7392, 0, 0, // #327
+ 9, 7416, 7416, 104, 104, // #328
+ 6, 7440, 7440, 400, 400, // #329
+ 9, 7496, 7496, 504, 504, // #330
+ 6, 7520, 7520, 400, 400, // #331
+ 9, 7560, 7560, 504, 504, // #332
+ 7, 7584, 7584, 800, 800, // #333
+ 9, 7608, 7608, 904, 904, // #334
+ 7, 7632, 7632, 800, 800, // #335
+ 9, 7656, 7656, 904, 904, // #336
+ 10, 7680, 7680, 1216, 1216, // #337
+ 9, 7696, 7696, 1328, 1328, // #338
+ 10, 7712, 7712, 1216, 1216, // #339
+ 9, 7728, 7728, 1328, 1328, // #340
+ 12, 7752, 7752, 1624, 1624, // #341
+ 9, 7784, 7784, 1736, 1736, // #342
+ 12, 7816, 7816, 1624, 1624, // #343
+ 9, 7848, 7848, 1736, 1736, // #344
+ 10, 7880, 7880, 2040, 2040, // #345
+ 9, 7912, 7912, 2152, 2152, // #346
+ 10, 7944, 7944, 2040, 2040, // #347
+ 9, 7976, 7976, 2152, 2152, // #348
+ 7, 8000, 8000, 2448, 2448, // #349
+ 9, 8072, 8072, 2552, 2552, // #350
+ 7, 8096, 8096, 2448, 2448, // #351
+ 9, 8136, 8136, 2552, 2552, // #352
+ 7, 8160, 8160, 2848, 2848, // #353
+ 9, 8184, 8184, 2952, 2952, // #354
+ 7, 8208, 8208, 2848, 2848, // #355
+ 9, 8232, 8232, 2952, 2952, // #356
+ 6, 8256, 8256, 3248, 3248, // #357
+ 9, 8280, 8280, 3352, 3352, // #358
+ 6, 8304, 8304, 3248, 3248, // #359
+ 9, 8328, 8328, 3352, 3352, // #360
+ 13, 8352, 8352, 3696, 3696, // #361
+ 9, 8368, 8368, 3808, 3808, // #362
+ 13, 8384, 8384, 3696, 3696, // #363
+ 9, 8400, 8400, 3808, 3808, // #364
+ 9, 8416, 8416, 4064, 4064, // #365
+ 9, 8432, 8432, 80, 80, // #366
+ 9, 8448, 8448, 4064, 4064, // #367
+ 9, 8464, 8464, 80, 80, // #368
+ 9, 8480, 8480, 4064, 4064, // #369
+ 9, 8496, 8496, 80, 80, // #370
+ 6, 8520, 8520, 376, 376, // #371
+ 9, 8528, 8528, 480, 480, // #372
+ 6, 8552, 8552, 376, 376, // #373
+ 9, 8560, 8560, 480, 480, // #374
+ 6, 8584, 8584, 376, 376, // #375
+ 9, 8592, 8592, 480, 480, // #376
+ 6, 8616, 8616, 776, 776, // #377
+ 9, 8624, 8624, 880, 880, // #378
+ 6, 8648, 8648, 776, 776, // #379
+ 9, 8656, 8656, 880, 880, // #380
+ 7, 8680, 8680, 1176, 1176, // #381
+ 9, 8688, 8688, 1280, 1280, // #382
+ 7, 8712, 8712, 1176, 1176, // #383
+ 9, 8720, 8720, 1280, 1280, // #384
+ 12, 8744, 8744, 1576, 1576, // #385
+ 9, 8776, 8776, 1688, 1688, // #386
+ 12, 8808, 8808, 1576, 1576, // #387
+ 9, 8840, 8840, 1688, 1688, // #388
+ 10, 8872, 8872, 1992, 1992, // #389
+ 9, 8904, 8904, 2104, 2104, // #390
+ 10, 8936, 8936, 1992, 1992, // #391
+ 9, 8968, 8968, 2104, 2104, // #392
+ 7, 8992, 8992, 2400, 2400, // #393
+ 9, 9016, 9016, 2504, 2504, // #394
+ 7, 9040, 9040, 2400, 2400, // #395
+ 9, 9064, 9064, 2504, 2504, // #396
+ 9, 9096, 9096, 2808, 2808, // #397
+ 9, 9128, 9128, 2920, 2920, // #398
+ 9, 9160, 9160, 2808, 2808, // #399
+ 9, 9192, 9192, 2920, 2920, // #400
+ 6, 9216, 9216, 3216, 3216, // #401
+ 9, 9288, 9288, 3320, 3320, // #402
+ 6, 9312, 9312, 3216, 3216, // #403
+ 9, 9352, 9352, 3320, 3320, // #404
+ 6, 9376, 9376, 3216, 3216, // #405
+ 9, 9416, 9416, 3320, 3320, // #406
+ 6, 9448, 9448, 3624, 3624, // #407
+ 9, 9456, 9456, 3728, 3728, // #408
+ 6, 9480, 9480, 3624, 3624, // #409
+ 9, 9488, 9488, 3728, 3728, // #410
+ 22, 9512, 9512, 1992, 1992, // #411
+ 11, 9544, 9544, 2232, 2232, // #412
+ 11, 9576, 9576, 2472, 2472, // #413
+ 11, 9608, 9608, 2712, 2712, // #414
+ 22, 9632, 9632, 2944, 2944, // #415
+ 22, 9664, 9664, 3184, 3184, // #416
+ 6, 9704, 9704, 2360, 2360, // #417
+ 11, 9720, 9720, 3672, 3672, // #418
+ 7, 9744, 9744, 3408, 3408, // #419
+ 6, 9768, 9768, 3208, 3208, // #420
+ 1063, 9792, 9792, 608, 608, // #421
+ 7, 10872, 10872, 3576, 3576, // #422
+ 9, 10880, 10880, 3680, 3680, // #423
+ 7, 10904, 10904, 3576, 3576, // #424
+ 9, 10912, 10912, 3680, 3680, // #425
+ 7, 10928, 10928, 1808, 1808, // #426
+ 9, 10952, 10952, 1912, 1912, // #427
+ 7, 10976, 10976, 1808, 1808, // #428
+ 9, 11016, 11016, 1912, 1912, // #429
+ 10, 11048, 11048, 2216, 2216, // #430
+ 9, 11080, 11080, 2328, 2328, // #431
+ 10, 11112, 11112, 2216, 2216, // #432
+ 9, 11144, 11144, 2328, 2328, // #433
+ 12, 11168, 11168, 2624, 2624, // #434
+ 9, 11184, 11184, 2736, 2736, // #435
+ 12, 11200, 11200, 2624, 2624, // #436
+ 9, 11216, 11216, 2736, 2736, // #437
+ 10, 11232, 11232, 3040, 3040, // #438
+ 9, 11248, 11248, 3152, 3152, // #439
+ 10, 11264, 11264, 3040, 3040, // #440
+ 9, 11280, 11280, 3152, 3152, // #441
+ 7, 11304, 11304, 3448, 3448, // #442
+ 9, 11312, 11312, 3552, 3552, // #443
+ 7, 11336, 11336, 3448, 3448, // #444
+ 9, 11344, 11344, 3552, 3552, // #445
+ 7, 11368, 11368, 3848, 3848, // #446
+ 9, 11376, 11376, 3952, 3952, // #447
+ 7, 11400, 11400, 3848, 3848, // #448
+ 9, 11408, 11408, 3952, 3952, // #449
+ 6, 11432, 11432, 152, 152, // #450
+ 9, 11440, 11440, 256, 256, // #451
+ 6, 11464, 11464, 152, 152, // #452
+ 9, 11472, 11472, 256, 256, // #453
+ 13, 11496, 11496, 552, 552, // #454
+ 9, 11528, 11528, 664, 664, // #455
+ 13, 11560, 11560, 552, 552, // #456
+ 9, 11592, 11592, 664, 664, // #457
+ 9, 11616, 11616, 960, 960, // #458
+ 9, 11632, 11632, 1072, 1072, // #459
+ 9, 11648, 11648, 960, 960, // #460
+ 9, 11664, 11664, 1072, 1072, // #461
+ 9, 11680, 11680, 960, 960, // #462
+ 9, 11696, 11696, 1072, 1072, // #463
+ 6, 11720, 11720, 1368, 1368, // #464
+ 9, 11728, 11728, 1472, 1472, // #465
+ 6, 11752, 11752, 1368, 1368, // #466
+ 9, 11760, 11760, 1472, 1472, // #467
+ 6, 11784, 11784, 1368, 1368, // #468
+ 9, 11792, 11792, 1472, 1472, // #469
+ 6, 11808, 11808, 1776, 1776, // #470
+ 9, 11832, 11832, 1880, 1880, // #471
+ 6, 11856, 11856, 1776, 1776, // #472
+ 9, 11880, 11880, 1880, 1880, // #473
+ 7, 11904, 11904, 2176, 2176, // #474
+ 9, 11928, 11928, 2280, 2280, // #475
+ 7, 11952, 11952, 2176, 2176, // #476
+ 9, 11976, 11976, 2280, 2280, // #477
+ 10, 12008, 12008, 2584, 2584, // #478
+ 9, 12040, 12040, 2696, 2696, // #479
+ 10, 12072, 12072, 2584, 2584, // #480
+ 9, 12104, 12104, 2696, 2696, // #481
+ 12, 12128, 12128, 2992, 2992, // #482
+ 9, 12144, 12144, 3104, 3104, // #483
+ 12, 12160, 12160, 2992, 2992, // #484
+ 9, 12176, 12176, 3104, 3104, // #485
+ 10, 12192, 12192, 3408, 3408, // #486
+ 9, 12208, 12208, 3520, 3520, // #487
+ 10, 12224, 12224, 3408, 3408, // #488
+ 9, 12240, 12240, 3520, 3520, // #489
+ 7, 12264, 12264, 3816, 3816, // #490
+ 9, 12272, 12272, 3920, 3920, // #491
+ 7, 12296, 12296, 3816, 3816, // #492
+ 9, 12304, 12304, 3920, 3920, // #493
+ 7, 12328, 12328, 120, 120, // #494
+ 9, 12336, 12336, 224, 224, // #495
+ 7, 12360, 12360, 120, 120, // #496
+ 9, 12368, 12368, 224, 224, // #497
+ 6, 12392, 12392, 520, 520, // #498
+ 9, 12400, 12400, 624, 624, // #499
+ 6, 12424, 12424, 520, 520, // #500
+ 9, 12432, 12432, 624, 624, // #501
+ 13, 12456, 12456, 920, 920, // #502
+ 9, 12488, 12488, 1032, 1032, // #503
+ 13, 12520, 12520, 920, 920, // #504
+ 9, 12552, 12552, 1032, 1032, // #505
+ 9, 12576, 12576, 1328, 1328, // #506
+ 9, 12592, 12592, 1440, 1440, // #507
+ 9, 12608, 12608, 1328, 1328, // #508
+ 9, 12624, 12624, 1440, 1440, // #509
+ 6, 12648, 12648, 1736, 1736, // #510
+ 9, 12656, 12656, 1840, 1840, // #511
+ 6, 12680, 12680, 1736, 1736, // #512
+ 9, 12688, 12688, 1840, 1840, // #513
+ 6, 12712, 12712, 1736, 1736, // #514
+ 9, 12720, 12720, 1840, 1840, // #515
+ 6, 12744, 12744, 2136, 2136, // #516
+ 9, 12752, 12752, 2240, 2240, // #517
+ 6, 12776, 12776, 2136, 2136, // #518
+ 9, 12784, 12784, 2240, 2240, // #519
+ 7, 12808, 12808, 2536, 2536, // #520
+ 9, 12816, 12816, 2640, 2640, // #521
+ 7, 12840, 12840, 2536, 2536, // #522
+ 9, 12848, 12848, 2640, 2640, // #523
+ 10, 12864, 12864, 2944, 2944, // #524
+ 9, 12880, 12880, 3056, 3056, // #525
+ 10, 12896, 12896, 2944, 2944, // #526
+ 9, 12912, 12912, 3056, 3056, // #527
+ 12, 12936, 12936, 3352, 3352, // #528
+ 9, 12968, 12968, 3464, 3464, // #529
+ 12, 13000, 13000, 3352, 3352, // #530
+ 9, 13032, 13032, 3464, 3464, // #531
+ 10, 13064, 13064, 3768, 3768, // #532
+ 9, 13096, 13096, 3880, 3880, // #533
+ 10, 13128, 13128, 3768, 3768, // #534
+ 9, 13160, 13160, 3880, 3880, // #535
+ 7, 13192, 13192, 88, 88, // #536
+ 9, 13200, 13200, 192, 192, // #537
+ 7, 13224, 13224, 88, 88, // #538
+ 9, 13232, 13232, 192, 192, // #539
+ 7, 13256, 13256, 488, 488, // #540
+ 9, 13264, 13264, 592, 592, // #541
+ 7, 13288, 13288, 488, 488, // #542
+ 9, 13296, 13296, 592, 592, // #543
+ 6, 13320, 13320, 888, 888, // #544
+ 9, 13328, 13328, 992, 992, // #545
+ 6, 13352, 13352, 888, 888, // #546
+ 9, 13360, 13360, 992, 992, // #547
+ 13, 13384, 13384, 1288, 1288, // #548
+ 9, 13448, 13448, 1400, 1400, // #549
+ 13, 13480, 13480, 1288, 1288, // #550
+ 9, 13512, 13512, 1400, 1400, // #551
+ 9, 13536, 13536, 1696, 1696, // #552
+ 9, 13552, 13552, 1808, 1808, // #553
+ 9, 13568, 13568, 1696, 1696, // #554
+ 9, 13584, 13584, 1808, 1808, // #555
+ 9, 13600, 13600, 1696, 1696, // #556
+ 9, 13616, 13616, 1808, 1808, // #557
+ 6, 13640, 13640, 2104, 2104, // #558
+ 9, 13648, 13648, 2208, 2208, // #559
+ 6, 13672, 13672, 2104, 2104, // #560
+ 9, 13680, 13680, 2208, 2208, // #561
+ 6, 13704, 13704, 2104, 2104, // #562
+ 9, 13712, 13712, 2208, 2208, // #563
+ 6, 13736, 13736, 2504, 2504, // #564
+ 9, 13744, 13744, 2608, 2608, // #565
+ 6, 13768, 13768, 2504, 2504, // #566
+ 9, 13776, 13776, 2608, 2608, // #567
+ 7, 13800, 13800, 72, 72, // #568
+ 9, 13808, 13808, 176, 176, // #569
+ 7, 13832, 13832, 72, 72, // #570
+ 9, 13840, 13840, 176, 176, // #571
+ 10, 13856, 13856, 480, 480, // #572
+ 9, 13872, 13872, 592, 592, // #573
+ 10, 13888, 13888, 480, 480, // #574
+ 9, 13904, 13904, 592, 592, // #575
+ 12, 13960, 13960, 888, 888, // #576
+ 9, 13992, 13992, 1000, 1000, // #577
+ 12, 14024, 14024, 888, 888, // #578
+ 9, 14056, 14056, 1000, 1000, // #579
+ 10, 14088, 14088, 1304, 1304, // #580
+ 9, 14120, 14120, 1416, 1416, // #581
+ 10, 14152, 14152, 1304, 1304, // #582
+ 9, 14184, 14184, 1416, 1416, // #583
+ 7, 14208, 14208, 1712, 1712, // #584
+ 9, 14232, 14232, 1816, 1816, // #585
+ 7, 14256, 14256, 1712, 1712, // #586
+ 9, 14280, 14280, 1816, 1816, // #587
+ 7, 14304, 14304, 2112, 2112, // #588
+ 9, 14328, 14328, 2216, 2216, // #589
+ 7, 14352, 14352, 2112, 2112, // #590
+ 9, 14376, 14376, 2216, 2216, // #591
+ 6, 14400, 14400, 2512, 2512, // #592
+ 9, 14472, 14472, 2616, 2616, // #593
+ 6, 14496, 14496, 2512, 2512, // #594
+ 9, 14536, 14536, 2616, 2616, // #595
+ 13, 14568, 14568, 2920, 2920, // #596
+ 9, 14600, 14600, 3032, 3032, // #597
+ 13, 14632, 14632, 2920, 2920, // #598
+ 9, 14664, 14664, 3032, 3032, // #599
+ 9, 14688, 14688, 3328, 3328, // #600
+ 9, 14704, 14704, 3440, 3440, // #601
+ 9, 14720, 14720, 3328, 3328, // #602
+ 9, 14736, 14736, 3440, 3440, // #603
+ 9, 14752, 14752, 3328, 3328, // #604
+ 9, 14768, 14768, 3440, 3440, // #605
+ 6, 14792, 14792, 3736, 3736, // #606
+ 9, 14800, 14800, 3840, 3840, // #607
+ 6, 14824, 14824, 3736, 3736, // #608
+ 9, 14832, 14832, 3840, 3840, // #609
+ 6, 14856, 14856, 3736, 3736, // #610
+ 9, 14864, 14864, 3840, 3840, // #611
+ 6, 14888, 14888, 40, 40, // #612
+ 9, 14896, 14896, 144, 144, // #613
+ 6, 14920, 14920, 40, 40, // #614
+ 9, 14928, 14928, 144, 144, // #615
+ 7, 14952, 14952, 440, 440, // #616
+ 9, 14960, 14960, 544, 544, // #617
+ 7, 14984, 14984, 440, 440, // #618
+ 9, 14992, 14992, 544, 544, // #619
+ 10, 15008, 15008, 848, 848, // #620
+ 9, 15024, 15024, 960, 960, // #621
+ 10, 15040, 15040, 848, 848, // #622
+ 9, 15056, 15056, 960, 960, // #623
+ 12, 15080, 15080, 1256, 1256, // #624
+ 9, 15112, 15112, 1368, 1368, // #625
+ 12, 15144, 15144, 1256, 1256, // #626
+ 9, 15176, 15176, 1368, 1368, // #627
+ 10, 15208, 15208, 1672, 1672, // #628
+ 9, 15240, 15240, 1784, 1784, // #629
+ 10, 15272, 15272, 1672, 1672, // #630
+ 9, 15304, 15304, 1784, 1784, // #631
+ 7, 15328, 15328, 2080, 2080, // #632
+ 9, 15352, 15352, 2184, 2184, // #633
+ 7, 15376, 15376, 2080, 2080, // #634
+ 9, 15400, 15400, 2184, 2184, // #635
+ 7, 15424, 15424, 2480, 2480, // #636
+ 9, 15448, 15448, 2584, 2584, // #637
+ 7, 15472, 15472, 2480, 2480, // #638
+ 9, 15496, 15496, 2584, 2584, // #639
+ 6, 15520, 15520, 2880, 2880, // #640
+ 9, 15544, 15544, 2984, 2984, // #641
+ 6, 15568, 15568, 2880, 2880, // #642
+ 9, 15592, 15592, 2984, 2984, // #643
+ 13, 15616, 15616, 3280, 3280, // #644
+ 9, 15632, 15632, 3392, 3392, // #645
+ 13, 15648, 15648, 3280, 3280, // #646
+ 9, 15664, 15664, 3392, 3392, // #647
+ 9, 15688, 15688, 3688, 3688, // #648
+ 9, 15720, 15720, 3800, 3800, // #649
+ 9, 15752, 15752, 3688, 3688, // #650
+ 9, 15784, 15784, 3800, 3800, // #651
+ 9, 15816, 15816, 3688, 3688, // #652
+ 9, 15848, 15848, 3800, 3800, // #653
+ 6, 15872, 15872, 0, 0, // #654
+ 9, 15896, 15896, 104, 104, // #655
+ 6, 15920, 15920, 0, 0, // #656
+ 9, 15944, 15944, 104, 104, // #657
+ 6, 15968, 15968, 0, 0, // #658
+ 9, 15992, 15992, 104, 104, // #659
+ 6, 16016, 16016, 400, 400, // #660
+ 9, 16072, 16072, 504, 504, // #661
+ 6, 16096, 16096, 400, 400, // #662
+ 9, 16136, 16136, 504, 504, // #663
+ 7, 16160, 16160, 800, 800, // #664
+ 9, 16184, 16184, 904, 904, // #665
+ 7, 16208, 16208, 800, 800, // #666
+ 9, 16232, 16232, 904, 904, // #667
+ 10, 16256, 16256, 1216, 1216, // #668
+ 9, 16272, 16272, 1328, 1328, // #669
+ 10, 16288, 16288, 1216, 1216, // #670
+ 9, 16304, 16304, 1328, 1328, // #671
+ 12, 16328, 16328, 1624, 1624, // #672
+ 9, 16360, 16360, 1736, 1736, // #673
+ 12, 16392, 16392, 1624, 1624, // #674
+ 9, 16424, 16424, 1736, 1736, // #675
+ 10, 16456, 16456, 2040, 2040, // #676
+ 9, 16488, 16488, 2152, 2152, // #677
+ 10, 16520, 16520, 2040, 2040, // #678
+ 9, 16552, 16552, 2152, 2152, // #679
+ 7, 16576, 16576, 2448, 2448, // #680
+ 9, 16648, 16648, 2552, 2552, // #681
+ 7, 16672, 16672, 2448, 2448, // #682
+ 9, 16712, 16712, 2552, 2552, // #683
+ 7, 16736, 16736, 2848, 2848, // #684
+ 9, 16760, 16760, 2952, 2952, // #685
+ 7, 16784, 16784, 2848, 2848, // #686
+ 9, 16808, 16808, 2952, 2952, // #687
+ 6, 16832, 16832, 3248, 3248, // #688
+ 9, 16856, 16856, 3352, 3352, // #689
+ 6, 16880, 16880, 3248, 3248, // #690
+ 9, 16904, 16904, 3352, 3352, // #691
+ 13, 16928, 16928, 3696, 3696, // #692
+ 9, 16944, 16944, 3808, 3808, // #693
+ 13, 16960, 16960, 3696, 3696, // #694
+ 9, 16976, 16976, 3808, 3808, // #695
+ 9, 16992, 16992, 4064, 4064, // #696
+ 9, 17008, 17008, 80, 80, // #697
+ 9, 17024, 17024, 4064, 4064, // #698
+ 9, 17040, 17040, 80, 80, // #699
+ 9, 17056, 17056, 4064, 4064, // #700
+ 9, 17072, 17072, 80, 80, // #701
+ 6, 17096, 17096, 376, 376, // #702
+ 9, 17104, 17104, 480, 480, // #703
+ 6, 17128, 17128, 376, 376, // #704
+ 9, 17136, 17136, 480, 480, // #705
+ 6, 17160, 17160, 376, 376, // #706
+ 9, 17168, 17168, 480, 480, // #707
+ 6, 17192, 17192, 776, 776, // #708
+ 9, 17200, 17200, 880, 880, // #709
+ 6, 17224, 17224, 776, 776, // #710
+ 9, 17232, 17232, 880, 880, // #711
+ 7, 17256, 17256, 1176, 1176, // #712
+ 9, 17264, 17264, 1280, 1280, // #713
+ 7, 17288, 17288, 1176, 1176, // #714
+ 9, 17296, 17296, 1280, 1280, // #715
+ 12, 17320, 17320, 1576, 1576, // #716
+ 9, 17352, 17352, 1688, 1688, // #717
+ 12, 17384, 17384, 1576, 1576, // #718
+ 9, 17416, 17416, 1688, 1688, // #719
+ 10, 17448, 17448, 1992, 1992, // #720
+ 9, 17480, 17480, 2104, 2104, // #721
+ 10, 17512, 17512, 1992, 1992, // #722
+ 9, 17544, 17544, 2104, 2104, // #723
+ 7, 17568, 17568, 2400, 2400, // #724
+ 9, 17592, 17592, 2504, 2504, // #725
+ 7, 17616, 17616, 2400, 2400, // #726
+ 9, 17640, 17640, 2504, 2504, // #727
+ 9, 17672, 17672, 2808, 2808, // #728
+ 9, 17704, 17704, 2920, 2920, // #729
+ 9, 17736, 17736, 2808, 2808, // #730
+ 9, 17768, 17768, 2920, 2920, // #731
+ 6, 17792, 17792, 3216, 3216, // #732
+ 9, 17864, 17864, 3320, 3320, // #733
+ 6, 17888, 17888, 3216, 3216, // #734
+ 9, 17928, 17928, 3320, 3320, // #735
+ 6, 17952, 17952, 3216, 3216, // #736
+ 9, 17992, 17992, 3320, 3320, // #737
+ 6, 18024, 18024, 3624, 3624, // #738
+ 9, 18032, 18032, 3728, 3728, // #739
+ 6, 18056, 18056, 3624, 3624, // #740
+ 9, 18064, 18064, 3728, 3728, // #741
+ 22, 18088, 18088, 1992, 1992, // #742
+ 11, 18120, 18120, 2232, 2232, // #743
+ 11, 18152, 18152, 2472, 2472, // #744
+ 11, 18184, 18184, 2712, 2712, // #745
+ 22, 18208, 18208, 2944, 2944, // #746
+ 22, 18240, 18240, 3184, 3184, // #747
+ 11, 18272, 18272, 2528, 2528, // #748
+ 19, 18296, 18296, 88, 88, // #749
+ 4, 18320, 18320, 1520, 1520, // #750
+ 1976, 18376, 18376, 2616, 2616, // #751
+ 12, 20368, 20368, 1376, 1376, // #752
+ 9, 20384, 20384, 1488, 1488, // #753
+ 7, 20400, 20400, 3424, 3424, // #754
+ 9, 20424, 20424, 3528, 3528, // #755
+ 7, 20448, 20448, 3424, 3424, // #756
+ 9, 20472, 20472, 3528, 3528, // #757
+ 12, 20496, 20496, 3824, 3824, // #758
+ 9, 20512, 20512, 3936, 3936, // #759
+ 12, 20528, 20528, 3824, 3824, // #760
+ 9, 20544, 20544, 3936, 3936, // #761
+ 7, 20568, 20568, 136, 136, // #762
+ 9, 20576, 20576, 240, 240, // #763
+ 7, 20600, 20600, 136, 136, // #764
+ 9, 20608, 20608, 240, 240, // #765
+ 11, 20624, 20624, 544, 544, // #766
+ 9, 20640, 20640, 656, 656, // #767
+ 9, 20656, 20656, 960, 960, // #768
+ 9, 20672, 20672, 1072, 1072, // #769
+ 9, 20688, 20688, 960, 960, // #770
+ 9, 20704, 20704, 1072, 1072, // #771
+ 7, 20720, 20720, 1392, 1392, // #772
+ 9, 20744, 20744, 1496, 1496, // #773
+ 12, 20768, 20768, 1792, 1792, // #774
+ 9, 20784, 20784, 1904, 1904, // #775
+ 7, 20808, 20808, 2200, 2200, // #776
+ 9, 20816, 20816, 2304, 2304, // #777
+ 11, 20832, 20832, 2608, 2608, // #778
+ 9, 20848, 20848, 2720, 2720, // #779
+ 9, 20872, 20872, 3016, 3016, // #780
+ 9, 20936, 20936, 3128, 3128, // #781
+ 12, 20968, 20968, 984, 984, // #782
+ 9, 21000, 21000, 1096, 1096, // #783
+ 7, 21024, 21024, 2640, 2640, // #784
+ 9, 21064, 21064, 2744, 2744, // #785
+ 7, 21088, 21088, 2640, 2640, // #786
+ 9, 21128, 21128, 2744, 2744, // #787
+ 12, 21152, 21152, 3040, 3040, // #788
+ 9, 21168, 21168, 3152, 3152, // #789
+ 12, 21184, 21184, 3040, 3040, // #790
+ 9, 21200, 21200, 3152, 3152, // #791
+ 7, 21224, 21224, 3448, 3448, // #792
+ 9, 21240, 21240, 3560, 3560, // #793
+ 7, 21272, 21272, 3448, 3448, // #794
+ 9, 21288, 21288, 3560, 3560, // #795
+ 11, 21320, 21320, 3864, 3864, // #796
+ 9, 21352, 21352, 3976, 3976, // #797
+ 9, 21376, 21376, 176, 176, // #798
+ 9, 21392, 21392, 288, 288, // #799
+ 9, 21408, 21408, 176, 176, // #800
+ 9, 21424, 21424, 288, 288, // #801
+ 6, 21448, 21448, 584, 584, // #802
+ 9, 21456, 21456, 688, 688, // #803
+ 7, 21472, 21472, 608, 608, // #804
+ 9, 21496, 21496, 712, 712, // #805
+ 7, 21520, 21520, 608, 608, // #806
+ 9, 21544, 21544, 712, 712, // #807
+ 12, 21568, 21568, 1008, 1008, // #808
+ 9, 21584, 21584, 1120, 1120, // #809
+ 12, 21600, 21600, 1008, 1008, // #810
+ 9, 21616, 21616, 1120, 1120, // #811
+ 7, 21640, 21640, 1416, 1416, // #812
+ 9, 21648, 21648, 1520, 1520, // #813
+ 7, 21672, 21672, 1416, 1416, // #814
+ 9, 21680, 21680, 1520, 1520, // #815
+ 11, 21696, 21696, 1824, 1824, // #816
+ 9, 21712, 21712, 1936, 1936, // #817
+ 9, 21768, 21768, 2232, 2232, // #818
+ 9, 21800, 21800, 2344, 2344, // #819
+ 9, 21832, 21832, 2232, 2232, // #820
+ 9, 21864, 21864, 2344, 2344, // #821
+ 12, 21896, 21896, 200, 200, // #822
+ 9, 21960, 21960, 312, 312, // #823
+ 7, 21992, 21992, 1160, 1160, // #824
+ 9, 22000, 22000, 1264, 1264, // #825
+ 7, 22024, 22024, 1160, 1160, // #826
+ 9, 22032, 22032, 1264, 1264, // #827
+ 12, 22056, 22056, 1560, 1560, // #828
+ 9, 22088, 22088, 1672, 1672, // #829
+ 12, 22120, 22120, 1560, 1560, // #830
+ 9, 22152, 22152, 1672, 1672, // #831
+ 12, 22184, 22184, 1560, 1560, // #832
+ 9, 22216, 22216, 1672, 1672, // #833
+ 7, 22240, 22240, 1968, 1968, // #834
+ 9, 22264, 22264, 2072, 2072, // #835
+ 7, 22288, 22288, 1968, 1968, // #836
+ 9, 22312, 22312, 2072, 2072, // #837
+ 11, 22344, 22344, 2376, 2376, // #838
+ 9, 22408, 22408, 3192, 3192, // #839
+ 9, 22432, 22432, 3488, 3488, // #840
+ 9, 22448, 22448, 3600, 3600, // #841
+ 9, 22464, 22464, 3488, 3488, // #842
+ 9, 22480, 22480, 3600, 3600, // #843
+ 6, 22504, 22504, 3896, 3896, // #844
+ 9, 22512, 22512, 4000, 4000, // #845
+ 12, 22528, 22528, 752, 752, // #846
+ 9, 22544, 22544, 864, 864, // #847
+ 12, 22560, 22560, 752, 752, // #848
+ 9, 22576, 22576, 864, 864, // #849
+ 7, 22600, 22600, 2408, 2408, // #850
+ 9, 22608, 22608, 2512, 2512, // #851
+ 7, 22632, 22632, 2408, 2408, // #852
+ 9, 22640, 22640, 2512, 2512, // #853
+ 12, 22664, 22664, 2808, 2808, // #854
+ 9, 22696, 22696, 2920, 2920, // #855
+ 12, 22728, 22728, 2808, 2808, // #856
+ 9, 22760, 22760, 2920, 2920, // #857
+ 7, 22784, 22784, 3216, 3216, // #858
+ 9, 22856, 22856, 3320, 3320, // #859
+ 7, 22880, 22880, 3216, 3216, // #860
+ 9, 22920, 22920, 3320, 3320, // #861
+ 11, 22952, 22952, 3624, 3624, // #862
+ 9, 22984, 22984, 3736, 3736, // #863
+ 9, 23008, 23008, 4032, 4032, // #864
+ 9, 23024, 23024, 48, 48, // #865
+ 9, 23040, 23040, 4032, 4032, // #866
+ 9, 23056, 23056, 48, 48, // #867
+ 6, 23080, 23080, 344, 344, // #868
+ 9, 23096, 23096, 456, 456, // #869
+ 6, 23128, 23128, 344, 344, // #870
+ 9, 23144, 23144, 456, 456, // #871
+ 7, 23176, 23176, 2936, 2936, // #872
+ 9, 23184, 23184, 3040, 3040, // #873
+ 7, 23208, 23208, 2936, 2936, // #874
+ 9, 23216, 23216, 3040, 3040, // #875
+ 12, 23240, 23240, 3336, 3336, // #876
+ 9, 23304, 23304, 3448, 3448, // #877
+ 12, 23336, 23336, 3336, 3336, // #878
+ 9, 23368, 23368, 3448, 3448, // #879
+ 12, 23400, 23400, 3336, 3336, // #880
+ 9, 23432, 23432, 3448, 3448, // #881
+ 7, 23456, 23456, 784, 784, // #882
+ 9, 23496, 23496, 888, 888, // #883
+ 7, 23520, 23520, 784, 784, // #884
+ 9, 23560, 23560, 888, 888, // #885
+ 11, 23592, 23592, 1192, 1192, // #886
+ 9, 23624, 23624, 1304, 1304, // #887
+ 9, 23648, 23648, 1600, 1600, // #888
+ 9, 23664, 23664, 1712, 1712, // #889
+ 9, 23680, 23680, 1600, 1600, // #890
+ 9, 23696, 23696, 1712, 1712, // #891
+ 6, 23720, 23720, 2008, 2008, // #892
+ 9, 23728, 23728, 2112, 2112, // #893
+ 7, 23744, 23744, 2000, 2000, // #894
+ 8, 23768, 23768, 2104, 2104, // #895
+ 7, 23792, 23792, 2000, 2000, // #896
+ 8, 23816, 23816, 2104, 2104, // #897
+ 12, 23840, 23840, 2608, 2608, // #898
+ 8, 23856, 23856, 2720, 2720, // #899
+ 12, 23872, 23872, 2608, 2608, // #900
+ 8, 23888, 23888, 2720, 2720, // #901
+ 7, 23904, 23904, 3232, 3232, // #902
+ 8, 23928, 23928, 3336, 3336, // #903
+ 7, 23952, 23952, 3232, 3232, // #904
+ 8, 23976, 23976, 3336, 3336, // #905
+ 11, 24008, 24008, 3848, 3848, // #906
+ 8, 24040, 24040, 3960, 3960, // #907
+ 9, 24072, 24072, 376, 376, // #908
+ 8, 24104, 24104, 488, 488, // #909
+ 9, 24136, 24136, 376, 376, // #910
+ 8, 24168, 24168, 488, 488, // #911
+ 5, 24200, 24200, 792, 792, // #912
+ 5, 24208, 24208, 1200, 1200, // #913
+ 5, 24232, 24232, 1608, 1608, // #914
+ 5, 24248, 24248, 2424, 2424, // #915
+ 5, 24264, 24264, 3240, 3240, // #916
+ 5, 24272, 24272, 3648, 3648, // #917
+ 5, 24296, 24296, 4056, 4056, // #918
+ 5, 24304, 24304, 368, 368, // #919
+ 5, 24320, 24320, 768, 768, // #920
+ 5, 24344, 24344, 1176, 1176, // #921
+ 5, 24352, 24352, 1584, 1584, // #922
+ 5, 24376, 24376, 1992, 1992, // #923
+ 5, 24384, 24384, 2400, 2400, // #924
+ 5, 24408, 24408, 2808, 2808, // #925
+ 5, 24416, 24416, 3216, 3216, // #926
+ 5, 24432, 24432, 4032, 4032, // #927
+ 5, 24448, 24448, 752, 752, // #928
+ 5, 24464, 24464, 1152, 1152, // #929
+ 5, 24488, 24488, 1560, 1560, // #930
+ 5, 24504, 24504, 1976, 1976, // #931
+ 5, 24520, 24520, 2376, 2376, // #932
+ 5, 24528, 24528, 2784, 2784, // #933
+ 5, 24552, 24552, 3192, 3192, // #934
+ 5, 24560, 24560, 3600, 3600, // #935
+ 5, 24584, 24584, 4008, 4008, // #936
+ 5, 24592, 24592, 320, 320, // #937
+ 5, 24616, 24616, 728, 728, // #938
+ 5, 24632, 24632, 1544, 1544, // #939
+ 5, 24648, 24648, 2360, 2360, // #940
+ 5, 24664, 24664, 2760, 2760, // #941
+ 5, 24672, 24672, 3168, 3168, // #942
+ 5, 24696, 24696, 3576, 3576, // #943
+ 5, 24704, 24704, 1088, 1088, // #944
+ 5, 24720, 24720, 1504, 1504, // #945
+ 5, 24744, 24744, 1912, 1912, // #946
+ 5, 24752, 24752, 2320, 2320, // #947
+ 5, 24776, 24776, 2728, 2728, // #948
+ 5, 24784, 24784, 3136, 3136, // #949
+ 5, 24808, 24808, 3544, 3544, // #950
+ 5, 24824, 24824, 264, 264, // #951
+ 5, 24840, 24840, 1080, 1080, // #952
+ 5, 24856, 24856, 1480, 1480, // #953
+ 5, 24864, 24864, 1888, 1888, // #954
+ 5, 24888, 24888, 2296, 2296, // #955
+ 5, 24904, 24904, 2696, 2696, // #956
+ 5, 24912, 24912, 3104, 3104, // #957
+ 5, 24936, 24936, 3512, 3512, // #958
+ 5, 24952, 24952, 3928, 3928, // #959
+ 5, 24960, 24960, 240, 240, // #960
+ 5, 24984, 24984, 648, 648, // #961
+ 5, 24992, 24992, 1056, 1056, // #962
+ 5, 25008, 25008, 1872, 1872, // #963
+ 5, 25024, 25024, 2688, 2688, // #964
+ 5, 25040, 25040, 3088, 3088, // #965
+ 5, 25064, 25064, 3496, 3496, // #966
+ 5, 25072, 25072, 3904, 3904, // #967
+ 5, 25088, 25088, 208, 208, // #968
+ 5, 25112, 25112, 616, 616, // #969
+ 5, 25120, 25120, 1024, 1024, // #970
+ 5, 25144, 25144, 1432, 1432, // #971
+ 11, 25160, 25160, 3800, 3800, // #972
+ 8, 25184, 25184, 1776, 1776, // #973
+ 8, 25200, 25200, 1984, 1984, // #974
+ 2, 25216, 25216, 2224, 2224, // #975
+ 11, 25232, 25232, 2448, 2448, // #976
+ 20, 25256, 25256, 216, 216, // #977
+ 1, 25293, 25293, 205, 205, // #978
+ 7, 25304, 25304, 3464, 3464, // #979
+ 2, 25320, 25320, 72, 72, // #980
+ 5, 25336, 25336, 424, 424, // #981
+ 8, 25348, 25348, 1780, 1780, // #982
+ 11, 25421, 25421, 1789, 1789, // #983
+ 6, 25441, 25441, 1681, 1681, // #984
+ 11, 25464, 25464, 1688, 1688, // #985
+ 2, 25498, 25498, 2202, 2202, // #986
+ 9, 25518, 25518, 2142, 2142, // #987
+ 2, 25546, 25546, 2202, 2202, // #988
+ 11, 25615, 25615, 2175, 2175, // #989
+ 6, 25642, 25642, 138, 138, // #990
+ 11, 25665, 25665, 145, 145, // #991
+ 8, 25694, 25694, 1134, 1134, // #992
+ 15, 25735, 25735, 1143, 1143, // #993
+ 6, 25769, 25769, 1113, 1113, // #994
+ 13, 25776, 25776, 1120, 1120, // #995
+ 9, 25795, 25795, 2035, 2035, // #996
+ 16, 25869, 25869, 2045, 2045, // #997
+ 6, 25902, 25902, 2014, 2014, // #998
+ 13, 25925, 25925, 2021, 2021, // #999
+ 2, 25962, 25962, 2202, 2202, // #1000
+ 19, 25979, 25979, 2395, 2395, // #1001
+ 7, 26014, 26014, 1070, 1070, // #1002
+ 19, 26054, 26054, 1078, 1078, // #1003
+ 8, 26080, 26080, 2352, 2352, // #1004
+ 11, 26121, 26121, 2361, 2361, // #1005
+ 2, 26156, 26156, 2172, 2172, // #1006
+ 2, 26191, 26191, 2175, 2175, // #1007
+ 2, 26217, 26217, 2201, 2201, // #1008
+ 11, 26236, 26236, 2204, 2204, // #1009
+ 6, 26258, 26258, 2178, 2178, // #1010
+ 15, 26281, 26281, 2185, 2185, // #1011
+ 8, 26306, 26306, 1650, 1650, // #1012
+ 8, 26379, 26379, 1659, 1659, // #1013
+ 8, 26405, 26405, 2373, 2373, // #1014
+ 11, 26430, 26430, 2382, 2382, // #1015
+ 4, 26452, 26452, 2660, 2660, // #1016
+ 13, 26502, 26502, 2678, 2678, // #1017
+ 2, 26532, 26532, 1668, 1668, // #1018
+ 9, 26551, 26551, 1671, 1671, // #1019
+ 4, 26582, 26582, 3110, 3110, // #1020
+ 9, 26603, 26603, 3115, 3115, // #1021
+ 4, 26624, 26624, 2320, 2320, // #1022
+ 9, 26645, 26645, 2325, 2325, // #1023
+ 6, 26703, 26703, 2303, 2303, // #1024
+ 9, 26726, 26726, 2310, 2310, // #1025
+ 10, 26741, 26741, 1621, 1621, // #1026
+ 17, 26752, 26752, 1632, 1632, // #1027
+ 10, 26785, 26785, 2257, 2257, // #1028
+ 34, 26812, 26812, 2268, 2268, // #1029
+ 13, 26856, 26856, 2216, 2216, // #1030
+ 26, 26886, 26886, 2230, 2230, // #1031
+ 3, 26943, 26943, 2335, 2335, // #1032
+ 12, 26963, 26963, 2339, 2339, // #1033
+ 4, 26986, 26986, 1098, 1098, // #1034
+ 9, 27007, 27007, 1103, 1103, // #1035
+ 3, 27029, 27029, 2661, 2661, // #1036
+ 7, 27041, 27041, 3089, 3089, // #1037
+ 1, 27058, 27058, 1810, 1810, // #1038
+ 1, 27076, 27076, 1812, 1812, // #1039
+ 3, 27100, 27100, 3372, 3372, // #1040
+ 3, 27104, 27104, 3376, 3376, // #1041
+ 3, 27151, 27151, 3519, 3519, // #1042
+ 5, 27171, 27171, 3523, 3523, // #1043
+ 9, 27193, 27193, 3529, 3529, // #1044
+ 8, 27219, 27219, 3539, 3539, // #1045
+ 7, 27244, 27244, 3548, 3548, // #1046
+ 4, 27268, 27268, 3556, 3556, // #1047
+ 3, 27289, 27289, 3561, 3561, // #1048
+ 6, 27309, 27309, 3565, 3565, // #1049
+ 9, 27332, 27332, 3572, 3572, // #1050
+ 3, 27406, 27406, 3582, 3582, // #1051
+ 5, 27426, 27426, 3586, 3586, // #1052
+ 3, 27448, 27448, 3592, 3592, // #1053
+ 6, 27468, 27468, 3596, 3596, // #1054
+ 4, 27495, 27495, 3607, 3607, // #1055
+ 5, 27516, 27516, 3612, 3612, // #1056
+ 3, 27538, 27538, 3618, 3618, // #1057
+ 6, 27558, 27558, 3622, 3622, // #1058
+ 8, 27581, 27581, 3629, 3629, // #1059
+ 4, 27606, 27606, 3638, 3638, // #1060
+ 4, 27627, 27627, 3643, 3643, // #1061
+ 7, 27632, 27632, 3648, 3648, // #1062
+ 8, 27656, 27656, 3656, 3656, // #1063
+ 6, 27681, 27681, 3665, 3665, // #1064
+ 9, 27700, 27700, 3684, 3684, // #1065
+ 7, 27726, 27726, 3694, 3694, // #1066
+ 11, 27752, 27752, 3672, 3672, // #1067
+ 12, 27782, 27782, 3702, 3702, // #1068
+ 6, 27811, 27811, 3715, 3715, // #1069
+ 6, 27834, 27834, 3722, 3722, // #1070
+ 7, 27857, 27857, 3729, 3729, // #1071
+ 11, 27881, 27881, 3737, 3737, // #1072
+ 5, 27909, 27909, 3749, 3749, // #1073
+ 7, 27931, 27931, 3755, 3755, // #1074
+ 5, 27955, 27955, 3763, 3763, // #1075
+ 6, 27977, 27977, 3769, 3769, // #1076
+ 3, 27984, 27984, 3776, 3776, // #1077
+ 5, 28004, 28004, 3780, 3780, // #1078
+ 3, 28026, 28026, 3786, 3786, // #1079
+ 3, 28035, 28035, 3603, 3603, // #1080
+ 8, 28050, 28050, 2034, 2034, // #1081
+ 11, 28072, 28072, 2056, 2056, // #1082
+ 6, 28096, 28096, 2080, 2080, // #1083
+ 11, 28167, 28167, 2103, 2103, // #1084
+ 2, 28202, 28202, 2202, 2202, // #1085
+ 9, 28222, 28222, 2142, 2142, // #1086
+ 2, 28250, 28250, 2202, 2202, // #1087
+ 11, 28303, 28303, 2175, 2175, // #1088
+ 6, 28326, 28326, 2198, 2198, // #1089
+ 11, 28345, 28345, 2217, 2217, // #1090
+ 8, 28368, 28368, 2240, 2240, // #1091
+ 15, 28389, 28389, 2261, 2261, // #1092
+ 6, 28416, 28416, 2288, 2288, // #1093
+ 13, 28487, 28487, 2295, 2295, // #1094
+ 11, 28517, 28517, 2309, 2309, // #1095
+ 18, 28544, 28544, 2336, 2336, // #1096
+ 6, 28576, 28576, 2288, 2288, // #1097
+ 13, 28593, 28593, 2369, 2369, // #1098
+ 2, 28618, 28618, 2202, 2202, // #1099
+ 19, 28635, 28635, 2395, 2395, // #1100
+ 7, 28682, 28682, 2426, 2426, // #1101
+ 19, 28706, 28706, 2434, 2434, // #1102
+ 8, 28742, 28742, 2454, 2454, // #1103
+ 11, 28767, 28767, 2479, 2479, // #1104
+ 2, 28794, 28794, 2202, 2202, // #1105
+ 2, 28810, 28810, 2202, 2202, // #1106
+ 2, 28826, 28826, 2202, 2202, // #1107
+ 11, 28847, 28847, 2479, 2479, // #1108
+ 6, 28876, 28876, 2572, 2572, // #1109
+ 15, 28899, 28899, 2579, 2579, // #1110
+ 8, 28931, 28931, 2595, 2595, // #1111
+ 8, 28947, 28947, 2595, 2595, // #1112
+ 8, 28963, 28963, 2595, 2595, // #1113
+ 11, 28991, 28991, 2479, 2479, // #1114
+ 4, 29012, 29012, 2660, 2660, // #1115
+ 13, 29062, 29062, 2678, 2678, // #1116
+ 2, 29098, 29098, 2202, 2202, // #1117
+ 9, 29109, 29109, 2869, 2869, // #1118
+ 4, 29135, 29135, 2735, 2735, // #1119
+ 9, 29157, 29157, 2757, 2757, // #1120
+ 4, 29183, 29183, 2783, 2783, // #1121
+ 9, 29205, 29205, 2757, 2757, // #1122
+ 6, 29219, 29219, 2819, 2819, // #1123
+ 9, 29237, 29237, 2869, 2869, // #1124
+ 10, 29255, 29255, 2871, 2871, // #1125
+ 17, 29285, 29285, 2901, 2901, // #1126
+ 10, 29319, 29319, 2871, 2871, // #1127
+ 34, 29352, 29352, 136, 136, // #1128
+ 13, 29394, 29394, 2962, 2962, // #1129
+ 26, 29408, 29408, 2976, 2976, // #1130
+ 3, 29451, 29451, 3003, 3003, // #1131
+ 12, 29468, 29468, 3020, 3020, // #1132
+ 4, 29493, 29493, 3045, 3045, // #1133
+ 9, 29509, 29509, 2757, 2757, // #1134
+ 3, 29525, 29525, 2661, 2661, // #1135
+ 7, 29537, 29537, 3089, 3089, // #1136
+ 1, 29560, 29560, 2568, 2568, // #1137
+ 1, 29576, 29576, 2568, 2568, // #1138
+ 3, 29597, 29597, 1725, 1725, // #1139
+ 3, 29629, 29629, 1725, 1725, // #1140
+ 3, 29650, 29650, 1778, 1778, // #1141
+ 5, 29672, 29672, 1800, 1800, // #1142
+ 9, 29694, 29694, 1806, 1806, // #1143
+ 8, 29720, 29720, 1816, 1816, // #1144
+ 7, 29745, 29745, 1825, 1825, // #1145
+ 4, 29769, 29769, 1833, 1833, // #1146
+ 3, 29790, 29790, 1838, 1838, // #1147
+ 6, 29810, 29810, 1842, 1842, // #1148
+ 4, 29839, 29839, 1919, 1919, // #1149
+ 3, 29865, 29865, 1849, 1849, // #1150
+ 5, 29901, 29901, 1853, 1853, // #1151
+ 3, 29923, 29923, 1859, 1859, // #1152
+ 6, 29943, 29943, 1863, 1863, // #1153
+ 4, 29966, 29966, 1870, 1870, // #1154
+ 5, 29987, 29987, 1875, 1875, // #1155
+ 3, 30009, 30009, 1881, 1881, // #1156
+ 6, 30029, 30029, 1885, 1885, // #1157
+ 4, 30052, 30052, 1892, 1892, // #1158
+ 4, 30073, 30073, 1897, 1897, // #1159
+ 4, 30094, 30094, 1902, 1902, // #1160
+ 7, 30115, 30115, 1907, 1907, // #1161
+ 8, 30155, 30155, 1915, 1915, // #1162
+ 6, 30180, 30180, 1924, 1924, // #1163
+ 6, 30203, 30203, 1931, 1931, // #1164
+ 4, 30226, 30226, 1938, 1938, // #1165
+ 10, 30247, 30247, 1943, 1943, // #1166
+ 11, 30274, 30274, 1954, 1954, // #1167
+ 6, 30302, 30302, 1966, 1966, // #1168
+ 6, 30325, 30325, 1973, 1973, // #1169
+ 5, 30348, 30348, 1980, 1980, // #1170
+ 10, 30370, 30370, 1986, 1986, // #1171
+ 5, 30397, 30397, 1997, 1997, // #1172
+ 5, 30419, 30419, 2003, 2003, // #1173
+ 5, 30441, 30441, 2009, 2009, // #1174
+ 6, 30463, 30463, 2015, 2015, // #1175
+ 3, 30486, 30486, 2022, 2022, // #1176
+ 2, 30504, 30504, 1928, 1928, // #1177
+ 3, 30522, 30522, 2026, 2026, // #1178
+ 3, 30542, 30542, 2030, 2030, // #1179
+ 1, 30570, 30570, 3610, 3610, // #1180
+ 1, 30584, 30584, 2552, 2552, // #1181
+ 1, 30602, 30602, 1498, 1498, // #1182
+ 6, 30616, 30616, 2664, 2664, // #1183
+ 5, 30624, 30624, 1952, 1952, // #1184
+ 0, 30640, 30640, 4060, 4060, // #1185
+ 0, 30640, 30640, 3800, 3800, // #1186
+ 1, 30643, 30643, 2483, 2483, // #1187
+ 3, 30656, 30656, 0, 0, // #1188
+ 3, 30687, 30687, 31, 31, // #1189
+ 3, 30704, 30704, 1712, 1712, // #1190
+ 3, 30728, 30728, 1208, 1208, // #1191
+ 3, 30744, 30744, 2552, 2552, // #1192
+ 15, 30752, 30752, 1024, 1024, // #1193
+ 15, 30776, 30776, 2024, 2024, // #1194
+ 6, 30800, 30800, 2816, 2816, // #1195
+ 2, 30824, 30824, 2936, 2936, // #1196
+ 3, 30840, 30840, 3064, 3064, // #1197
+ 5, 30856, 30856, 3192, 3192, // #1198
+ 6, 30864, 30864, 3312, 3312, // #1199
+ 0, 30880, 30880, 3800, 3800, // #1200
+ 4, 30880, 30880, 3200, 3200, // #1201
+ 4, 30904, 30904, 3320, 3320, // #1202
+ 5, 30912, 30912, 3568, 3568, // #1203
+ 3, 30928, 30928, 3200, 3200, // #1204
+ 3, 30944, 30944, 2832, 2832, // #1205
+ 15, 30960, 30960, 1824, 1824, // #1206
+ 16, 30984, 30984, 2232, 2232, // #1207
+ 6, 31016, 31016, 3848, 3848, // #1208
+ 2, 31032, 31032, 2920, 2920, // #1209
+ 3, 31048, 31048, 3048, 3048, // #1210
+ 5, 31056, 31056, 3840, 3840, // #1211
+ 6, 31080, 31080, 1784, 1784, // #1212
+ 0, 31088, 31088, 3800, 3800, // #1213
+ 4, 31096, 31096, 1992, 1992, // #1214
+ 4, 31104, 31104, 2112, 2112, // #1215
+ 5, 31128, 31128, 2360, 2360, // #1216
+ 3, 31144, 31144, 1592, 1592, // #1217
+ 1, 31162, 31162, 3610, 3610, // #1218
+ 1, 31168, 31168, 3344, 3344, // #1219
+ 1, 31194, 31194, 1498, 1498, // #1220
+ 6, 31208, 31208, 3464, 3464, // #1221
+ 8, 31247, 31247, 959, 959, // #1222
+ 8, 31264, 31264, 864, 864, // #1223
+ 8, 31280, 31280, 3248, 3248, // #1224
+ 11, 31299, 31299, 979, 979, // #1225
+ 12, 31312, 31312, 624, 624, // #1226
+ 18, 31336, 31336, 2328, 2328, // #1227
+ 8, 31375, 31375, 3599, 3599, // #1228
+ 8, 31400, 31400, 744, 744, // #1229
+ 8, 31424, 31424, 2768, 2768, // #1230
+ 9, 31448, 31448, 3272, 3272, // #1231
+ 21, 31480, 31480, 3416, 3416, // #1232
+ 0, 31504, 31504, 3428, 3428, // #1233
+ 34, 31554, 31554, 2466, 2466, // #1234
+ 19, 31613, 31613, 333, 333, // #1235
+ 3, 31648, 31648, 2320, 2320, // #1236
+ 7, 31672, 31672, 3464, 3464, // #1237
+ 7, 31688, 31688, 3464, 3464, // #1238
+ 80, 31752, 31752, 2232, 2232, // #1239
+ 8, 31848, 31848, 1512, 1512, // #1240
+ 80, 31880, 31880, 2232, 2232, // #1241
+ 25, 32008, 32008, 552, 552, // #1242
+ 6, 32048, 32048, 3536, 3536, // #1243
+ 31, 32064, 32064, 2928, 2928, // #1244
+ 31, 32096, 32096, 3024, 3024, // #1245
+ 30, 32128, 32128, 3392, 3392, // #1246
+ 0, 32160, 32160, 2876, 2876, // #1247
+ 7, 32168, 32168, 3464, 3464, // #1248
+ 7, 32184, 32184, 3464, 3464, // #1249
+ 10, 32192, 32192, 4048, 4048, // #1250
+ 6, 32216, 32216, 3480, 3480, // #1251
+ 6, 32232, 32232, 3480, 3480, // #1252
+ 6, 32248, 32248, 872, 872, // #1253
+ 6, 32264, 32264, 872, 872, // #1254
+ 6, 32280, 32280, 3944, 3944, // #1255
+ 6, 32296, 32296, 3944, 3944, // #1256
+ 3, 32304, 32304, 3600, 3600, // #1257
+ 3, 32320, 32320, 3600, 3600, // #1258
+ 3, 32344, 32344, 3496, 3496, // #1259
+ 3, 32360, 32360, 3496, 3496, // #1260
+ 3, 32376, 32376, 3496, 3496, // #1261
+ 6, 32392, 32392, 2280, 2280, // #1262
+ 6, 32408, 32408, 2280, 2280, // #1263
+ 6, 32424, 32424, 1272, 1272, // #1264
+ 6, 32440, 32440, 1272, 1272, // #1265
+ 3, 32456, 32456, 3496, 3496, // #1266
+ 3, 32472, 32472, 3544, 3544, // #1267
+ 4, 32488, 32488, 3400, 3400, // #1268
+ 3, 32504, 32504, 2856, 2856, // #1269
+ 0, 32512, 32512, 3428, 3428, // #1270
+ 3, 32515, 32515, 739, 739, // #1271
+ 7, 32528, 32528, 1952, 1952, // #1272
+ 0, 32544, 32544, 3428, 3428, // #1273
+ 9, 32559, 32559, 3823, 3823, // #1274
+ 21, 32584, 32584, 3416, 3416, // #1275
+ 0, 32608, 32608, 3428, 3428, // #1276
+ 34, 32642, 32642, 2466, 2466, // #1277
+ 21, 32696, 32696, 3416, 3416, // #1278
+ 0, 32720, 32720, 3428, 3428, // #1279
+ 34, 32770, 32770, 2466, 2466, // #1280
+ 5, 32824, 32824, 136, 136, // #1281
+ 0, 32832, 32832, 3428, 3428, // #1282
+ 5, 32836, 32836, 1156, 1156, // #1283
+ 7, 32848, 32848, 3680, 3680, // #1284
+ 22, 32867, 32867, 3715, 3715, // #1285
+ 7, 32896, 32896, 2336, 2336, // #1286
+ 17, 32915, 32915, 2627, 2627, // #1287
+ 10, 32946, 32946, 1746, 1746, // #1288
+ 16, 32973, 32973, 1757, 1757, // #1289
+ 18, 33006, 33006, 1774, 1774, // #1290
+ 14, 33041, 33041, 1793, 1793, // #1291
+ 10, 33066, 33066, 666, 666, // #1292
+ 0, 33088, 33088, 2668, 2668, // #1293
+ 9, 33088, 33088, 1808, 1808, // #1294
+ 0, 33104, 33104, 2668, 2668, // #1295
+ 16, 33114, 33114, 1818, 1818, // #1296
+ 9, 33147, 33147, 1835, 1835, // #1297
+ 0, 33168, 33168, 2668, 2668, // #1298
+ 17, 33221, 33221, 1845, 1845, // #1299
+ 0, 33248, 33248, 2668, 2668, // #1300
+ 12, 33251, 33251, 691, 691, // #1301
+ 0, 33264, 33264, 2668, 2668, // #1302
+ 77, 33288, 33288, 3528, 3528, // #1303
+ 0, 33376, 33376, 3428, 3428, // #1304
+ 86, 33414, 33414, 2022, 2022, // #1305
+ 5, 33504, 33504, 2064, 2064, // #1306
+ 9, 33520, 33520, 2880, 2880, // #1307
+ 5, 33536, 33536, 880, 880, // #1308
+ 9, 33552, 33552, 2880, 2880, // #1309
+ 5, 33568, 33568, 880, 880, // #1310
+ 7, 33584, 33584, 2784, 2784, // #1311
+ 5, 33600, 33600, 880, 880, // #1312
+ 18, 33616, 33616, 2704, 2704, // #1313
+ 3, 33656, 33656, 2456, 2456, // #1314
+ 13, 33672, 33672, 840, 840, // #1315
+ 3, 33696, 33696, 688, 688, // #1316
+ 14, 33712, 33712, 1024, 1024, // #1317
+ 7, 33736, 33736, 2280, 2280, // #1318
+ 6, 33752, 33752, 1416, 1416, // #1319
+ 5, 33760, 33760, 880, 880, // #1320
+ 13, 33784, 33784, 840, 840, // #1321
+ 3, 33808, 33808, 688, 688, // #1322
+ 14, 33824, 33824, 1024, 1024, // #1323
+ 7, 33848, 33848, 2280, 2280, // #1324
+ 12, 33856, 33856, 192, 192, // #1325
+ 3, 33880, 33880, 136, 136, // #1326
+ 11, 33888, 33888, 3344, 3344, // #1327
+ 3, 33904, 33904, 688, 688, // #1328
+ 13, 33928, 33928, 840, 840, // #1329
+ 3, 33952, 33952, 688, 688, // #1330
+ 6, 33976, 33976, 1416, 1416, // #1331
+ 5, 33984, 33984, 880, 880, // #1332
+ 5, 34000, 34000, 2208, 2208, // #1333
+ 9, 34016, 34016, 2016, 2016, // #1334
+ 22, 34040, 34040, 3048, 3048, // #1335
+ 5, 34064, 34064, 880, 880, // #1336
+ 5, 34088, 34088, 456, 456, // #1337
+ 4, 34096, 34096, 1792, 1792, // #1338
+ 22, 34112, 34112, 576, 576, // #1339
+ 3, 34144, 34144, 688, 688, // #1340
+ 9, 34160, 34160, 2880, 2880, // #1341
+ 5, 34176, 34176, 880, 880, // #1342
+ 5, 34200, 34200, 3448, 3448, // #1343
+ 5, 34208, 34208, 880, 880, // #1344
+ 12, 34232, 34232, 1992, 1992, // #1345
+ 7, 34256, 34256, 736, 736, // #1346
+ 22, 34280, 34280, 3048, 3048, // #1347
+ 5, 34304, 34304, 880, 880, // #1348
+ 8, 34320, 34320, 320, 320, // #1349
+ 3, 34344, 34344, 808, 808, // #1350
+ 10, 34376, 34376, 696, 696, // #1351
+ 9, 34400, 34400, 2016, 2016, // #1352
+ 22, 34424, 34424, 3048, 3048, // #1353
+ 5, 34448, 34448, 880, 880, // #1354
+ 16, 34464, 34464, 3424, 3424, // #1355
+ 7, 34504, 34504, 2280, 2280, // #1356
+ 11, 34512, 34512, 3344, 3344, // #1357
+ 3, 34528, 34528, 688, 688, // #1358
+ 16, 34544, 34544, 3424, 3424, // #1359
+ 7, 34584, 34584, 2280, 2280, // #1360
+ 5, 34600, 34600, 456, 456, // #1361
+ 4, 34608, 34608, 1792, 1792, // #1362
+ 15, 34624, 34624, 80, 80, // #1363
+ 7, 34648, 34648, 2280, 2280, // #1364
+ 15, 34696, 34696, 3448, 3448, // #1365
+ 8, 34728, 34728, 1912, 1912, // #1366
+ 6, 34760, 34760, 3896, 3896, // #1367
+ 3, 34776, 34776, 136, 136, // #1368
+ 6, 34792, 34792, 3896, 3896, // #1369
+ 3, 34808, 34808, 136, 136, // #1370
+ 12, 34816, 34816, 2752, 2752, // #1371
+ 7, 34840, 34840, 2280, 2280, // #1372
+ 17, 34848, 34848, 3424, 3424, // #1373
+ 7, 34888, 34888, 2280, 2280, // #1374
+ 17, 34896, 34896, 3424, 3424, // #1375
+ 7, 34936, 34936, 2280, 2280, // #1376
+ 5, 34952, 34952, 3448, 3448, // #1377
+ 5, 34960, 34960, 880, 880, // #1378
+ 12, 34976, 34976, 2752, 2752, // #1379
+ 7, 35000, 35000, 2280, 2280, // #1380
+ 16, 35008, 35008, 2176, 2176, // #1381
+ 7, 35048, 35048, 2280, 2280, // #1382
+ 6, 35064, 35064, 1416, 1416, // #1383
+ 5, 35072, 35072, 880, 880, // #1384
+ 6, 35088, 35088, 1616, 1616, // #1385
+ 7, 35112, 35112, 2280, 2280, // #1386
+ 16, 35120, 35120, 2176, 2176, // #1387
+ 7, 35160, 35160, 2280, 2280, // #1388
+ 11, 35168, 35168, 3344, 3344, // #1389
+ 3, 35184, 35184, 688, 688, // #1390
+ 5, 35208, 35208, 456, 456, // #1391
+ 4, 35216, 35216, 1792, 1792, // #1392
+ 13, 35240, 35240, 840, 840, // #1393
+ 3, 35264, 35264, 688, 688, // #1394
+ 5, 35288, 35288, 3448, 3448, // #1395
+ 5, 35296, 35296, 880, 880, // #1396
+ 17, 35320, 35320, 3624, 3624, // #1397
+ 8, 35344, 35344, 3472, 3472, // #1398
+ 5, 35368, 35368, 3448, 3448, // #1399
+ 5, 35376, 35376, 880, 880, // #1400
+ 5, 35400, 35400, 3448, 3448, // #1401
+ 5, 35408, 35408, 880, 880, // #1402
+ 15, 35464, 35464, 3448, 3448, // #1403
+ 8, 35496, 35496, 1912, 1912, // #1404
+ 5, 35528, 35528, 3448, 3448, // #1405
+ 5, 35536, 35536, 880, 880, // #1406
+ 11, 35552, 35552, 3344, 3344, // #1407
+ 3, 35568, 35568, 688, 688, // #1408
+ 5, 35592, 35592, 3448, 3448, // #1409
+ 5, 35600, 35600, 880, 880, // #1410
+ 5, 35624, 35624, 3448, 3448, // #1411
+ 5, 35632, 35632, 880, 880, // #1412
+ 11, 35648, 35648, 3344, 3344, // #1413
+ 3, 35664, 35664, 688, 688, // #1414
+ 13, 35680, 35680, 64, 64, // #1415
+ 7, 35704, 35704, 2280, 2280, // #1416
+ 23, 35720, 35720, 792, 792, // #1417
+ 3, 35752, 35752, 2456, 2456, // #1418
+ 13, 35760, 35760, 64, 64, // #1419
+ 7, 35784, 35784, 2280, 2280, // #1420
+ 7, 35800, 35800, 3656, 3656, // #1421
+ 9, 35848, 35848, 3832, 3832, // #1422
+ 22, 35880, 35880, 3048, 3048, // #1423
+ 5, 35904, 35904, 880, 880, // #1424
+ 7, 35928, 35928, 3656, 3656, // #1425
+ 9, 35976, 35976, 3832, 3832, // #1426
+ 13, 36008, 36008, 840, 840, // #1427
+ 3, 36032, 36032, 688, 688, // #1428
+ 5, 36056, 36056, 3448, 3448, // #1429
+ 5, 36064, 36064, 880, 880, // #1430
+ 7, 36088, 36088, 3656, 3656, // #1431
+ 9, 36104, 36104, 3832, 3832, // #1432
+ 9, 36128, 36128, 2880, 2880, // #1433
+ 5, 36144, 36144, 880, 880, // #1434
+ 13, 36168, 36168, 840, 840, // #1435
+ 3, 36192, 36192, 688, 688, // #1436
+ 5, 36216, 36216, 3448, 3448, // #1437
+ 5, 36224, 36224, 880, 880, // #1438
+ 13, 36240, 36240, 3168, 3168, // #1439
+ 7, 36264, 36264, 2280, 2280, // #1440
+ 6, 36280, 36280, 1416, 1416, // #1441
+ 5, 36288, 36288, 880, 880, // #1442
+ 13, 36304, 36304, 3168, 3168, // #1443
+ 7, 36328, 36328, 2280, 2280, // #1444
+ 13, 36336, 36336, 0, 0, // #1445
+ 7, 36360, 36360, 2280, 2280, // #1446
+ 13, 36368, 36368, 0, 0, // #1447
+ 7, 36392, 36392, 2280, 2280, // #1448
+ 9, 36400, 36400, 2880, 2880, // #1449
+ 5, 36416, 36416, 880, 880, // #1450
+ 6, 36440, 36440, 1416, 1416, // #1451
+ 5, 36448, 36448, 880, 880, // #1452
+ 11, 36464, 36464, 3344, 3344, // #1453
+ 3, 36480, 36480, 688, 688, // #1454
+ 13, 36504, 36504, 840, 840, // #1455
+ 3, 36528, 36528, 688, 688, // #1456
+ 12, 36552, 36552, 952, 952, // #1457
+ 7, 36584, 36584, 2280, 2280, // #1458
+ 22, 36600, 36600, 2760, 2760, // #1459
+ 7, 36632, 36632, 2280, 2280, // #1460
+ 11, 36640, 36640, 3344, 3344, // #1461
+ 3, 36656, 36656, 688, 688, // #1462
+ 5, 36680, 36680, 3448, 3448, // #1463
+ 5, 36688, 36688, 880, 880, // #1464
+ 5, 36712, 36712, 3448, 3448, // #1465
+ 5, 36720, 36720, 880, 880, // #1466
+ 6, 36744, 36744, 3896, 3896, // #1467
+ 3, 36760, 36760, 136, 136, // #1468
+ 13, 36776, 36776, 840, 840, // #1469
+ 3, 36800, 36800, 688, 688, // #1470
+ 13, 36824, 36824, 840, 840, // #1471
+ 3, 36848, 36848, 688, 688, // #1472
+ 12, 36864, 36864, 192, 192, // #1473
+ 3, 36888, 36888, 136, 136, // #1474
+ 16, 36896, 36896, 1552, 1552, // #1475
+ 7, 36936, 36936, 2280, 2280, // #1476
+ 12, 36944, 36944, 192, 192, // #1477
+ 3, 36968, 36968, 136, 136, // #1478
+ 23, 36984, 36984, 792, 792, // #1479
+ 3, 37016, 37016, 2456, 2456, // #1480
+ 16, 37024, 37024, 1552, 1552, // #1481
+ 7, 37064, 37064, 2280, 2280, // #1482
+ 13, 37080, 37080, 840, 840, // #1483
+ 3, 37104, 37104, 688, 688, // #1484
+ 13, 37120, 37120, 0, 0, // #1485
+ 7, 37144, 37144, 2280, 2280, // #1486
+ 13, 37152, 37152, 0, 0, // #1487
+ 7, 37176, 37176, 2280, 2280, // #1488
+ 9, 37184, 37184, 2880, 2880, // #1489
+ 5, 37200, 37200, 880, 880, // #1490
+ 12, 37216, 37216, 2240, 2240, // #1491
+ 7, 37240, 37240, 2280, 2280, // #1492
+ 22, 37248, 37248, 576, 576, // #1493
+ 3, 37280, 37280, 688, 688, // #1494
+ 7, 37304, 37304, 3656, 3656, // #1495
+ 9, 37320, 37320, 3832, 3832, // #1496
+ 12, 37344, 37344, 2240, 2240, // #1497
+ 7, 37368, 37368, 2280, 2280, // #1498
+ 13, 37384, 37384, 840, 840, // #1499
+ 3, 37408, 37408, 688, 688, // #1500
+ 12, 37424, 37424, 192, 192, // #1501
+ 3, 37448, 37448, 136, 136, // #1502
+ 7, 37456, 37456, 2784, 2784, // #1503
+ 5, 37472, 37472, 880, 880, // #1504
+ 12, 37488, 37488, 672, 672, // #1505
+ 7, 37512, 37512, 2280, 2280, // #1506
+ 12, 37520, 37520, 672, 672, // #1507
+ 7, 37544, 37544, 2280, 2280, // #1508
+ 12, 37560, 37560, 1480, 1480, // #1509
+ 3, 37592, 37592, 2456, 2456, // #1510
+ 22, 37608, 37608, 3048, 3048, // #1511
+ 5, 37632, 37632, 880, 880, // #1512
+ 22, 37648, 37648, 576, 576, // #1513
+ 3, 37680, 37680, 688, 688, // #1514
+ 22, 37704, 37704, 3048, 3048, // #1515
+ 5, 37728, 37728, 880, 880, // #1516
+ 13, 37752, 37752, 840, 840, // #1517
+ 3, 37776, 37776, 688, 688, // #1518
+ 8, 37792, 37792, 1584, 1584, // #1519
+ 7, 37816, 37816, 2280, 2280, // #1520
+ 20, 37824, 37824, 3328, 3328, // #1521
+ 3, 37864, 37864, 2456, 2456, // #1522
+ 17, 37896, 37896, 1464, 1464, // #1523
+ 8, 37928, 37928, 1912, 1912, // #1524
+ 13, 37952, 37952, 3168, 3168, // #1525
+ 8, 37976, 37976, 1912, 1912, // #1526
+ 6, 38008, 38008, 3896, 3896, // #1527
+ 3, 38024, 38024, 136, 136, // #1528
+ 12, 38032, 38032, 192, 192, // #1529
+ 3, 38056, 38056, 136, 136, // #1530
+ 7, 38072, 38072, 3656, 3656, // #1531
+ 9, 38088, 38088, 3832, 3832, // #1532
+ 15, 38152, 38152, 3448, 3448, // #1533
+ 8, 38184, 38184, 1912, 1912, // #1534
+ 10, 38216, 38216, 2328, 2328, // #1535
+ 7, 38248, 38248, 2280, 2280, // #1536
+ 16, 38264, 38264, 904, 904, // #1537
+ 8, 38296, 38296, 1912, 1912, // #1538
+ 12, 38320, 38320, 192, 192, // #1539
+ 3, 38344, 38344, 136, 136, // #1540
+ 17, 38408, 38408, 1464, 1464, // #1541
+ 8, 38440, 38440, 1912, 1912, // #1542
+ 12, 38464, 38464, 192, 192, // #1543
+ 3, 38488, 38488, 136, 136, // #1544
+ 14, 38496, 38496, 704, 704, // #1545
+ 7, 38520, 38520, 2280, 2280, // #1546
+ 14, 38528, 38528, 704, 704, // #1547
+ 7, 38552, 38552, 2280, 2280, // #1548
+ 13, 38568, 38568, 840, 840, // #1549
+ 3, 38592, 38592, 688, 688, // #1550
+ 22, 38616, 38616, 3048, 3048, // #1551
+ 5, 38640, 38640, 880, 880, // #1552
+ 9, 38656, 38656, 2880, 2880, // #1553
+ 5, 38672, 38672, 880, 880, // #1554
+ 16, 38688, 38688, 2176, 2176, // #1555
+ 7, 38728, 38728, 2280, 2280, // #1556
+ 17, 38792, 38792, 1464, 1464, // #1557
+ 8, 38824, 38824, 1912, 1912, // #1558
+ 12, 38848, 38848, 192, 192, // #1559
+ 3, 38872, 38872, 136, 136, // #1560
+ 16, 38880, 38880, 2176, 2176, // #1561
+ 7, 38920, 38920, 2280, 2280, // #1562
+ 5, 38936, 38936, 3448, 3448, // #1563
+ 5, 38944, 38944, 880, 880, // #1564
+ 5, 38968, 38968, 3448, 3448, // #1565
+ 5, 38976, 38976, 880, 880, // #1566
+ 13, 39000, 39000, 840, 840, // #1567
+ 3, 39024, 39024, 688, 688, // #1568
+ 13, 39048, 39048, 840, 840, // #1569
+ 3, 39072, 39072, 688, 688, // #1570
+ 5, 39096, 39096, 3448, 3448, // #1571
+ 5, 39104, 39104, 880, 880, // #1572
+ 12, 39128, 39128, 1480, 1480, // #1573
+ 3, 39160, 39160, 2456, 2456, // #1574
+ 10, 39168, 39168, 832, 832, // #1575
+ 7, 39192, 39192, 2280, 2280, // #1576
+ 5, 39208, 39208, 3448, 3448, // #1577
+ 5, 39216, 39216, 880, 880, // #1578
+ 5, 39240, 39240, 3448, 3448, // #1579
+ 5, 39248, 39248, 880, 880, // #1580
+ 12, 39264, 39264, 672, 672, // #1581
+ 7, 39288, 39288, 2280, 2280, // #1582
+ 12, 39296, 39296, 192, 192, // #1583
+ 3, 39320, 39320, 136, 136, // #1584
+ 6, 39336, 39336, 3896, 3896, // #1585
+ 3, 39352, 39352, 136, 136, // #1586
+ 12, 39360, 39360, 672, 672, // #1587
+ 7, 39384, 39384, 2280, 2280, // #1588
+ 22, 39400, 39400, 3048, 3048, // #1589
+ 5, 39424, 39424, 880, 880, // #1590
+ 5, 39448, 39448, 456, 456, // #1591
+ 4, 39456, 39456, 1792, 1792, // #1592
+ 24, 39488, 39488, 2736, 2736, // #1593
+ 8, 39528, 39528, 1912, 1912, // #1594
+ 5, 39560, 39560, 3448, 3448, // #1595
+ 5, 39568, 39568, 880, 880, // #1596
+ 13, 39592, 39592, 840, 840, // #1597
+ 3, 39616, 39616, 688, 688, // #1598
+ 5, 39640, 39640, 3448, 3448, // #1599
+ 5, 39648, 39648, 880, 880, // #1600
+ 8, 39664, 39664, 320, 320, // #1601
+ 3, 39688, 39688, 808, 808, // #1602
+ 13, 39704, 39704, 840, 840, // #1603
+ 3, 39728, 39728, 688, 688, // #1604
+ 16, 39744, 39744, 256, 256, // #1605
+ 3, 39784, 39784, 136, 136, // #1606
+ 16, 39792, 39792, 256, 256, // #1607
+ 3, 39832, 39832, 136, 136, // #1608
+ 12, 39840, 39840, 2752, 2752, // #1609
+ 7, 39864, 39864, 2280, 2280, // #1610
+ 12, 39872, 39872, 2752, 2752, // #1611
+ 7, 39896, 39896, 2280, 2280, // #1612
+ 16, 39904, 39904, 256, 256, // #1613
+ 3, 39944, 39944, 136, 136, // #1614
+ 12, 39952, 39952, 192, 192, // #1615
+ 3, 39976, 39976, 136, 136, // #1616
+ 16, 39984, 39984, 256, 256, // #1617
+ 3, 40024, 40024, 136, 136, // #1618
+ 7, 40032, 40032, 2784, 2784, // #1619
+ 5, 40048, 40048, 880, 880, // #1620
+ 5, 40072, 40072, 456, 456, // #1621
+ 4, 40080, 40080, 1792, 1792, // #1622
+ 6, 40104, 40104, 1416, 1416, // #1623
+ 5, 40112, 40112, 880, 880, // #1624
+ 11, 40136, 40136, 2600, 2600, // #1625
+ 7, 40168, 40168, 2280, 2280, // #1626
+ 7, 40176, 40176, 2784, 2784, // #1627
+ 5, 40192, 40192, 880, 880, // #1628
+ 11, 40216, 40216, 2600, 2600, // #1629
+ 7, 40248, 40248, 2280, 2280, // #1630
+ 9, 40256, 40256, 1184, 1184, // #1631
+ 7, 40280, 40280, 2280, 2280, // #1632
+ 9, 40288, 40288, 1184, 1184, // #1633
+ 7, 40312, 40312, 2280, 2280, // #1634
+ 13, 40328, 40328, 840, 840, // #1635
+ 3, 40352, 40352, 688, 688, // #1636
+ 12, 40368, 40368, 672, 672, // #1637
+ 7, 40392, 40392, 2280, 2280, // #1638
+ 5, 40408, 40408, 456, 456, // #1639
+ 4, 40416, 40416, 1792, 1792, // #1640
+ 12, 40432, 40432, 672, 672, // #1641
+ 7, 40456, 40456, 2280, 2280, // #1642
+ 12, 40464, 40464, 192, 192, // #1643
+ 3, 40488, 40488, 136, 136, // #1644
+ 5, 40504, 40504, 456, 456, // #1645
+ 4, 40512, 40512, 1792, 1792, // #1646
+ 6, 40536, 40536, 1416, 1416, // #1647
+ 5, 40552, 40552, 3944, 3944, // #1648
+ 12, 40568, 40568, 3352, 3352, // #1649
+ 8, 40600, 40600, 1912, 1912, // #1650
+ 12, 40624, 40624, 192, 192, // #1651
+ 3, 40648, 40648, 136, 136, // #1652
+ 6, 40664, 40664, 1416, 1416, // #1653
+ 5, 40672, 40672, 880, 880, // #1654
+ 13, 40696, 40696, 840, 840, // #1655
+ 3, 40720, 40720, 688, 688, // #1656
+ 13, 40736, 40736, 3168, 3168, // #1657
+ 8, 40760, 40760, 1912, 1912, // #1658
+ 13, 40792, 40792, 840, 840, // #1659
+ 3, 40816, 40816, 688, 688, // #1660
+ 23, 40840, 40840, 792, 792, // #1661
+ 3, 40872, 40872, 2456, 2456, // #1662
+ 16, 40880, 40880, 3632, 3632, // #1663
+ 8, 40920, 40920, 1912, 1912, // #1664
+ 9, 40944, 40944, 2880, 2880, // #1665
+ 5, 40960, 40960, 880, 880, // #1666
+ 13, 40984, 40984, 840, 840, // #1667
+ 3, 41008, 41008, 688, 688, // #1668
+ 13, 41024, 41024, 3168, 3168, // #1669
+ 7, 41048, 41048, 2280, 2280, // #1670
+ 13, 41064, 41064, 840, 840, // #1671
+ 3, 41088, 41088, 688, 688, // #1672
+ 13, 41104, 41104, 3168, 3168, // #1673
+ 7, 41128, 41128, 2280, 2280, // #1674
+ 16, 41136, 41136, 2176, 2176, // #1675
+ 7, 41176, 41176, 2280, 2280, // #1676
+ 16, 41184, 41184, 2176, 2176, // #1677
+ 7, 41224, 41224, 2280, 2280, // #1678
+ 5, 41240, 41240, 456, 456, // #1679
+ 4, 41248, 41248, 1792, 1792, // #1680
+ 21, 41288, 41288, 3576, 3576, // #1681
+ 8, 41320, 41320, 1912, 1912, // #1682
+ 7, 41344, 41344, 2784, 2784, // #1683
+ 5, 41360, 41360, 880, 880, // #1684
+ 15, 41416, 41416, 3448, 3448, // #1685
+ 8, 41448, 41448, 1912, 1912, // #1686
+ 12, 41472, 41472, 192, 192, // #1687
+ 3, 41496, 41496, 136, 136, // #1688
+ 12, 41504, 41504, 192, 192, // #1689
+ 3, 41528, 41528, 136, 136, // #1690
+ 20, 41536, 41536, 3328, 3328, // #1691
+ 3, 41576, 41576, 2456, 2456, // #1692
+ 22, 41584, 41584, 576, 576, // #1693
+ 3, 41616, 41616, 688, 688, // #1694
+ 6, 41632, 41632, 560, 560, // #1695
+ 9, 41648, 41648, 2016, 2016, // #1696
+ 15, 41664, 41664, 3088, 3088, // #1697
+ 7, 41688, 41688, 2280, 2280, // #1698
+ 17, 41696, 41696, 3424, 3424, // #1699
+ 7, 41736, 41736, 2280, 2280, // #1700
+ 17, 41744, 41744, 3424, 3424, // #1701
+ 7, 41784, 41784, 2280, 2280, // #1702
+ 20, 41800, 41800, 3592, 3592, // #1703
+ 9, 41832, 41832, 2648, 2648, // #1704
+ 5, 41864, 41864, 456, 456, // #1705
+ 4, 41872, 41872, 1792, 1792, // #1706
+ 6, 41896, 41896, 1416, 1416, // #1707
+ 5, 41904, 41904, 880, 880, // #1708
+ 22, 41928, 41928, 3048, 3048, // #1709
+ 5, 41952, 41952, 880, 880, // #1710
+ 22, 41976, 41976, 3048, 3048, // #1711
+ 5, 42000, 42000, 880, 880, // #1712
+ 6, 42024, 42024, 1416, 1416, // #1713
+ 5, 42040, 42040, 3944, 3944, // #1714
+ 5, 42056, 42056, 3448, 3448, // #1715
+ 5, 42064, 42064, 880, 880, // #1716
+ 7, 42080, 42080, 2784, 2784, // #1717
+ 5, 42096, 42096, 880, 880, // #1718
+ 22, 42120, 42120, 3048, 3048, // #1719
+ 5, 42144, 42144, 880, 880, // #1720
+ 13, 42168, 42168, 840, 840, // #1721
+ 3, 42192, 42192, 688, 688, // #1722
+ 12, 42208, 42208, 384, 384, // #1723
+ 7, 42232, 42232, 2280, 2280, // #1724
+ 12, 42240, 42240, 192, 192, // #1725
+ 3, 42264, 42264, 136, 136, // #1726
+ 20, 42272, 42272, 3328, 3328, // #1727
+ 3, 42312, 42312, 2456, 2456, // #1728
+ 13, 42328, 42328, 840, 840, // #1729
+ 3, 42352, 42352, 688, 688, // #1730
+ 16, 42368, 42368, 256, 256, // #1731
+ 3, 42408, 42408, 136, 136, // #1732
+ 12, 42416, 42416, 384, 384, // #1733
+ 7, 42440, 42440, 2280, 2280, // #1734
+ 16, 42448, 42448, 256, 256, // #1735
+ 3, 42488, 42488, 136, 136, // #1736
+ 16, 42496, 42496, 256, 256, // #1737
+ 3, 42536, 42536, 136, 136, // #1738
+ 22, 42552, 42552, 3048, 3048, // #1739
+ 5, 42576, 42576, 880, 880, // #1740
+ 22, 42600, 42600, 3048, 3048, // #1741
+ 5, 42624, 42624, 880, 880, // #1742
+ 13, 42648, 42648, 840, 840, // #1743
+ 3, 42672, 42672, 688, 688, // #1744
+ 6, 42696, 42696, 1416, 1416, // #1745
+ 5, 42704, 42704, 880, 880, // #1746
+ 22, 42720, 42720, 576, 576, // #1747
+ 3, 42752, 42752, 688, 688, // #1748
+ 6, 42776, 42776, 3896, 3896, // #1749
+ 3, 42792, 42792, 136, 136, // #1750
+ 6, 42808, 42808, 1416, 1416, // #1751
+ 5, 42816, 42816, 880, 880, // #1752
+ 16, 42832, 42832, 256, 256, // #1753
+ 3, 42872, 42872, 136, 136, // #1754
+ 7, 42888, 42888, 3656, 3656, // #1755
+ 9, 42952, 42952, 3832, 3832, // #1756
+ 5, 42984, 42984, 3448, 3448, // #1757
+ 5, 42992, 42992, 880, 880, // #1758
+ 13, 43016, 43016, 840, 840, // #1759
+ 3, 43040, 43040, 688, 688, // #1760
+ 11, 43064, 43064, 2600, 2600, // #1761
+ 7, 43096, 43096, 2280, 2280, // #1762
+ 5, 43112, 43112, 3448, 3448, // #1763
+ 5, 43120, 43120, 880, 880, // #1764
+ 5, 43144, 43144, 456, 456, // #1765
+ 4, 43152, 43152, 1792, 1792, // #1766
+ 13, 43176, 43176, 840, 840, // #1767
+ 3, 43200, 43200, 688, 688, // #1768
+ 5, 43224, 43224, 3448, 3448, // #1769
+ 5, 43232, 43232, 880, 880, // #1770
+ 11, 43248, 43248, 3344, 3344, // #1771
+ 3, 43264, 43264, 688, 688, // #1772
+ 11, 43280, 43280, 3344, 3344, // #1773
+ 3, 43296, 43296, 688, 688, // #1774
+ 12, 43320, 43320, 1480, 1480, // #1775
+ 3, 43352, 43352, 2456, 2456, // #1776
+ 7, 43360, 43360, 2784, 2784, // #1777
+ 5, 43376, 43376, 880, 880, // #1778
+ 5, 43400, 43400, 3448, 3448, // #1779
+ 5, 43408, 43408, 880, 880, // #1780
+ 6, 43432, 43432, 1416, 1416, // #1781
+ 5, 43448, 43448, 3944, 3944, // #1782
+ 5, 43464, 43464, 3448, 3448, // #1783
+ 5, 43472, 43472, 880, 880, // #1784
+ 12, 43496, 43496, 3352, 3352, // #1785
+ 8, 43528, 43528, 1912, 1912, // #1786
+ 16, 43552, 43552, 256, 256, // #1787
+ 3, 43592, 43592, 136, 136, // #1788
+ 5, 43608, 43608, 3448, 3448, // #1789
+ 5, 43616, 43616, 880, 880, // #1790
+ 5, 43640, 43640, 3448, 3448, // #1791
+ 5, 43648, 43648, 880, 880, // #1792
+ 19, 43712, 43712, 1264, 1264, // #1793
+ 5, 43752, 43752, 4008, 4008, // #1794
+ 23, 43768, 43768, 792, 792, // #1795
+ 3, 43800, 43800, 2456, 2456, // #1796
+ 9, 43848, 43848, 3576, 3576, // #1797
+ 5, 43880, 43880, 4008, 4008, // #1798
+ 16, 43896, 43896, 3480, 3480, // #1799
+ 7, 43928, 43928, 2280, 2280, // #1800
+ 6, 43944, 43944, 1416, 1416, // #1801
+ 5, 43952, 43952, 880, 880, // #1802
+ 6, 43976, 43976, 3896, 3896, // #1803
+ 3, 43992, 43992, 136, 136, // #1804
+ 11, 44000, 44000, 3344, 3344, // #1805
+ 3, 44016, 44016, 688, 688, // #1806
+ 6, 44040, 44040, 3896, 3896, // #1807
+ 3, 44056, 44056, 136, 136, // #1808
+ 14, 44064, 44064, 1024, 1024, // #1809
+ 7, 44088, 44088, 2280, 2280, // #1810
+ 9, 44096, 44096, 2880, 2880, // #1811
+ 5, 44112, 44112, 880, 880, // #1812
+ 14, 44128, 44128, 1024, 1024, // #1813
+ 7, 44152, 44152, 2280, 2280, // #1814
+ 7, 44168, 44168, 3656, 3656, // #1815
+ 9, 44232, 44232, 3832, 3832, // #1816
+ 16, 44256, 44256, 256, 256, // #1817
+ 3, 44296, 44296, 136, 136, // #1818
+ 11, 44304, 44304, 3344, 3344, // #1819
+ 3, 44320, 44320, 688, 688, // #1820
+ 12, 44336, 44336, 2752, 2752, // #1821
+ 7, 44360, 44360, 2280, 2280, // #1822
+ 12, 44368, 44368, 2752, 2752, // #1823
+ 7, 44392, 44392, 2280, 2280, // #1824
+ 9, 44400, 44400, 2880, 2880, // #1825
+ 5, 44416, 44416, 880, 880, // #1826
+ 12, 44432, 44432, 2752, 2752, // #1827
+ 7, 44456, 44456, 2280, 2280, // #1828
+ 12, 44464, 44464, 2752, 2752, // #1829
+ 7, 44488, 44488, 2280, 2280, // #1830
+ 22, 44496, 44496, 576, 576, // #1831
+ 3, 44528, 44528, 688, 688, // #1832
+ 11, 44544, 44544, 2128, 2128, // #1833
+ 7, 44568, 44568, 2280, 2280, // #1834
+ 14, 44576, 44576, 3552, 3552, // #1835
+ 7, 44600, 44600, 2280, 2280, // #1836
+ 12, 44608, 44608, 192, 192, // #1837
+ 3, 44632, 44632, 136, 136, // #1838
+ 22, 44648, 44648, 3048, 3048, // #1839
+ 5, 44672, 44672, 880, 880, // #1840
+ 14, 44688, 44688, 3552, 3552, // #1841
+ 7, 44712, 44712, 2280, 2280, // #1842
+ 13, 44728, 44728, 1816, 1816, // #1843
+ 3, 44760, 44760, 2456, 2456, // #1844
+ 16, 44768, 44768, 256, 256, // #1845
+ 3, 44808, 44808, 136, 136, // #1846
+ 5, 44816, 44816, 576, 576, // #1847
+ 7, 44840, 44840, 2280, 2280, // #1848
+ 13, 44872, 44872, 1464, 1464, // #1849
+ 7, 44904, 44904, 2280, 2280, // #1850
+ 5, 44920, 44920, 3448, 3448, // #1851
+ 5, 44928, 44928, 880, 880, // #1852
+ 12, 44944, 44944, 1264, 1264, // #1853
+ 10, 44968, 44968, 600, 600, // #1854
+ 13, 45000, 45000, 840, 840, // #1855
+ 3, 45024, 45024, 688, 688, // #1856
+ 6, 45040, 45040, 560, 560, // #1857
+ 9, 45056, 45056, 2016, 2016, // #1858
+ 9, 45080, 45080, 2520, 2520, // #1859
+ 7, 45112, 45112, 2280, 2280, // #1860
+ 5, 45128, 45128, 3448, 3448, // #1861
+ 5, 45136, 45136, 880, 880, // #1862
+ 6, 45160, 45160, 3896, 3896, // #1863
+ 3, 45176, 45176, 136, 136, // #1864
+ 5, 45192, 45192, 3448, 3448, // #1865
+ 5, 45200, 45200, 880, 880, // #1866
+ 22, 45216, 45216, 576, 576, // #1867
+ 3, 45248, 45248, 688, 688, // #1868
+ 14, 45264, 45264, 3840, 3840, // #1869
+ 8, 45288, 45288, 1912, 1912, // #1870
+ 22, 45320, 45320, 3048, 3048, // #1871
+ 5, 45344, 45344, 880, 880, // #1872
+ 13, 45368, 45368, 1816, 1816, // #1873
+ 3, 45400, 45400, 2456, 2456, // #1874
+ 13, 45416, 45416, 840, 840, // #1875
+ 3, 45440, 45440, 688, 688, // #1876
+ 17, 45456, 45456, 3408, 3408, // #1877
+ 10, 45496, 45496, 600, 600, // #1878
+ 9, 45520, 45520, 2880, 2880, // #1879
+ 5, 45536, 45536, 880, 880, // #1880
+ 12, 45552, 45552, 192, 192, // #1881
+ 3, 45576, 45576, 136, 136, // #1882
+ 13, 45584, 45584, 64, 64, // #1883
+ 7, 45608, 45608, 2280, 2280, // #1884
+ 13, 45616, 45616, 64, 64, // #1885
+ 7, 45640, 45640, 2280, 2280, // #1886
+ 13, 45656, 45656, 840, 840, // #1887
+ 3, 45680, 45680, 688, 688, // #1888
+ 6, 45704, 45704, 3896, 3896, // #1889
+ 3, 45720, 45720, 136, 136, // #1890
+ 9, 45728, 45728, 2880, 2880, // #1891
+ 5, 45744, 45744, 880, 880, // #1892
+ 12, 45760, 45760, 1024, 1024, // #1893
+ 7, 45784, 45784, 2280, 2280, // #1894
+ 12, 45792, 45792, 1024, 1024, // #1895
+ 7, 45816, 45816, 2280, 2280, // #1896
+ 9, 45824, 45824, 2880, 2880, // #1897
+ 5, 45840, 45840, 880, 880, // #1898
+ 10, 45856, 45856, 3648, 3648, // #1899
+ 5, 45880, 45880, 4008, 4008, // #1900
+ 16, 45888, 45888, 256, 256, // #1901
+ 3, 45928, 45928, 136, 136, // #1902
+ 6, 45944, 45944, 1416, 1416, // #1903
+ 5, 45952, 45952, 880, 880, // #1904
+ 10, 45976, 45976, 1496, 1496, // #1905
+ 5, 46008, 46008, 4008, 4008, // #1906
+ 11, 46016, 46016, 3344, 3344, // #1907
+ 3, 46032, 46032, 688, 688, // #1908
+ 7, 46048, 46048, 2784, 2784, // #1909
+ 5, 46064, 46064, 880, 880, // #1910
+ 22, 46088, 46088, 3048, 3048, // #1911
+ 5, 46112, 46112, 880, 880, // #1912
+ 5, 46136, 46136, 456, 456, // #1913
+ 3, 46144, 46144, 2912, 2912, // #1914
+ 12, 46160, 46160, 2752, 2752, // #1915
+ 7, 46184, 46184, 2280, 2280, // #1916
+ 12, 46192, 46192, 2752, 2752, // #1917
+ 7, 46216, 46216, 2280, 2280, // #1918
+ 12, 46224, 46224, 192, 192, // #1919
+ 3, 46248, 46248, 136, 136, // #1920
+ 14, 46256, 46256, 1984, 1984, // #1921
+ 3, 46280, 46280, 2456, 2456, // #1922
+ 5, 46296, 46296, 456, 456, // #1923
+ 3, 46304, 46304, 2912, 2912, // #1924
+ 13, 46328, 46328, 840, 840, // #1925
+ 3, 46352, 46352, 688, 688, // #1926
+ 7, 46376, 46376, 3656, 3656, // #1927
+ 9, 46408, 46408, 3832, 3832, // #1928
+ 23, 46432, 46432, 2064, 2064, // #1929
+ 8, 46472, 46472, 1912, 1912, // #1930
+ 12, 46496, 46496, 192, 192, // #1931
+ 3, 46520, 46520, 136, 136, // #1932
+ 9, 46528, 46528, 2880, 2880, // #1933
+ 5, 46544, 46544, 880, 880, // #1934
+ 11, 46560, 46560, 3344, 3344, // #1935
+ 3, 46576, 46576, 688, 688, // #1936
+ 7, 46600, 46600, 3656, 3656, // #1937
+ 9, 46664, 46664, 3832, 3832, // #1938
+ 12, 46688, 46688, 192, 192, // #1939
+ 3, 46712, 46712, 136, 136, // #1940
+ 12, 46720, 46720, 672, 672, // #1941
+ 7, 46744, 46744, 2280, 2280, // #1942
+ 12, 46752, 46752, 672, 672, // #1943
+ 7, 46776, 46776, 2280, 2280, // #1944
+ 9, 46784, 46784, 2880, 2880, // #1945
+ 5, 46800, 46800, 880, 880, // #1946
+ 5, 46816, 46816, 3552, 3552, // #1947
+ 9, 46832, 46832, 2016, 2016, // #1948
+ 22, 46848, 46848, 576, 576, // #1949
+ 3, 46880, 46880, 688, 688, // #1950
+ 13, 46904, 46904, 840, 840, // #1951
+ 3, 46928, 46928, 688, 688, // #1952
+ 9, 46944, 46944, 2880, 2880, // #1953
+ 5, 46960, 46960, 880, 880, // #1954
+ 6, 46984, 46984, 3896, 3896, // #1955
+ 3, 47000, 47000, 136, 136, // #1956
+ 13, 47016, 47016, 840, 840, // #1957
+ 3, 47040, 47040, 688, 688, // #1958
+ 5, 47064, 47064, 456, 456, // #1959
+ 4, 47072, 47072, 1792, 1792, // #1960
+ 12, 47096, 47096, 1480, 1480, // #1961
+ 3, 47128, 47128, 2456, 2456, // #1962
+ 17, 47176, 47176, 1464, 1464, // #1963
+ 8, 47208, 47208, 1912, 1912, // #1964
+ 6, 47240, 47240, 3896, 3896, // #1965
+ 3, 47256, 47256, 136, 136, // #1966
+ 13, 47272, 47272, 1816, 1816, // #1967
+ 3, 47304, 47304, 2456, 2456, // #1968
+ 11, 47312, 47312, 3344, 3344, // #1969
+ 3, 47328, 47328, 688, 688, // #1970
+ 12, 47344, 47344, 384, 384, // #1971
+ 7, 47368, 47368, 2280, 2280, // #1972
+ 6, 47384, 47384, 1416, 1416, // #1973
+ 5, 47392, 47392, 880, 880, // #1974
+ 6, 47416, 47416, 1416, 1416, // #1975
+ 5, 47424, 47424, 880, 880, // #1976
+ 12, 47440, 47440, 384, 384, // #1977
+ 7, 47464, 47464, 2280, 2280, // #1978
+ 16, 47472, 47472, 256, 256, // #1979
+ 3, 47512, 47512, 136, 136, // #1980
+ 6, 47528, 47528, 3896, 3896, // #1981
+ 3, 47544, 47544, 136, 136, // #1982
+ 13, 47560, 47560, 840, 840, // #1983
+ 3, 47584, 47584, 688, 688, // #1984
+ 6, 47608, 47608, 1416, 1416, // #1985
+ 5, 47616, 47616, 880, 880, // #1986
+ 16, 47640, 47640, 2664, 2664, // #1987
+ 7, 47672, 47672, 2280, 2280, // #1988
+ 9, 47680, 47680, 2880, 2880, // #1989
+ 5, 47696, 47696, 880, 880, // #1990
+ 7, 47712, 47712, 2784, 2784, // #1991
+ 5, 47728, 47728, 880, 880, // #1992
+ 12, 47744, 47744, 192, 192, // #1993
+ 3, 47768, 47768, 136, 136, // #1994
+ 22, 47776, 47776, 576, 576, // #1995
+ 3, 47808, 47808, 688, 688, // #1996
+ 15, 47880, 47880, 2488, 2488, // #1997
+ 7, 47912, 47912, 2280, 2280, // #1998
+ 15, 47944, 47944, 2488, 2488, // #1999
+ 7, 47976, 47976, 2280, 2280, // #2000
+ 6, 47992, 47992, 2168, 2168, // #2001
+ 9, 48000, 48000, 2016, 2016, // #2002
+ 10, 48024, 48024, 2216, 2216, // #2003
+ 5, 48056, 48056, 4008, 4008, // #2004
+ 9, 48064, 48064, 2880, 2880, // #2005
+ 5, 48080, 48080, 880, 880, // #2006
+ 13, 48096, 48096, 64, 64, // #2007
+ 7, 48120, 48120, 2280, 2280, // #2008
+ 9, 48128, 48128, 2880, 2880, // #2009
+ 5, 48144, 48144, 880, 880, // #2010
+ 13, 48160, 48160, 64, 64, // #2011
+ 7, 48184, 48184, 2280, 2280, // #2012
+ 12, 48192, 48192, 672, 672, // #2013
+ 7, 48216, 48216, 2280, 2280, // #2014
+ 26, 48232, 48232, 1416, 1416, // #2015
+ 4, 48280, 48280, 2104, 2104, // #2016
+ 12, 48288, 48288, 672, 672, // #2017
+ 7, 48312, 48312, 2280, 2280, // #2018
+ 7, 48320, 48320, 2784, 2784, // #2019
+ 5, 48336, 48336, 880, 880, // #2020
+ 6, 48360, 48360, 3896, 3896, // #2021
+ 3, 48376, 48376, 136, 136, // #2022
+ 22, 48384, 48384, 576, 576, // #2023
+ 3, 48416, 48416, 688, 688, // #2024
+ 16, 48432, 48432, 2448, 2448, // #2025
+ 7, 48472, 48472, 2280, 2280, // #2026
+ 16, 48480, 48480, 2448, 2448, // #2027
+ 7, 48520, 48520, 2280, 2280, // #2028
+ 7, 48528, 48528, 2784, 2784, // #2029
+ 5, 48544, 48544, 880, 880, // #2030
+ 22, 48568, 48568, 3208, 3208, // #2031
+ 12, 48600, 48600, 1928, 1928, // #2032
+ 5, 48632, 48632, 3448, 3448, // #2033
+ 5, 48640, 48640, 880, 880, // #2034
+ 6, 48664, 48664, 3896, 3896, // #2035
+ 3, 48680, 48680, 136, 136, // #2036
+ 7, 48696, 48696, 3656, 3656, // #2037
+ 9, 48712, 48712, 3832, 3832, // #2038
+ 5, 48744, 48744, 456, 456, // #2039
+ 4, 48752, 48752, 1792, 1792, // #2040
+ 6, 48776, 48776, 3896, 3896, // #2041
+ 3, 48792, 48792, 136, 136, // #2042
+ 16, 48800, 48800, 3728, 3728, // #2043
+ 7, 48840, 48840, 2280, 2280, // #2044
+ 6, 48856, 48856, 1416, 1416, // #2045
+ 5, 48872, 48872, 3944, 3944, // #2046
+ 11, 48880, 48880, 3344, 3344, // #2047
+ 3, 48896, 48896, 688, 688, // #2048
+ 11, 48912, 48912, 3344, 3344, // #2049
+ 3, 48928, 48928, 688, 688, // #2050
+ 11, 48944, 48944, 3344, 3344, // #2051
+ 3, 48960, 48960, 688, 688, // #2052
+ 12, 48984, 48984, 616, 616, // #2053
+ 7, 49016, 49016, 2280, 2280, // #2054
+ 12, 49024, 49024, 832, 832, // #2055
+ 7, 49040, 49040, 4064, 4064, // #2056
+ 11, 49056, 49056, 3344, 3344, // #2057
+ 3, 49072, 49072, 688, 688, // #2058
+ 13, 49096, 49096, 840, 840, // #2059
+ 3, 49120, 49120, 688, 688, // #2060
+ 5, 49144, 49144, 3448, 3448, // #2061
+ 5, 49152, 49152, 880, 880, // #2062
+ 6, 49176, 49176, 1416, 1416, // #2063
+ 5, 49184, 49184, 880, 880, // #2064
+ 24, 49200, 49200, 768, 768, // #2065
+ 8, 49240, 49240, 1912, 1912, // #2066
+ 22, 49272, 49272, 3048, 3048, // #2067
+ 5, 49296, 49296, 880, 880, // #2068
+ 16, 49312, 49312, 256, 256, // #2069
+ 3, 49352, 49352, 136, 136, // #2070
+ 6, 49368, 49368, 1416, 1416, // #2071
+ 5, 49376, 49376, 880, 880, // #2072
+ 6, 49400, 49400, 1416, 1416, // #2073
+ 5, 49408, 49408, 880, 880, // #2074
+ 5, 49432, 49432, 3448, 3448, // #2075
+ 5, 49440, 49440, 880, 880, // #2076
+ 23, 49464, 49464, 792, 792, // #2077
+ 3, 49496, 49496, 2456, 2456, // #2078
+ 7, 49504, 49504, 2784, 2784, // #2079
+ 5, 49520, 49520, 880, 880, // #2080
+ 24, 49536, 49536, 3728, 3728, // #2081
+ 9, 49576, 49576, 2648, 2648, // #2082
+ 6, 49608, 49608, 3288, 3288, // #2083
+ 7, 49624, 49624, 2280, 2280, // #2084
+ 22, 49632, 49632, 576, 576, // #2085
+ 3, 49664, 49664, 688, 688, // #2086
+ 22, 49688, 49688, 3048, 3048, // #2087
+ 5, 49712, 49712, 880, 880, // #2088
+ 6, 49728, 49728, 2320, 2320, // #2089
+ 12, 49752, 49752, 1928, 1928, // #2090
+ 8, 49776, 49776, 320, 320, // #2091
+ 3, 49800, 49800, 808, 808, // #2092
+ 11, 49808, 49808, 3344, 3344, // #2093
+ 3, 49824, 49824, 688, 688, // #2094
+ 9, 49840, 49840, 2880, 2880, // #2095
+ 5, 49856, 49856, 880, 880, // #2096
+ 13, 49880, 49880, 840, 840, // #2097
+ 3, 49904, 49904, 688, 688, // #2098
+ 9, 49920, 49920, 2880, 2880, // #2099
+ 5, 49936, 49936, 880, 880, // #2100
+ 6, 49960, 49960, 1416, 1416, // #2101
+ 5, 49968, 49968, 880, 880, // #2102
+ 13, 49992, 49992, 840, 840, // #2103
+ 3, 50016, 50016, 688, 688, // #2104
+ 13, 50040, 50040, 1816, 1816, // #2105
+ 3, 50072, 50072, 2456, 2456, // #2106
+ 13, 50088, 50088, 1816, 1816, // #2107
+ 3, 50120, 50120, 2456, 2456, // #2108
+ 6, 50136, 50136, 1416, 1416, // #2109
+ 5, 50144, 50144, 880, 880, // #2110
+ 27, 50184, 50184, 744, 744, // #2111
+ 4, 50232, 50232, 2104, 2104, // #2112
+ 9, 50240, 50240, 2880, 2880, // #2113
+ 5, 50256, 50256, 880, 880, // #2114
+ 9, 50272, 50272, 2880, 2880, // #2115
+ 5, 50288, 50288, 880, 880, // #2116
+ 16, 50304, 50304, 1552, 1552, // #2117
+ 7, 50344, 50344, 2280, 2280, // #2118
+ 13, 50360, 50360, 2584, 2584, // #2119
+ 3, 50392, 50392, 2456, 2456, // #2120
+ 16, 50400, 50400, 1552, 1552, // #2121
+ 7, 50440, 50440, 2280, 2280, // #2122
+ 22, 50456, 50456, 3048, 3048, // #2123
+ 5, 50480, 50480, 880, 880, // #2124
+ 5, 50504, 50504, 3448, 3448, // #2125
+ 5, 50512, 50512, 880, 880, // #2126
+ 8, 50528, 50528, 2864, 2864, // #2127
+ 7, 50552, 50552, 2280, 2280, // #2128
+ 16, 50568, 50568, 952, 952, // #2129
+ 8, 50600, 50600, 1912, 1912, // #2130
+ 9, 50624, 50624, 2880, 2880, // #2131
+ 5, 50640, 50640, 880, 880, // #2132
+ 16, 50656, 50656, 256, 256, // #2133
+ 3, 50696, 50696, 136, 136, // #2134
+ 9, 50704, 50704, 2880, 2880, // #2135
+ 5, 50720, 50720, 880, 880, // #2136
+ 9, 50736, 50736, 2880, 2880, // #2137
+ 5, 50752, 50752, 880, 880, // #2138
+ 11, 50768, 50768, 3344, 3344, // #2139
+ 3, 50784, 50784, 688, 688, // #2140
+ 14, 50800, 50800, 2368, 2368, // #2141
+ 7, 50816, 50816, 736, 736, // #2142
+ 13, 50840, 50840, 840, 840, // #2143
+ 3, 50864, 50864, 688, 688, // #2144
+ 9, 50880, 50880, 2880, 2880, // #2145
+ 5, 50896, 50896, 880, 880, // #2146
+ 5, 50920, 50920, 3448, 3448, // #2147
+ 5, 50928, 50928, 880, 880, // #2148
+ 6, 50952, 50952, 1736, 1736, // #2149
+ 7, 50968, 50968, 2280, 2280, // #2150
+ 6, 50984, 50984, 1416, 1416, // #2151
+ 5, 50992, 50992, 880, 880, // #2152
+ 7, 51008, 51008, 2784, 2784, // #2153
+ 5, 51024, 51024, 880, 880, // #2154
+ 6, 51048, 51048, 1736, 1736, // #2155
+ 7, 51064, 51064, 2280, 2280, // #2156
+ 6, 51080, 51080, 1416, 1416, // #2157
+ 5, 51088, 51088, 880, 880, // #2158
+ 9, 51104, 51104, 2880, 2880, // #2159
+ 5, 51120, 51120, 880, 880, // #2160
+ 8, 51136, 51136, 320, 320, // #2161
+ 3, 51160, 51160, 808, 808, // #2162
+ 7, 51168, 51168, 2784, 2784, // #2163
+ 5, 51184, 51184, 880, 880, // #2164
+ 13, 51208, 51208, 840, 840, // #2165
+ 3, 51232, 51232, 688, 688, // #2166
+ 12, 51248, 51248, 192, 192, // #2167
+ 3, 51272, 51272, 136, 136, // #2168
+ 12, 51280, 51280, 192, 192, // #2169
+ 3, 51304, 51304, 136, 136, // #2170
+ 9, 51312, 51312, 2880, 2880, // #2171
+ 5, 51328, 51328, 880, 880, // #2172
+ 13, 51352, 51352, 840, 840, // #2173
+ 3, 51376, 51376, 688, 688, // #2174
+ 7, 51392, 51392, 1248, 1248, // #2175
+ 7, 51416, 51416, 2280, 2280, // #2176
+ 7, 51424, 51424, 2784, 2784, // #2177
+ 5, 51440, 51440, 880, 880, // #2178
+ 16, 51456, 51456, 256, 256, // #2179
+ 3, 51496, 51496, 136, 136, // #2180
+ 5, 51512, 51512, 3448, 3448, // #2181
+ 5, 51520, 51520, 880, 880, // #2182
+ 26, 51592, 51592, 2920, 2920, // #2183
+ 4, 51640, 51640, 2104, 2104, // #2184
+ 6, 51656, 51656, 1416, 1416, // #2185
+ 5, 51664, 51664, 880, 880, // #2186
+ 7, 51688, 51688, 3656, 3656, // #2187
+ 9, 51720, 51720, 3832, 3832, // #2188
+ 7, 51744, 51744, 2784, 2784, // #2189
+ 5, 51760, 51760, 880, 880, // #2190
+ 13, 51784, 51784, 840, 840, // #2191
+ 3, 51808, 51808, 688, 688, // #2192
+ 7, 51824, 51824, 2784, 2784, // #2193
+ 5, 51840, 51840, 880, 880, // #2194
+ 13, 51856, 51856, 3744, 3744, // #2195
+ 7, 51880, 51880, 2280, 2280, // #2196
+ 13, 51888, 51888, 3744, 3744, // #2197
+ 7, 51912, 51912, 2280, 2280, // #2198
+ 16, 51920, 51920, 256, 256, // #2199
+ 3, 51960, 51960, 136, 136, // #2200
+ 22, 51968, 51968, 576, 576, // #2201
+ 3, 52000, 52000, 688, 688, // #2202
+ 5, 52024, 52024, 456, 456, // #2203
+ 4, 52032, 52032, 1792, 1792, // #2204
+ 9, 52048, 52048, 2880, 2880, // #2205
+ 5, 52064, 52064, 880, 880, // #2206
+ 7, 52088, 52088, 3656, 3656, // #2207
+ 9, 52104, 52104, 3832, 3832, // #2208
+ 10, 52128, 52128, 3712, 3712, // #2209
+ 7, 52152, 52152, 2280, 2280, // #2210
+ 10, 52160, 52160, 3712, 3712, // #2211
+ 7, 52184, 52184, 2280, 2280, // #2212
+ 16, 52192, 52192, 256, 256, // #2213
+ 3, 52232, 52232, 136, 136, // #2214
+ 16, 52240, 52240, 256, 256, // #2215
+ 3, 52280, 52280, 136, 136, // #2216
+ 17, 52296, 52296, 3624, 3624, // #2217
+ 8, 52320, 52320, 3472, 3472, // #2218
+ 7, 52336, 52336, 2784, 2784, // #2219
+ 5, 52352, 52352, 880, 880, // #2220
+ 17, 52376, 52376, 3624, 3624, // #2221
+ 8, 52400, 52400, 3472, 3472, // #2222
+ 6, 52424, 52424, 3896, 3896, // #2223
+ 3, 52440, 52440, 136, 136, // #2224
+ 16, 52456, 52456, 264, 264, // #2225
+ 7, 52488, 52488, 2280, 2280, // #2226
+ 13, 52504, 52504, 840, 840, // #2227
+ 3, 52528, 52528, 688, 688, // #2228
+ 16, 52552, 52552, 264, 264, // #2229
+ 7, 52584, 52584, 2280, 2280, // #2230
+ 12, 52592, 52592, 384, 384, // #2231
+ 7, 52616, 52616, 2280, 2280, // #2232
+ 9, 52624, 52624, 2880, 2880, // #2233
+ 5, 52640, 52640, 880, 880, // #2234
+ 12, 52656, 52656, 384, 384, // #2235
+ 7, 52680, 52680, 2280, 2280, // #2236
+ 12, 52688, 52688, 192, 192, // #2237
+ 3, 52712, 52712, 136, 136, // #2238
+ 13, 52728, 52728, 1816, 1816, // #2239
+ 3, 52760, 52760, 2456, 2456, // #2240
+ 14, 52768, 52768, 2912, 2912, // #2241
+ 7, 52792, 52792, 2280, 2280, // #2242
+ 12, 52800, 52800, 2752, 2752, // #2243
+ 7, 52824, 52824, 2280, 2280, // #2244
+ 12, 52872, 52872, 952, 952, // #2245
+ 7, 52904, 52904, 2280, 2280, // #2246
+ 22, 52920, 52920, 3048, 3048, // #2247
+ 5, 52944, 52944, 880, 880, // #2248
+ 16, 52960, 52960, 256, 256, // #2249
+ 3, 53000, 53000, 136, 136, // #2250
+ 7, 53016, 53016, 952, 952, // #2251
+ 3, 53032, 53032, 808, 808, // #2252
+ 14, 53040, 53040, 2912, 2912, // #2253
+ 7, 53064, 53064, 2280, 2280, // #2254
+ 12, 53072, 53072, 2752, 2752, // #2255
+ 7, 53096, 53096, 2280, 2280, // #2256
+ 13, 53112, 53112, 840, 840, // #2257
+ 3, 53136, 53136, 688, 688, // #2258
+ 16, 53152, 53152, 256, 256, // #2259
+ 3, 53192, 53192, 136, 136, // #2260
+ 16, 53200, 53200, 256, 256, // #2261
+ 3, 53240, 53240, 136, 136, // #2262
+ 5, 53256, 53256, 456, 456, // #2263
+ 4, 53264, 53264, 1792, 1792, // #2264
+ 6, 53280, 53280, 2768, 2768, // #2265
+ 10, 53304, 53304, 600, 600, // #2266
+ 27, 53384, 53384, 744, 744, // #2267
+ 4, 53432, 53432, 2104, 2104, // #2268
+ 10, 53448, 53448, 760, 760, // #2269
+ 10, 53480, 53480, 600, 600, // #2270
+ 19, 53512, 53512, 1480, 1480, // #2271
+ 9, 53544, 53544, 2648, 2648, // #2272
+ 9, 53568, 53568, 2880, 2880, // #2273
+ 5, 53584, 53584, 880, 880, // #2274
+ 22, 53608, 53608, 3048, 3048, // #2275
+ 5, 53632, 53632, 880, 880, // #2276
+ 11, 53648, 53648, 3344, 3344, // #2277
+ 3, 53664, 53664, 688, 688, // #2278
+ 13, 53688, 53688, 840, 840, // #2279
+ 3, 53712, 53712, 688, 688, // #2280
+ 13, 53736, 53736, 840, 840, // #2281
+ 3, 53760, 53760, 688, 688, // #2282
+ 7, 53776, 53776, 2784, 2784, // #2283
+ 5, 53792, 53792, 880, 880, // #2284
+ 11, 53808, 53808, 2176, 2176, // #2285
+ 7, 53832, 53832, 2280, 2280, // #2286
+ 7, 53840, 53840, 2784, 2784, // #2287
+ 5, 53856, 53856, 880, 880, // #2288
+ 22, 53872, 53872, 576, 576, // #2289
+ 3, 53904, 53904, 688, 688, // #2290
+ 5, 53928, 53928, 3448, 3448, // #2291
+ 5, 53936, 53936, 880, 880, // #2292
+ 5, 53960, 53960, 3448, 3448, // #2293
+ 5, 53968, 53968, 880, 880, // #2294
+ 11, 53984, 53984, 2176, 2176, // #2295
+ 7, 54008, 54008, 2280, 2280, // #2296
+ 13, 54024, 54024, 840, 840, // #2297
+ 3, 54048, 54048, 688, 688, // #2298
+ 22, 54072, 54072, 3048, 3048, // #2299
+ 5, 54096, 54096, 880, 880, // #2300
+ 7, 54112, 54112, 2784, 2784, // #2301
+ 5, 54128, 54128, 880, 880, // #2302
+ 16, 54144, 54144, 256, 256, // #2303
+ 3, 54184, 54184, 136, 136, // #2304
+ 5, 54200, 54200, 3448, 3448, // #2305
+ 5, 54208, 54208, 880, 880, // #2306
+ 22, 54232, 54232, 3048, 3048, // #2307
+ 5, 54256, 54256, 880, 880, // #2308
+ 13, 54280, 54280, 840, 840, // #2309
+ 3, 54304, 54304, 688, 688, // #2310
+ 16, 54320, 54320, 256, 256, // #2311
+ 3, 54360, 54360, 136, 136, // #2312
+ 5, 54376, 54376, 3448, 3448, // #2313
+ 5, 54384, 54384, 880, 880, // #2314
+ 16, 54400, 54400, 256, 256, // #2315
+ 3, 54440, 54440, 136, 136, // #2316
+ 13, 54456, 54456, 1816, 1816, // #2317
+ 3, 54488, 54488, 2456, 2456, // #2318
+ 22, 54504, 54504, 3416, 3416, // #2319
+ 7, 54536, 54536, 2280, 2280, // #2320
+ 22, 54544, 54544, 576, 576, // #2321
+ 3, 54576, 54576, 688, 688, // #2322
+ 23, 54592, 54592, 2064, 2064, // #2323
+ 8, 54632, 54632, 1912, 1912, // #2324
+ 16, 54656, 54656, 3424, 3424, // #2325
+ 7, 54696, 54696, 2280, 2280, // #2326
+ 22, 54712, 54712, 3048, 3048, // #2327
+ 5, 54736, 54736, 880, 880, // #2328
+ 11, 54752, 54752, 3344, 3344, // #2329
+ 3, 54768, 54768, 688, 688, // #2330
+ 12, 54784, 54784, 192, 192, // #2331
+ 3, 54808, 54808, 136, 136, // #2332
+ 5, 54824, 54824, 3448, 3448, // #2333
+ 5, 54832, 54832, 880, 880, // #2334
+ 16, 54848, 54848, 3424, 3424, // #2335
+ 7, 54888, 54888, 2280, 2280, // #2336
+ 12, 54896, 54896, 2752, 2752, // #2337
+ 7, 54920, 54920, 2280, 2280, // #2338
+ 11, 54928, 54928, 3344, 3344, // #2339
+ 3, 54944, 54944, 688, 688, // #2340
+ 21, 54984, 54984, 3576, 3576, // #2341
+ 8, 55016, 55016, 1912, 1912, // #2342
+ 12, 55040, 55040, 2752, 2752, // #2343
+ 7, 55064, 55064, 2280, 2280, // #2344
+ 16, 55072, 55072, 256, 256, // #2345
+ 3, 55112, 55112, 136, 136, // #2346
+ 6, 55128, 55128, 3896, 3896, // #2347
+ 3, 55144, 55144, 136, 136, // #2348
+ 16, 55152, 55152, 256, 256, // #2349
+ 3, 55192, 55192, 136, 136, // #2350
+ 9, 55200, 55200, 2880, 2880, // #2351
+ 5, 55216, 55216, 880, 880, // #2352
+ 7, 55240, 55240, 3656, 3656, // #2353
+ 9, 55304, 55304, 3832, 3832, // #2354
+ 9, 55328, 55328, 2880, 2880, // #2355
+ 5, 55344, 55344, 880, 880, // #2356
+ 9, 55360, 55360, 2880, 2880, // #2357
+ 5, 55376, 55376, 880, 880, // #2358
+ 7, 55400, 55400, 3656, 3656, // #2359
+ 9, 55432, 55432, 3832, 3832, // #2360
+ 11, 55456, 55456, 3344, 3344, // #2361
+ 3, 55472, 55472, 688, 688, // #2362
+ 10, 55496, 55496, 2952, 2952, // #2363
+ 9, 55520, 55520, 2016, 2016, // #2364
+ 12, 55536, 55536, 2240, 2240, // #2365
+ 7, 55560, 55560, 2280, 2280, // #2366
+ 13, 55576, 55576, 1816, 1816, // #2367
+ 3, 55608, 55608, 2456, 2456, // #2368
+ 22, 55624, 55624, 3048, 3048, // #2369
+ 5, 55648, 55648, 880, 880, // #2370
+ 6, 55672, 55672, 3896, 3896, // #2371
+ 3, 55688, 55688, 136, 136, // #2372
+ 14, 55696, 55696, 3552, 3552, // #2373
+ 7, 55720, 55720, 2280, 2280, // #2374
+ 12, 55728, 55728, 2240, 2240, // #2375
+ 7, 55752, 55752, 2280, 2280, // #2376
+ 8, 55760, 55760, 320, 320, // #2377
+ 3, 55784, 55784, 808, 808, // #2378
+ 6, 55800, 55800, 1416, 1416, // #2379
+ 5, 55808, 55808, 880, 880, // #2380
+ 14, 55824, 55824, 3552, 3552, // #2381
+ 7, 55848, 55848, 2280, 2280, // #2382
+ 9, 55856, 55856, 2880, 2880, // #2383
+ 5, 55872, 55872, 880, 880, // #2384
+ 9, 55888, 55888, 2880, 2880, // #2385
+ 5, 55904, 55904, 880, 880, // #2386
+ 9, 55920, 55920, 2880, 2880, // #2387
+ 5, 55936, 55936, 880, 880, // #2388
+ 12, 55952, 55952, 192, 192, // #2389
+ 3, 55976, 55976, 136, 136, // #2390
+ 24, 55984, 55984, 3728, 3728, // #2391
+ 9, 56024, 56024, 2648, 2648, // #2392
+ 19, 56064, 56064, 1968, 1968, // #2393
+ 5, 56104, 56104, 4008, 4008, // #2394
+ 6, 56120, 56120, 1416, 1416, // #2395
+ 5, 56128, 56128, 880, 880, // #2396
+ 22, 56144, 56144, 576, 576, // #2397
+ 3, 56176, 56176, 688, 688, // #2398
+ 12, 56192, 56192, 192, 192, // #2399
+ 3, 56216, 56216, 136, 136, // #2400
+ 12, 56224, 56224, 192, 192, // #2401
+ 3, 56248, 56248, 136, 136, // #2402
+ 12, 56256, 56256, 192, 192, // #2403
+ 3, 56280, 56280, 136, 136, // #2404
+ 12, 56288, 56288, 192, 192, // #2405
+ 3, 56312, 56312, 136, 136, // #2406
+ 5, 56328, 56328, 3448, 3448, // #2407
+ 5, 56336, 56336, 880, 880, // #2408
+ 11, 56352, 56352, 2592, 2592, // #2409
+ 7, 56376, 56376, 2280, 2280, // #2410
+ 16, 56384, 56384, 256, 256, // #2411
+ 3, 56424, 56424, 136, 136, // #2412
+ 12, 56432, 56432, 1024, 1024, // #2413
+ 7, 56456, 56456, 2280, 2280, // #2414
+ 11, 56464, 56464, 2592, 2592, // #2415
+ 7, 56488, 56488, 2280, 2280, // #2416
+ 12, 56496, 56496, 1024, 1024, // #2417
+ 7, 56520, 56520, 2280, 2280, // #2418
+ 13, 56536, 56536, 840, 840, // #2419
+ 3, 56560, 56560, 688, 688, // #2420
+ 16, 56576, 56576, 256, 256, // #2421
+ 3, 56616, 56616, 136, 136, // #2422
+ 13, 56632, 56632, 840, 840, // #2423
+ 3, 56656, 56656, 688, 688, // #2424
+ 12, 56672, 56672, 1024, 1024, // #2425
+ 7, 56696, 56696, 2280, 2280, // #2426
+ 12, 56704, 56704, 1024, 1024, // #2427
+ 7, 56728, 56728, 2280, 2280, // #2428
+ 13, 56744, 56744, 840, 840, // #2429
+ 3, 56768, 56768, 688, 688, // #2430
+ 7, 56784, 56784, 2784, 2784, // #2431
+ 5, 56800, 56800, 880, 880, // #2432
+ 7, 56816, 56816, 2784, 2784, // #2433
+ 5, 56832, 56832, 880, 880, // #2434
+ 13, 56856, 56856, 840, 840, // #2435
+ 3, 56880, 56880, 688, 688, // #2436
+ 7, 56896, 56896, 2784, 2784, // #2437
+ 5, 56912, 56912, 880, 880, // #2438
+ 7, 56928, 56928, 2784, 2784, // #2439
+ 5, 56944, 56944, 880, 880, // #2440
+ 7, 56960, 56960, 2784, 2784, // #2441
+ 5, 56976, 56976, 880, 880, // #2442
+ 22, 56992, 56992, 576, 576, // #2443
+ 3, 57024, 57024, 688, 688, // #2444
+ 7, 57040, 57040, 2784, 2784, // #2445
+ 5, 57056, 57056, 880, 880, // #2446
+ 24, 57072, 57072, 3728, 3728, // #2447
+ 9, 57112, 57112, 2648, 2648, // #2448
+ 12, 57136, 57136, 192, 192, // #2449
+ 3, 57160, 57160, 136, 136, // #2450
+ 12, 57168, 57168, 192, 192, // #2451
+ 3, 57192, 57192, 136, 136, // #2452
+ 16, 57200, 57200, 256, 256, // #2453
+ 3, 57240, 57240, 136, 136, // #2454
+ 13, 57256, 57256, 840, 840, // #2455
+ 3, 57280, 57280, 688, 688, // #2456
+ 6, 57304, 57304, 1416, 1416, // #2457
+ 5, 57312, 57312, 880, 880, // #2458
+ 13, 57336, 57336, 2584, 2584, // #2459
+ 3, 57368, 57368, 2456, 2456, // #2460
+ 6, 57384, 57384, 3896, 3896, // #2461
+ 3, 57400, 57400, 136, 136, // #2462
+ 20, 57416, 57416, 3592, 3592, // #2463
+ 9, 57448, 57448, 2648, 2648, // #2464
+ 6, 57480, 57480, 3896, 3896, // #2465
+ 3, 57496, 57496, 136, 136, // #2466
+ 6, 57512, 57512, 3896, 3896, // #2467
+ 3, 57528, 57528, 136, 136, // #2468
+ 13, 57544, 57544, 840, 840, // #2469
+ 3, 57568, 57568, 688, 688, // #2470
+ 6, 57592, 57592, 3896, 3896, // #2471
+ 3, 57608, 57608, 136, 136, // #2472
+ 13, 57624, 57624, 840, 840, // #2473
+ 3, 57648, 57648, 688, 688, // #2474
+ 12, 57664, 57664, 192, 192, // #2475
+ 3, 57688, 57688, 136, 136, // #2476
+ 19, 57704, 57704, 1480, 1480, // #2477
+ 9, 57736, 57736, 2648, 2648, // #2478
+ 9, 57760, 57760, 2880, 2880, // #2479
+ 5, 57776, 57776, 880, 880, // #2480
+ 11, 57800, 57800, 2600, 2600, // #2481
+ 7, 57832, 57832, 2280, 2280, // #2482
+ 12, 57840, 57840, 2752, 2752, // #2483
+ 7, 57864, 57864, 2280, 2280, // #2484
+ 12, 57872, 57872, 2752, 2752, // #2485
+ 7, 57896, 57896, 2280, 2280, // #2486
+ 22, 57912, 57912, 3048, 3048, // #2487
+ 5, 57936, 57936, 880, 880, // #2488
+ 12, 57952, 57952, 2752, 2752, // #2489
+ 7, 57976, 57976, 2280, 2280, // #2490
+ 16, 57984, 57984, 256, 256, // #2491
+ 3, 58024, 58024, 136, 136, // #2492
+ 11, 58032, 58032, 3344, 3344, // #2493
+ 3, 58048, 58048, 688, 688, // #2494
+ 12, 58064, 58064, 2752, 2752, // #2495
+ 7, 58088, 58088, 2280, 2280, // #2496
+ 13, 58104, 58104, 840, 840, // #2497
+ 3, 58128, 58128, 688, 688, // #2498
+ 14, 58144, 58144, 2912, 2912, // #2499
+ 7, 58168, 58168, 2280, 2280, // #2500
+ 7, 58176, 58176, 2784, 2784, // #2501
+ 5, 58192, 58192, 880, 880, // #2502
+ 14, 58208, 58208, 2912, 2912, // #2503
+ 7, 58232, 58232, 2280, 2280, // #2504
+ 22, 58248, 58248, 3048, 3048, // #2505
+ 5, 58272, 58272, 880, 880, // #2506
+ 5, 58296, 58296, 456, 456, // #2507
+ 4, 58304, 58304, 1792, 1792, // #2508
+ 16, 58376, 58376, 952, 952, // #2509
+ 8, 58408, 58408, 1912, 1912, // #2510
+ 13, 58440, 58440, 840, 840, // #2511
+ 3, 58464, 58464, 688, 688, // #2512
+ 14, 58480, 58480, 4064, 4064, // #2513
+ 10, 58504, 58504, 600, 600, // #2514
+ 12, 58528, 58528, 192, 192, // #2515
+ 3, 58552, 58552, 136, 136, // #2516
+ 12, 58560, 58560, 192, 192, // #2517
+ 3, 58584, 58584, 136, 136, // #2518
+ 6, 58592, 58592, 3504, 3504, // #2519
+ 7, 58616, 58616, 2280, 2280, // #2520
+ 12, 58624, 58624, 192, 192, // #2521
+ 3, 58648, 58648, 136, 136, // #2522
+ 6, 58664, 58664, 3896, 3896, // #2523
+ 3, 58680, 58680, 136, 136, // #2524
+ 16, 58696, 58696, 2424, 2424, // #2525
+ 5, 58728, 58728, 4008, 4008, // #2526
+ 6, 58744, 58744, 3896, 3896, // #2527
+ 3, 58760, 58760, 136, 136, // #2528
+ 12, 58768, 58768, 384, 384, // #2529
+ 7, 58792, 58792, 2280, 2280, // #2530
+ 12, 58800, 58800, 384, 384, // #2531
+ 7, 58824, 58824, 2280, 2280, // #2532
+ 16, 58832, 58832, 256, 256, // #2533
+ 3, 58872, 58872, 136, 136, // #2534
+ 13, 58888, 58888, 840, 840, // #2535
+ 3, 58912, 58912, 688, 688, // #2536
+ 9, 58928, 58928, 384, 384, // #2537
+ 7, 58952, 58952, 2280, 2280, // #2538
+ 6, 58968, 58968, 3896, 3896, // #2539
+ 3, 58984, 58984, 136, 136, // #2540
+ 22, 58992, 58992, 576, 576, // #2541
+ 3, 59024, 59024, 688, 688, // #2542
+ 19, 59048, 59048, 1480, 1480, // #2543
+ 9, 59080, 59080, 2648, 2648, // #2544
+ 9, 59104, 59104, 2880, 2880, // #2545
+ 5, 59120, 59120, 880, 880, // #2546
+ 9, 59136, 59136, 2880, 2880, // #2547
+ 5, 59152, 59152, 880, 880, // #2548
+ 7, 59168, 59168, 3936, 3936, // #2549
+ 8, 59192, 59192, 1912, 1912, // #2550
+ 6, 59224, 59224, 3224, 3224, // #2551
+ 8, 59240, 59240, 1912, 1912, // #2552
+ 15, 59272, 59272, 2488, 2488, // #2553
+ 7, 59304, 59304, 2280, 2280, // #2554
+ 15, 59336, 59336, 2488, 2488, // #2555
+ 7, 59368, 59368, 2280, 2280, // #2556
+ 12, 59376, 59376, 192, 192, // #2557
+ 3, 59400, 59400, 136, 136, // #2558
+ 5, 59416, 59416, 3448, 3448, // #2559
+ 5, 59424, 59424, 880, 880, // #2560
+ 22, 59440, 59440, 576, 576, // #2561
+ 3, 59472, 59472, 688, 688, // #2562
+ 5, 59496, 59496, 3448, 3448, // #2563
+ 5, 59504, 59504, 880, 880, // #2564
+ 5, 59528, 59528, 456, 456, // #2565
+ 4, 59536, 59536, 1792, 1792, // #2566
+ 22, 59552, 59552, 576, 576, // #2567
+ 3, 59584, 59584, 688, 688, // #2568
+ 22, 59600, 59600, 576, 576, // #2569
+ 3, 59632, 59632, 688, 688, // #2570
+ 13, 59656, 59656, 2584, 2584, // #2571
+ 3, 59688, 59688, 2456, 2456, // #2572
+ 13, 59704, 59704, 840, 840, // #2573
+ 3, 59728, 59728, 688, 688, // #2574
+ 9, 59744, 59744, 2880, 2880, // #2575
+ 5, 59760, 59760, 880, 880, // #2576
+ 22, 59784, 59784, 3048, 3048, // #2577
+ 5, 59808, 59808, 880, 880, // #2578
+ 6, 59832, 59832, 1416, 1416, // #2579
+ 5, 59840, 59840, 880, 880, // #2580
+ 27, 59912, 59912, 744, 744, // #2581
+ 4, 59960, 59960, 2104, 2104, // #2582
+ 12, 59968, 59968, 192, 192, // #2583
+ 3, 59992, 59992, 136, 136, // #2584
+ 7, 60000, 60000, 2784, 2784, // #2585
+ 5, 60016, 60016, 880, 880, // #2586
+ 5, 60040, 60040, 3448, 3448, // #2587
+ 5, 60048, 60048, 880, 880, // #2588
+ 12, 60064, 60064, 2240, 2240, // #2589
+ 7, 60088, 60088, 2280, 2280, // #2590
+ 12, 60096, 60096, 2240, 2240, // #2591
+ 7, 60120, 60120, 2280, 2280, // #2592
+ 11, 60128, 60128, 3344, 3344, // #2593
+ 3, 60144, 60144, 688, 688, // #2594
+ 6, 60168, 60168, 3896, 3896, // #2595
+ 3, 60184, 60184, 136, 136, // #2596
+ 13, 60200, 60200, 840, 840, // #2597
+ 3, 60224, 60224, 688, 688, // #2598
+ 13, 60248, 60248, 2584, 2584, // #2599
+ 3, 60280, 60280, 2456, 2456, // #2600
+ 11, 60288, 60288, 3344, 3344, // #2601
+ 3, 60304, 60304, 688, 688, // #2602
+ 5, 60328, 60328, 456, 456, // #2603
+ 4, 60336, 60336, 1792, 1792, // #2604
+ 12, 60352, 60352, 1024, 1024, // #2605
+ 7, 60376, 60376, 2280, 2280, // #2606
+ 12, 60384, 60384, 1024, 1024, // #2607
+ 7, 60408, 60408, 2280, 2280, // #2608
+ 7, 60416, 60416, 2784, 2784, // #2609
+ 5, 60432, 60432, 880, 880, // #2610
+ 22, 60448, 60448, 576, 576, // #2611
+ 3, 60480, 60480, 688, 688, // #2612
+ 6, 60504, 60504, 1416, 1416, // #2613
+ 5, 60512, 60512, 880, 880, // #2614
+ 13, 60536, 60536, 840, 840, // #2615
+ 3, 60560, 60560, 688, 688, // #2616
+ 13, 60584, 60584, 840, 840, // #2617
+ 3, 60608, 60608, 688, 688, // #2618
+ 11, 60624, 60624, 3344, 3344, // #2619
+ 3, 60640, 60640, 688, 688, // #2620
+ 24, 60656, 60656, 3728, 3728, // #2621
+ 9, 60696, 60696, 2648, 2648, // #2622
+ 5, 60728, 60728, 456, 456, // #2623
+ 4, 60736, 60736, 1792, 1792, // #2624
+ 12, 60808, 60808, 952, 952, // #2625
+ 7, 60840, 60840, 2280, 2280, // #2626
+ 20, 60856, 60856, 104, 104, // #2627
+ 7, 60888, 60888, 2280, 2280, // #2628
+ 8, 60896, 60896, 320, 320, // #2629
+ 3, 60920, 60920, 808, 808, // #2630
+ 22, 60936, 60936, 3048, 3048, // #2631
+ 5, 60960, 60960, 880, 880, // #2632
+ 13, 60984, 60984, 840, 840, // #2633
+ 3, 61008, 61008, 688, 688, // #2634
+ 13, 61032, 61032, 840, 840, // #2635
+ 3, 61056, 61056, 688, 688, // #2636
+ 22, 61072, 61072, 576, 576, // #2637
+ 3, 61104, 61104, 688, 688, // #2638
+ 13, 61128, 61128, 840, 840, // #2639
+ 3, 61152, 61152, 688, 688, // #2640
+ 6, 61176, 61176, 1416, 1416, // #2641
+ 5, 61184, 61184, 880, 880, // #2642
+ 22, 61208, 61208, 3048, 3048, // #2643
+ 5, 61232, 61232, 880, 880, // #2644
+ 11, 61248, 61248, 2592, 2592, // #2645
+ 7, 61272, 61272, 2280, 2280, // #2646
+ 11, 61280, 61280, 2592, 2592, // #2647
+ 7, 61304, 61304, 2280, 2280, // #2648
+ 22, 61320, 61320, 3048, 3048, // #2649
+ 5, 61344, 61344, 880, 880, // #2650
+ 22, 61368, 61368, 3048, 3048, // #2651
+ 5, 61392, 61392, 880, 880, // #2652
+ 22, 61416, 61416, 3048, 3048, // #2653
+ 5, 61440, 61440, 880, 880, // #2654
+ 22, 61464, 61464, 3048, 3048, // #2655
+ 5, 61488, 61488, 880, 880, // #2656
+ 16, 61504, 61504, 256, 256, // #2657
+ 3, 61544, 61544, 136, 136, // #2658
+ 6, 61560, 61560, 1416, 1416, // #2659
+ 5, 61568, 61568, 880, 880, // #2660
+ 21, 61592, 61592, 2888, 2888, // #2661
+ 7, 61624, 61624, 2280, 2280, // #2662
+ 23, 61640, 61640, 792, 792, // #2663
+ 3, 61672, 61672, 2456, 2456, // #2664
+ 22, 61680, 61680, 576, 576, // #2665
+ 3, 61712, 61712, 688, 688, // #2666
+ 12, 61728, 61728, 192, 192, // #2667
+ 3, 61752, 61752, 136, 136, // #2668
+ 6, 61768, 61768, 1416, 1416, // #2669
+ 5, 61776, 61776, 880, 880, // #2670
+ 22, 61792, 61792, 576, 576, // #2671
+ 3, 61824, 61824, 688, 688, // #2672
+ 13, 61848, 61848, 840, 840, // #2673
+ 3, 61872, 61872, 688, 688, // #2674
+ 22, 61896, 61896, 3048, 3048, // #2675
+ 5, 61920, 61920, 880, 880, // #2676
+ 16, 61936, 61936, 256, 256, // #2677
+ 3, 61976, 61976, 136, 136, // #2678
+ 9, 61984, 61984, 2880, 2880, // #2679
+ 5, 62000, 62000, 880, 880, // #2680
+ 7, 62016, 62016, 2784, 2784, // #2681
+ 5, 62032, 62032, 880, 880, // #2682
+ 22, 62056, 62056, 3048, 3048, // #2683
+ 5, 62080, 62080, 880, 880, // #2684
+ 22, 62104, 62104, 3048, 3048, // #2685
+ 5, 62128, 62128, 880, 880, // #2686
+ 13, 62144, 62144, 3232, 3232, // #2687
+ 7, 62168, 62168, 2280, 2280, // #2688
+ 13, 62176, 62176, 3232, 3232, // #2689
+ 7, 62200, 62200, 2280, 2280, // #2690
+ 6, 62216, 62216, 1416, 1416, // #2691
+ 5, 62224, 62224, 880, 880, // #2692
+ 13, 62240, 62240, 0, 0, // #2693
+ 7, 62264, 62264, 2280, 2280, // #2694
+ 22, 62272, 62272, 576, 576, // #2695
+ 3, 62304, 62304, 688, 688, // #2696
+ 13, 62320, 62320, 0, 0, // #2697
+ 7, 62344, 62344, 2280, 2280, // #2698
+ 17, 62360, 62360, 2760, 2760, // #2699
+ 7, 62392, 62392, 2280, 2280, // #2700
+ 13, 62408, 62408, 840, 840, // #2701
+ 3, 62432, 62432, 688, 688, // #2702
+ 17, 62456, 62456, 2760, 2760, // #2703
+ 7, 62488, 62488, 2280, 2280, // #2704
+ 9, 62496, 62496, 2880, 2880, // #2705
+ 5, 62512, 62512, 880, 880, // #2706
+ 6, 62536, 62536, 1416, 1416, // #2707
+ 5, 62544, 62544, 880, 880, // #2708
+ 9, 62560, 62560, 2880, 2880, // #2709
+ 5, 62576, 62576, 880, 880, // #2710
+ 22, 62600, 62600, 3048, 3048, // #2711
+ 5, 62624, 62624, 880, 880, // #2712
+ 13, 62648, 62648, 840, 840, // #2713
+ 3, 62672, 62672, 688, 688, // #2714
+ 11, 62688, 62688, 3344, 3344, // #2715
+ 3, 62704, 62704, 688, 688, // #2716
+ 17, 62728, 62728, 3848, 3848, // #2717
+ 7, 62752, 62752, 736, 736, // #2718
+ 5, 62776, 62776, 3448, 3448, // #2719
+ 5, 62784, 62784, 880, 880, // #2720
+ 6, 62808, 62808, 3896, 3896, // #2721
+ 3, 62824, 62824, 136, 136, // #2722
+ 5, 62840, 62840, 3448, 3448, // #2723
+ 5, 62848, 62848, 880, 880, // #2724
+ 5, 62872, 62872, 3448, 3448, // #2725
+ 5, 62880, 62880, 880, 880, // #2726
+ 5, 62904, 62904, 3448, 3448, // #2727
+ 5, 62912, 62912, 880, 880, // #2728
+ 15, 62984, 62984, 2488, 2488, // #2729
+ 7, 63016, 63016, 2280, 2280, // #2730
+ 15, 63024, 63024, 3088, 3088, // #2731
+ 7, 63048, 63048, 2280, 2280, // #2732
+ 15, 63112, 63112, 2488, 2488, // #2733
+ 7, 63144, 63144, 2280, 2280, // #2734
+ 16, 63176, 63176, 504, 504, // #2735
+ 7, 63200, 63200, 736, 736, // #2736
+ 9, 63216, 63216, 2880, 2880, // #2737
+ 5, 63232, 63232, 880, 880, // #2738
+ 11, 63248, 63248, 3344, 3344, // #2739
+ 3, 63264, 63264, 688, 688, // #2740
+ 13, 63280, 63280, 64, 64, // #2741
+ 7, 63304, 63304, 2280, 2280, // #2742
+ 13, 63312, 63312, 64, 64, // #2743
+ 7, 63336, 63336, 2280, 2280, // #2744
+ 16, 63344, 63344, 256, 256, // #2745
+ 3, 63384, 63384, 136, 136, // #2746
+ 11, 63400, 63400, 3800, 3800, // #2747
+ 8, 63432, 63432, 1912, 1912, // #2748
+ 7, 63456, 63456, 2784, 2784, // #2749
+ 5, 63472, 63472, 880, 880, // #2750
+ 16, 63496, 63496, 264, 264, // #2751
+ 7, 63528, 63528, 2280, 2280, // #2752
+ 6, 63544, 63544, 3896, 3896, // #2753
+ 3, 63560, 63560, 136, 136, // #2754
+ 12, 63568, 63568, 192, 192, // #2755
+ 3, 63592, 63592, 136, 136, // #2756
+ 16, 63608, 63608, 264, 264, // #2757
+ 7, 63640, 63640, 2280, 2280, // #2758
+ 16, 63648, 63648, 256, 256, // #2759
+ 3, 63688, 63688, 136, 136, // #2760
+ 6, 63704, 63704, 3896, 3896, // #2761
+ 3, 63720, 63720, 136, 136, // #2762
+ 7, 63728, 63728, 2784, 2784, // #2763
+ 5, 63744, 63744, 880, 880, // #2764
+ 14, 63760, 63760, 704, 704, // #2765
+ 7, 63784, 63784, 2280, 2280, // #2766
+ 14, 63792, 63792, 704, 704, // #2767
+ 7, 63816, 63816, 2280, 2280, // #2768
+ 13, 63824, 63824, 64, 64, // #2769
+ 7, 63848, 63848, 2280, 2280, // #2770
+ 13, 63856, 63856, 64, 64, // #2771
+ 7, 63880, 63880, 2280, 2280, // #2772
+ 12, 63896, 63896, 3352, 3352, // #2773
+ 8, 63928, 63928, 1912, 1912, // #2774
+ 22, 63952, 63952, 576, 576, // #2775
+ 3, 63984, 63984, 688, 688, // #2776
+ 10, 64000, 64000, 160, 160, // #2777
+ 5, 64024, 64024, 4008, 4008, // #2778
+ 22, 64032, 64032, 576, 576, // #2779
+ 3, 64064, 64064, 688, 688, // #2780
+ 6, 64088, 64088, 3896, 3896, // #2781
+ 3, 64104, 64104, 136, 136, // #2782
+ 15, 64112, 64112, 3088, 3088, // #2783
+ 7, 64136, 64136, 2280, 2280, // #2784
+ 22, 64144, 64144, 576, 576, // #2785
+ 3, 64176, 64176, 688, 688, // #2786
+ 6, 64200, 64200, 3896, 3896, // #2787
+ 3, 64216, 64216, 136, 136, // #2788
+ 9, 64224, 64224, 2880, 2880, // #2789
+ 5, 64240, 64240, 880, 880, // #2790
+ 5, 64264, 64264, 3448, 3448, // #2791
+ 5, 64272, 64272, 880, 880, // #2792
+ 7, 64288, 64288, 2784, 2784, // #2793
+ 5, 64304, 64304, 880, 880, // #2794
+ 17, 64328, 64328, 2728, 2728, // #2795
+ 5, 64360, 64360, 4008, 4008, // #2796
+ 11, 64368, 64368, 2176, 2176, // #2797
+ 7, 64392, 64392, 2280, 2280, // #2798
+ 11, 64400, 64400, 2176, 2176, // #2799
+ 7, 64424, 64424, 2280, 2280, // #2800
+ 12, 64440, 64440, 3352, 3352, // #2801
+ 8, 64472, 64472, 1912, 1912, // #2802
+ 17, 64504, 64504, 1864, 1864, // #2803
+ 7, 64536, 64536, 2280, 2280, // #2804
+ 17, 64552, 64552, 1864, 1864, // #2805
+ 7, 64584, 64584, 2280, 2280, // #2806
+ 9, 64592, 64592, 2880, 2880, // #2807
+ 5, 64608, 64608, 880, 880, // #2808
+ 18, 64624, 64624, 2448, 2448, // #2809
+ 7, 64664, 64664, 2280, 2280, // #2810
+ 5, 64680, 64680, 3448, 3448, // #2811
+ 5, 64688, 64688, 880, 880, // #2812
+ 6, 64712, 64712, 1416, 1416, // #2813
+ 5, 64720, 64720, 880, 880, // #2814
+ 6, 64744, 64744, 1416, 1416, // #2815
+ 5, 64752, 64752, 880, 880, // #2816
+ 11, 64768, 64768, 3344, 3344, // #2817
+ 3, 64784, 64784, 688, 688, // #2818
+ 22, 64800, 64800, 576, 576, // #2819
+ 3, 64832, 64832, 688, 688, // #2820
+ 8, 64848, 64848, 80, 80, // #2821
+ 7, 64872, 64872, 2280, 2280, // #2822
+ 22, 64888, 64888, 3048, 3048, // #2823
+ 5, 64912, 64912, 880, 880, // #2824
+ 11, 64936, 64936, 2600, 2600, // #2825
+ 7, 64968, 64968, 2280, 2280, // #2826
+ 11, 64976, 64976, 3344, 3344, // #2827
+ 3, 64992, 64992, 688, 688, // #2828
+ 7, 65008, 65008, 2784, 2784, // #2829
+ 5, 65024, 65024, 880, 880, // #2830
+ 6, 65048, 65048, 3896, 3896, // #2831
+ 3, 65064, 65064, 136, 136, // #2832
+ 6, 65080, 65080, 3896, 3896, // #2833
+ 3, 65096, 65096, 136, 136, // #2834
+ 15, 65104, 65104, 80, 80, // #2835
+ 7, 65128, 65128, 2280, 2280, // #2836
+ 22, 65136, 65136, 576, 576, // #2837
+ 3, 65168, 65168, 688, 688, // #2838
+ 13, 65184, 65184, 0, 0, // #2839
+ 7, 65208, 65208, 2280, 2280, // #2840
+ 12, 65216, 65216, 1024, 1024, // #2841
+ 7, 65240, 65240, 2280, 2280, // #2842
+ 13, 65248, 65248, 0, 0, // #2843
+ 7, 65272, 65272, 2280, 2280, // #2844
+ 12, 65280, 65280, 1024, 1024, // #2845
+ 7, 65304, 65304, 2280, 2280, // #2846
+ 13, 65320, 65320, 840, 840, // #2847
+ 3, 65344, 65344, 688, 688, // #2848
+ 11, 65360, 65360, 3344, 3344, // #2849
+ 3, 65376, 65376, 688, 688, // #2850
+ 22, 65392, 65392, 576, 576, // #2851
+ 3, 65424, 65424, 688, 688, // #2852
+ 6, 65448, 65448, 1416, 1416, // #2853
+ 5, 65456, 65456, 880, 880, // #2854
+ 5, 65480, 65480, 3448, 3448, // #2855
+ 5, 65488, 65488, 880, 880, // #2856
+ 7, 65504, 65504, 2832, 2832, // #2857
+ 9, 65520, 65520, 2016, 2016, // #2858
+ 11, 65536, 65536, 3344, 3344, // #2859
+ 3, 65552, 65552, 688, 688, // #2860
+ 7, 65576, 65576, 3656, 3656, // #2861
+ 9, 65608, 65608, 3832, 3832, // #2862
+ 12, 65632, 65632, 1024, 1024, // #2863
+ 7, 65656, 65656, 2280, 2280, // #2864
+ 5, 65672, 65672, 3448, 3448, // #2865
+ 5, 65680, 65680, 880, 880, // #2866
+ 7, 65704, 65704, 3656, 3656, // #2867
+ 9, 65736, 65736, 3832, 3832, // #2868
+ 5, 65768, 65768, 3448, 3448, // #2869
+ 5, 65776, 65776, 880, 880, // #2870
+ 12, 65792, 65792, 1024, 1024, // #2871
+ 7, 65816, 65816, 2280, 2280, // #2872
+ 5, 65832, 65832, 3448, 3448, // #2873
+ 5, 65840, 65840, 880, 880, // #2874
+ 5, 65864, 65864, 3448, 3448, // #2875
+ 5, 65872, 65872, 880, 880, // #2876
+ 5, 65896, 65896, 3448, 3448, // #2877
+ 5, 65904, 65904, 880, 880, // #2878
+ 15, 65920, 65920, 80, 80, // #2879
+ 7, 65944, 65944, 2280, 2280, // #2880
+ 13, 65960, 65960, 840, 840, // #2881
+ 3, 65984, 65984, 688, 688, // #2882
+ 5, 66008, 66008, 3448, 3448, // #2883
+ 5, 66016, 66016, 880, 880, // #2884
+ 13, 66040, 66040, 840, 840, // #2885
+ 3, 66064, 66064, 688, 688, // #2886
+ 11, 66080, 66080, 3344, 3344, // #2887
+ 3, 66096, 66096, 688, 688, // #2888
+ 9, 66112, 66112, 2880, 2880, // #2889
+ 5, 66128, 66128, 880, 880, // #2890
+ 22, 66144, 66144, 576, 576, // #2891
+ 3, 66176, 66176, 688, 688, // #2892
+ 12, 66192, 66192, 192, 192, // #2893
+ 3, 66216, 66216, 136, 136, // #2894
+ 12, 66224, 66224, 192, 192, // #2895
+ 3, 66248, 66248, 136, 136, // #2896
+ 13, 66264, 66264, 840, 840, // #2897
+ 3, 66288, 66288, 688, 688, // #2898
+ 9, 66312, 66312, 1912, 1912, // #2899
+ 7, 66344, 66344, 2280, 2280, // #2900
+ 22, 66352, 66352, 576, 576, // #2901
+ 3, 66384, 66384, 688, 688, // #2902
+ 21, 66440, 66440, 3576, 3576, // #2903
+ 8, 66472, 66472, 1912, 1912, // #2904
+ 5, 66504, 66504, 456, 456, // #2905
+ 4, 66512, 66512, 1792, 1792, // #2906
+ 12, 66528, 66528, 192, 192, // #2907
+ 3, 66552, 66552, 136, 136, // #2908
+ 22, 66560, 66560, 576, 576, // #2909
+ 3, 66592, 66592, 688, 688, // #2910
+ 7, 66616, 66616, 3656, 3656, // #2911
+ 9, 66632, 66632, 3832, 3832, // #2912
+ 16, 66656, 66656, 256, 256, // #2913
+ 3, 66696, 66696, 136, 136, // #2914
+ 13, 66712, 66712, 840, 840, // #2915
+ 3, 66736, 66736, 688, 688, // #2916
+ 12, 66752, 66752, 192, 192, // #2917
+ 3, 66776, 66776, 136, 136, // #2918
+ 22, 66784, 66784, 576, 576, // #2919
+ 3, 66816, 66816, 688, 688, // #2920
+ 16, 66832, 66832, 2176, 2176, // #2921
+ 7, 66872, 66872, 2280, 2280, // #2922
+ 16, 66880, 66880, 2176, 2176, // #2923
+ 7, 66920, 66920, 2280, 2280, // #2924
+ 17, 66952, 66952, 888, 888, // #2925
+ 7, 66984, 66984, 2280, 2280, // #2926
+ 17, 67016, 67016, 888, 888, // #2927
+ 7, 67048, 67048, 2280, 2280, // #2928
+ 7, 67064, 67064, 3544, 3544, // #2929
+ 9, 67072, 67072, 2016, 2016, // #2930
+ 7, 67088, 67088, 2784, 2784, // #2931
+ 5, 67104, 67104, 880, 880, // #2932
+ 13, 67128, 67128, 840, 840, // #2933
+ 3, 67152, 67152, 688, 688, // #2934
+ 6, 67176, 67176, 1416, 1416, // #2935
+ 5, 67184, 67184, 880, 880, // #2936
+ 5, 67208, 67208, 456, 456, // #2937
+ 4, 67216, 67216, 1792, 1792, // #2938
+ 12, 67232, 67232, 192, 192, // #2939
+ 3, 67256, 67256, 136, 136, // #2940
+ 14, 67264, 67264, 1984, 1984, // #2941
+ 3, 67288, 67288, 2456, 2456, // #2942
+ 13, 67304, 67304, 840, 840, // #2943
+ 3, 67328, 67328, 688, 688, // #2944
+ 9, 67344, 67344, 2880, 2880, // #2945
+ 5, 67360, 67360, 880, 880, // #2946
+ 7, 67384, 67384, 3656, 3656, // #2947
+ 9, 67400, 67400, 3832, 3832, // #2948
+ 9, 67424, 67424, 2880, 2880, // #2949
+ 5, 67440, 67440, 880, 880, // #2950
+ 9, 67456, 67456, 2880, 2880, // #2951
+ 5, 67472, 67472, 880, 880, // #2952
+ 6, 67496, 67496, 1416, 1416, // #2953
+ 5, 67504, 67504, 880, 880, // #2954
+ 11, 67520, 67520, 3344, 3344, // #2955
+ 3, 67536, 67536, 688, 688, // #2956
+ 13, 67560, 67560, 840, 840, // #2957
+ 3, 67584, 67584, 688, 688, // #2958
+ 13, 67608, 67608, 840, 840, // #2959
+ 3, 67632, 67632, 688, 688, // #2960
+ 16, 67648, 67648, 1552, 1552, // #2961
+ 7, 67688, 67688, 2280, 2280, // #2962
+ 6, 67704, 67704, 1416, 1416, // #2963
+ 5, 67712, 67712, 880, 880, // #2964
+ 12, 67728, 67728, 2560, 2560, // #2965
+ 12, 67752, 67752, 1928, 1928, // #2966
+ 16, 67776, 67776, 1552, 1552, // #2967
+ 7, 67816, 67816, 2280, 2280, // #2968
+ 12, 67824, 67824, 2560, 2560, // #2969
+ 12, 67848, 67848, 1928, 1928, // #2970
+ 13, 67872, 67872, 3232, 3232, // #2971
+ 7, 67896, 67896, 2280, 2280, // #2972
+ 13, 67904, 67904, 3232, 3232, // #2973
+ 7, 67928, 67928, 2280, 2280, // #2974
+ 7, 67936, 67936, 2784, 2784, // #2975
+ 5, 67952, 67952, 880, 880, // #2976
+ 6, 67976, 67976, 1416, 1416, // #2977
+ 5, 67984, 67984, 880, 880, // #2978
+ 6, 68008, 68008, 1416, 1416, // #2979
+ 5, 68016, 68016, 880, 880, // #2980
+ 22, 68032, 68032, 576, 576, // #2981
+ 3, 68064, 68064, 688, 688, // #2982
+ 12, 68088, 68088, 1752, 1752, // #2983
+ 8, 68120, 68120, 1912, 1912, // #2984
+ 6, 68152, 68152, 3896, 3896, // #2985
+ 3, 68168, 68168, 136, 136, // #2986
+ 11, 68176, 68176, 3344, 3344, // #2987
+ 3, 68192, 68192, 688, 688, // #2988
+ 22, 68208, 68208, 576, 576, // #2989
+ 3, 68240, 68240, 688, 688, // #2990
+ 7, 68256, 68256, 2784, 2784, // #2991
+ 5, 68272, 68272, 880, 880, // #2992
+ 7, 68288, 68288, 2784, 2784, // #2993
+ 5, 68304, 68304, 880, 880, // #2994
+ 7, 68328, 68328, 3656, 3656, // #2995
+ 9, 68360, 68360, 3832, 3832, // #2996
+ 16, 68384, 68384, 256, 256, // #2997
+ 3, 68424, 68424, 136, 136, // #2998
+ 11, 68432, 68432, 3344, 3344, // #2999
+ 3, 68448, 68448, 688, 688, // #3000
+ 16, 68464, 68464, 256, 256, // #3001
+ 3, 68504, 68504, 136, 136, // #3002
+ 6, 68520, 68520, 3896, 3896, // #3003
+ 3, 68536, 68536, 136, 136, // #3004
+ 22, 68552, 68552, 3048, 3048, // #3005
+ 5, 68576, 68576, 880, 880, // #3006
+ 11, 68592, 68592, 3344, 3344, // #3007
+ 3, 68608, 68608, 688, 688, // #3008
+ 13, 68632, 68632, 840, 840, // #3009
+ 3, 68656, 68656, 688, 688, // #3010
+ 5, 68680, 68680, 456, 456, // #3011
+ 4, 68688, 68688, 1792, 1792, // #3012
+ 12, 68712, 68712, 1752, 1752, // #3013
+ 8, 68744, 68744, 1912, 1912, // #3014
+ 6, 68776, 68776, 1416, 1416, // #3015
+ 5, 68784, 68784, 880, 880, // #3016
+ 12, 68800, 68800, 192, 192, // #3017
+ 3, 68824, 68824, 136, 136, // #3018
+ 12, 68832, 68832, 192, 192, // #3019
+ 3, 68856, 68856, 136, 136, // #3020
+ 6, 68872, 68872, 1416, 1416, // #3021
+ 5, 68880, 68880, 880, 880, // #3022
+ 6, 68904, 68904, 1416, 1416, // #3023
+ 5, 68912, 68912, 880, 880, // #3024
+ 12, 68928, 68928, 192, 192, // #3025
+ 3, 68952, 68952, 136, 136, // #3026
+ 12, 68960, 68960, 384, 384, // #3027
+ 7, 68984, 68984, 2280, 2280, // #3028
+ 12, 68992, 68992, 384, 384, // #3029
+ 7, 69016, 69016, 2280, 2280, // #3030
+ 22, 69024, 69024, 576, 576, // #3031
+ 3, 69056, 69056, 688, 688, // #3032
+ 8, 69080, 69080, 2632, 2632, // #3033
+ 3, 69104, 69104, 2352, 2352, // #3034
+ 23, 69128, 69128, 792, 792, // #3035
+ 3, 69160, 69160, 2456, 2456, // #3036
+ 15, 69176, 69176, 456, 456, // #3037
+ 7, 69208, 69208, 2280, 2280, // #3038
+ 15, 69224, 69224, 456, 456, // #3039
+ 7, 69256, 69256, 2280, 2280, // #3040
+ 13, 69272, 69272, 840, 840, // #3041
+ 3, 69296, 69296, 688, 688, // #3042
+ 9, 69312, 69312, 2880, 2880, // #3043
+ 5, 69328, 69328, 880, 880, // #3044
+ 12, 69344, 69344, 192, 192, // #3045
+ 3, 69368, 69368, 136, 136, // #3046
+ 9, 69384, 69384, 1032, 1032, // #3047
+ 10, 69416, 69416, 600, 600, // #3048
+ 6, 69448, 69448, 1416, 1416, // #3049
+ 5, 69456, 69456, 880, 880, // #3050
+ 22, 69472, 69472, 576, 576, // #3051
+ 3, 69504, 69504, 688, 688, // #3052
+ 13, 69520, 69520, 2176, 2176, // #3053
+ 7, 69544, 69544, 2280, 2280, // #3054
+ 12, 69552, 69552, 192, 192, // #3055
+ 3, 69576, 69576, 136, 136, // #3056
+ 13, 69584, 69584, 2176, 2176, // #3057
+ 7, 69608, 69608, 2280, 2280, // #3058
+ 22, 69624, 69624, 3048, 3048, // #3059
+ 5, 69648, 69648, 880, 880, // #3060
+ 7, 69664, 69664, 2784, 2784, // #3061
+ 5, 69680, 69680, 880, 880, // #3062
+ 9, 69696, 69696, 656, 656, // #3063
+ 7, 69720, 69720, 2280, 2280, // #3064
+ 12, 69728, 69728, 192, 192, // #3065
+ 3, 69752, 69752, 136, 136, // #3066
+ 6, 69768, 69768, 1416, 1416, // #3067
+ 5, 69776, 69776, 880, 880, // #3068
+ 12, 69792, 69792, 192, 192, // #3069
+ 3, 69816, 69816, 136, 136, // #3070
+ 27, 69824, 69824, 768, 768, // #3071
+ 7, 69864, 69864, 2280, 2280, // #3072
+ 7, 69872, 69872, 2784, 2784, // #3073
+ 5, 69888, 69888, 880, 880, // #3074
+ 12, 69904, 69904, 192, 192, // #3075
+ 3, 69928, 69928, 136, 136, // #3076
+ 12, 69936, 69936, 192, 192, // #3077
+ 3, 69960, 69960, 136, 136, // #3078
+ 5, 69976, 69976, 456, 456, // #3079
+ 4, 69984, 69984, 1792, 1792, // #3080
+ 16, 70008, 70008, 264, 264, // #3081
+ 7, 70040, 70040, 2280, 2280, // #3082
+ 12, 70048, 70048, 192, 192, // #3083
+ 3, 70072, 70072, 136, 136, // #3084
+ 16, 70080, 70080, 256, 256, // #3085
+ 3, 70120, 70120, 136, 136, // #3086
+ 16, 70136, 70136, 264, 264, // #3087
+ 7, 70168, 70168, 2280, 2280, // #3088
+ 16, 70176, 70176, 256, 256, // #3089
+ 3, 70216, 70216, 136, 136, // #3090
+ 12, 70224, 70224, 192, 192, // #3091
+ 3, 70248, 70248, 136, 136, // #3092
+ 7, 70264, 70264, 3656, 3656, // #3093
+ 9, 70280, 70280, 3832, 3832, // #3094
+ 6, 70312, 70312, 3896, 3896, // #3095
+ 3, 70328, 70328, 136, 136, // #3096
+ 12, 70344, 70344, 1752, 1752, // #3097
+ 8, 70376, 70376, 1912, 1912, // #3098
+ 11, 70400, 70400, 3344, 3344, // #3099
+ 3, 70416, 70416, 688, 688, // #3100
+ 11, 70440, 70440, 2600, 2600, // #3101
+ 7, 70472, 70472, 2280, 2280, // #3102
+ 12, 70536, 70536, 952, 952, // #3103
+ 7, 70568, 70568, 2280, 2280, // #3104
+ 18, 70576, 70576, 2448, 2448, // #3105
+ 7, 70616, 70616, 2280, 2280, // #3106
+ 6, 70632, 70632, 3896, 3896, // #3107
+ 3, 70648, 70648, 136, 136, // #3108
+ 12, 70664, 70664, 952, 952, // #3109
+ 7, 70696, 70696, 2280, 2280, // #3110
+ 13, 70712, 70712, 840, 840, // #3111
+ 3, 70736, 70736, 688, 688, // #3112
+ 6, 70760, 70760, 3896, 3896, // #3113
+ 3, 70776, 70776, 136, 136, // #3114
+ 15, 70784, 70784, 3088, 3088, // #3115
+ 7, 70808, 70808, 2280, 2280, // #3116
+ 13, 70824, 70824, 840, 840, // #3117
+ 3, 70848, 70848, 688, 688, // #3118
+ 6, 70872, 70872, 1416, 1416, // #3119
+ 5, 70880, 70880, 880, 880, // #3120
+ 7, 70904, 70904, 3656, 3656, // #3121
+ 9, 70920, 70920, 3832, 3832, // #3122
+ 7, 70952, 70952, 3656, 3656, // #3123
+ 9, 70984, 70984, 3832, 3832, // #3124
+ 13, 71016, 71016, 840, 840, // #3125
+ 3, 71040, 71040, 688, 688, // #3126
+ 16, 71056, 71056, 256, 256, // #3127
+ 3, 71096, 71096, 136, 136, // #3128
+ 9, 71104, 71104, 1184, 1184, // #3129
+ 7, 71128, 71128, 2280, 2280, // #3130
+ 22, 71136, 71136, 576, 576, // #3131
+ 3, 71168, 71168, 688, 688, // #3132
+ 9, 71184, 71184, 1184, 1184, // #3133
+ 7, 71208, 71208, 2280, 2280, // #3134
+ 9, 71216, 71216, 1184, 1184, // #3135
+ 7, 71240, 71240, 2280, 2280, // #3136
+ 12, 71248, 71248, 192, 192, // #3137
+ 3, 71272, 71272, 136, 136, // #3138
+ 9, 71280, 71280, 1184, 1184, // #3139
+ 7, 71304, 71304, 2280, 2280, // #3140
+ 13, 71320, 71320, 840, 840, // #3141
+ 3, 71344, 71344, 688, 688, // #3142
+ 6, 71368, 71368, 3896, 3896, // #3143
+ 3, 71384, 71384, 136, 136, // #3144
+ 9, 71392, 71392, 2880, 2880, // #3145
+ 5, 71408, 71408, 880, 880, // #3146
+ 12, 71424, 71424, 1024, 1024, // #3147
+ 7, 71448, 71448, 2280, 2280, // #3148
+ 12, 71456, 71456, 1024, 1024, // #3149
+ 7, 71480, 71480, 2280, 2280, // #3150
+ 13, 71496, 71496, 840, 840, // #3151
+ 3, 71520, 71520, 688, 688, // #3152
+ 14, 71536, 71536, 2160, 2160, // #3153
+ 3, 71552, 71552, 688, 688, // #3154
+ 6, 71576, 71576, 1416, 1416, // #3155
+ 5, 71584, 71584, 880, 880, // #3156
+ 12, 71600, 71600, 1024, 1024, // #3157
+ 7, 71624, 71624, 2280, 2280, // #3158
+ 22, 71640, 71640, 3048, 3048, // #3159
+ 5, 71664, 71664, 880, 880, // #3160
+ 12, 71680, 71680, 1024, 1024, // #3161
+ 7, 71704, 71704, 2280, 2280, // #3162
+ 22, 71720, 71720, 3048, 3048, // #3163
+ 5, 71744, 71744, 880, 880, // #3164
+ 22, 71768, 71768, 3048, 3048, // #3165
+ 5, 71792, 71792, 880, 880, // #3166
+ 5, 71816, 71816, 3448, 3448, // #3167
+ 5, 71824, 71824, 880, 880, // #3168
+ 6, 71848, 71848, 3896, 3896, // #3169
+ 3, 71864, 71864, 136, 136, // #3170
+ 24, 71872, 71872, 2736, 2736, // #3171
+ 8, 71912, 71912, 1912, 1912, // #3172
+ 11, 71936, 71936, 3344, 3344, // #3173
+ 3, 71952, 71952, 688, 688, // #3174
+ 9, 71968, 71968, 3376, 3376, // #3175
+ 10, 71992, 71992, 600, 600, // #3176
+ 14, 72016, 72016, 3488, 3488, // #3177
+ 7, 72040, 72040, 2280, 2280, // #3178
+ 14, 72048, 72048, 3488, 3488, // #3179
+ 7, 72072, 72072, 2280, 2280, // #3180
+ 14, 72080, 72080, 704, 704, // #3181
+ 7, 72104, 72104, 2280, 2280, // #3182
+ 16, 72112, 72112, 256, 256, // #3183
+ 3, 72152, 72152, 136, 136, // #3184
+ 9, 72160, 72160, 656, 656, // #3185
+ 9, 72176, 72176, 2016, 2016, // #3186
+ 11, 72192, 72192, 3344, 3344, // #3187
+ 3, 72208, 72208, 688, 688, // #3188
+ 14, 72224, 72224, 704, 704, // #3189
+ 7, 72248, 72248, 2280, 2280, // #3190
+ 21, 72264, 72264, 3576, 3576, // #3191
+ 8, 72296, 72296, 1912, 1912, // #3192
+ 6, 72328, 72328, 1416, 1416, // #3193
+ 5, 72336, 72336, 880, 880, // #3194
+ 22, 72352, 72352, 576, 576, // #3195
+ 3, 72384, 72384, 688, 688, // #3196
+ 13, 72400, 72400, 3232, 3232, // #3197
+ 7, 72424, 72424, 2280, 2280, // #3198
+ 22, 72432, 72432, 576, 576, // #3199
+ 3, 72464, 72464, 688, 688, // #3200
+ 28, 72512, 72512, 2096, 2096, // #3201
+ 7, 72552, 72552, 2280, 2280, // #3202
+ 13, 72560, 72560, 3232, 3232, // #3203
+ 7, 72584, 72584, 2280, 2280, // #3204
+ 6, 72600, 72600, 1416, 1416, // #3205
+ 5, 72608, 72608, 880, 880, // #3206
+ 6, 72632, 72632, 3896, 3896, // #3207
+ 3, 72648, 72648, 136, 136, // #3208
+ 13, 72664, 72664, 840, 840, // #3209
+ 3, 72688, 72688, 688, 688, // #3210
+ 22, 72712, 72712, 3048, 3048, // #3211
+ 5, 72736, 72736, 880, 880, // #3212
+ 22, 72752, 72752, 576, 576, // #3213
+ 3, 72784, 72784, 688, 688, // #3214
+ 11, 72800, 72800, 1296, 1296, // #3215
+ 9, 72816, 72816, 2016, 2016, // #3216
+ 9, 72832, 72832, 1392, 1392, // #3217
+ 5, 72856, 72856, 4008, 4008, // #3218
+ 5, 72872, 72872, 3448, 3448, // #3219
+ 5, 72880, 72880, 880, 880, // #3220
+ 22, 72904, 72904, 3048, 3048, // #3221
+ 5, 72928, 72928, 880, 880, // #3222
+ 22, 72952, 72952, 3048, 3048, // #3223
+ 5, 72976, 72976, 880, 880, // #3224
+ 7, 73000, 73000, 3656, 3656, // #3225
+ 9, 73032, 73032, 3832, 3832, // #3226
+ 6, 73064, 73064, 3896, 3896, // #3227
+ 3, 73080, 73080, 136, 136, // #3228
+ 7, 73096, 73096, 3656, 3656, // #3229
+ 9, 73160, 73160, 3832, 3832, // #3230
+ 12, 73184, 73184, 192, 192, // #3231
+ 3, 73208, 73208, 136, 136, // #3232
+ 7, 73224, 73224, 3656, 3656, // #3233
+ 9, 73288, 73288, 3832, 3832, // #3234
+ 5, 73320, 73320, 3448, 3448, // #3235
+ 5, 73328, 73328, 880, 880, // #3236
+ 9, 73352, 73352, 56, 56, // #3237
+ 5, 73384, 73384, 4008, 4008, // #3238
+ 22, 73400, 73400, 3048, 3048, // #3239
+ 5, 73424, 73424, 880, 880, // #3240
+ 22, 73448, 73448, 3048, 3048, // #3241
+ 5, 73472, 73472, 880, 880, // #3242
+ 12, 73488, 73488, 192, 192, // #3243
+ 3, 73512, 73512, 136, 136, // #3244
+ 12, 73520, 73520, 384, 384, // #3245
+ 7, 73544, 73544, 2280, 2280, // #3246
+ 6, 73560, 73560, 3896, 3896, // #3247
+ 3, 73576, 73576, 136, 136, // #3248
+ 9, 73584, 73584, 2240, 2240, // #3249
+ 5, 73608, 73608, 4008, 4008, // #3250
+ 12, 73616, 73616, 384, 384, // #3251
+ 7, 73640, 73640, 2280, 2280, // #3252
+ 11, 73648, 73648, 3344, 3344, // #3253
+ 3, 73664, 73664, 688, 688, // #3254
+ 14, 73688, 73688, 2088, 2088, // #3255
+ 12, 73720, 73720, 1928, 1928, // #3256
+ 6, 73752, 73752, 1416, 1416, // #3257
+ 5, 73760, 73760, 880, 880, // #3258
+ 6, 73784, 73784, 3896, 3896, // #3259
+ 3, 73800, 73800, 136, 136, // #3260
+ 13, 73808, 73808, 3744, 3744, // #3261
+ 7, 73832, 73832, 2280, 2280, // #3262
+ 11, 73840, 73840, 3344, 3344, // #3263
+ 3, 73856, 73856, 688, 688, // #3264
+ 13, 73880, 73880, 840, 840, // #3265
+ 3, 73904, 73904, 688, 688, // #3266
+ 13, 73920, 73920, 3744, 3744, // #3267
+ 7, 73944, 73944, 2280, 2280, // #3268
+ 22, 73960, 73960, 3048, 3048, // #3269
+ 5, 73984, 73984, 880, 880, // #3270
+ 22, 74000, 74000, 576, 576, // #3271
+ 3, 74032, 74032, 688, 688, // #3272
+ 16, 74048, 74048, 256, 256, // #3273
+ 3, 74088, 74088, 136, 136, // #3274
+ 9, 74096, 74096, 2880, 2880, // #3275
+ 5, 74112, 74112, 880, 880, // #3276
+ 22, 74128, 74128, 576, 576, // #3277
+ 3, 74160, 74160, 688, 688, // #3278
+ 7, 74176, 74176, 2784, 2784, // #3279
+ 5, 74192, 74192, 880, 880, // #3280
+ 19, 74216, 74216, 2728, 2728, // #3281
+ 7, 74240, 74240, 736, 736, // #3282
+ 15, 74312, 74312, 3448, 3448, // #3283
+ 8, 74344, 74344, 1912, 1912, // #3284
+ 11, 74368, 74368, 3344, 3344, // #3285
+ 3, 74384, 74384, 688, 688, // #3286
+ 6, 74408, 74408, 3896, 3896, // #3287
+ 3, 74424, 74424, 136, 136, // #3288
+ 22, 74432, 74432, 576, 576, // #3289
+ 3, 74464, 74464, 688, 688, // #3290
+ 12, 74480, 74480, 192, 192, // #3291
+ 3, 74504, 74504, 136, 136, // #3292
+ 7, 74512, 74512, 2784, 2784, // #3293
+ 5, 74528, 74528, 880, 880, // #3294
+ 6, 74544, 74544, 2560, 2560, // #3295
+ 7, 74568, 74568, 2280, 2280, // #3296
+ 12, 74576, 74576, 384, 384, // #3297
+ 7, 74600, 74600, 2280, 2280, // #3298
+ 12, 74608, 74608, 384, 384, // #3299
+ 7, 74632, 74632, 2280, 2280, // #3300
+ 12, 74640, 74640, 192, 192, // #3301
+ 3, 74664, 74664, 136, 136, // #3302
+ 13, 74680, 74680, 840, 840, // #3303
+ 3, 74704, 74704, 688, 688, // #3304
+ 12, 74728, 74728, 1752, 1752, // #3305
+ 8, 74760, 74760, 1912, 1912, // #3306
+ 13, 74792, 74792, 840, 840, // #3307
+ 3, 74816, 74816, 688, 688, // #3308
+ 17, 74840, 74840, 3992, 3992, // #3309
+ 9, 74872, 74872, 2648, 2648, // #3310
+ 13, 74896, 74896, 1632, 1632, // #3311
+ 7, 74912, 74912, 736, 736, // #3312
+ 9, 74928, 74928, 2880, 2880, // #3313
+ 5, 74944, 74944, 880, 880, // #3314
+ 6, 74968, 74968, 3896, 3896, // #3315
+ 3, 74984, 74984, 136, 136, // #3316
+ 22, 75000, 75000, 3048, 3048, // #3317
+ 5, 75024, 75024, 880, 880, // #3318
+ 25, 75048, 75048, 2776, 2776, // #3319
+ 8, 75096, 75096, 1912, 1912, // #3320
+ 22, 75128, 75128, 3048, 3048, // #3321
+ 5, 75152, 75152, 880, 880, // #3322
+ 22, 75176, 75176, 3048, 3048, // #3323
+ 5, 75200, 75200, 880, 880, // #3324
+ 26, 75224, 75224, 1416, 1416, // #3325
+ 4, 75272, 75272, 2104, 2104, // #3326
+ 11, 75280, 75280, 3344, 3344, // #3327
+ 3, 75296, 75296, 688, 688, // #3328
+ 6, 75320, 75320, 3896, 3896, // #3329
+ 3, 75336, 75336, 136, 136, // #3330
+ 9, 75344, 75344, 2880, 2880, // #3331
+ 5, 75360, 75360, 880, 880, // #3332
+ 11, 75376, 75376, 1936, 1936, // #3333
+ 9, 75392, 75392, 2016, 2016, // #3334
+ 22, 75416, 75416, 3048, 3048, // #3335
+ 5, 75440, 75440, 880, 880, // #3336
+ 15, 75464, 75464, 840, 840, // #3337
+ 7, 75496, 75496, 2280, 2280, // #3338
+ 22, 75512, 75512, 3048, 3048, // #3339
+ 5, 75536, 75536, 880, 880, // #3340
+ 22, 75560, 75560, 3048, 3048, // #3341
+ 5, 75584, 75584, 880, 880, // #3342
+ 22, 75608, 75608, 3048, 3048, // #3343
+ 5, 75632, 75632, 880, 880, // #3344
+ 8, 75648, 75648, 2192, 2192, // #3345
+ 7, 75672, 75672, 2280, 2280, // #3346
+ 11, 75680, 75680, 3344, 3344, // #3347
+ 3, 75696, 75696, 688, 688, // #3348
+ 9, 75720, 75720, 120, 120, // #3349
+ 7, 75744, 75744, 4064, 4064, // #3350
+ 22, 75760, 75760, 576, 576, // #3351
+ 3, 75792, 75792, 688, 688, // #3352
+ 6, 75816, 75816, 3896, 3896, // #3353
+ 3, 75832, 75832, 136, 136, // #3354
+ 13, 75848, 75848, 840, 840, // #3355
+ 3, 75872, 75872, 688, 688, // #3356
+ 13, 75896, 75896, 840, 840, // #3357
+ 3, 75920, 75920, 688, 688, // #3358
+ 6, 75944, 75944, 3896, 3896, // #3359
+ 3, 75960, 75960, 136, 136, // #3360
+ 9, 75968, 75968, 2880, 2880, // #3361
+ 5, 75984, 75984, 880, 880, // #3362
+ 5, 76008, 76008, 456, 456, // #3363
+ 4, 76016, 76016, 1792, 1792, // #3364
+ 6, 76040, 76040, 1416, 1416, // #3365
+ 5, 76048, 76048, 880, 880, // #3366
+ 15, 76104, 76104, 3448, 3448, // #3367
+ 8, 76136, 76136, 1912, 1912, // #3368
+ 11, 76160, 76160, 3344, 3344, // #3369
+ 3, 76176, 76176, 688, 688, // #3370
+ 9, 76192, 76192, 2880, 2880, // #3371
+ 5, 76208, 76208, 880, 880, // #3372
+ 7, 76232, 76232, 3656, 3656, // #3373
+ 9, 76296, 76296, 3832, 3832, // #3374
+ 7, 76328, 76328, 3656, 3656, // #3375
+ 9, 76360, 76360, 3832, 3832, // #3376
+ 20, 76384, 76384, 1248, 1248, // #3377
+ 7, 76416, 76416, 736, 736, // #3378
+ 5, 76440, 76440, 456, 456, // #3379
+ 4, 76448, 76448, 1792, 1792, // #3380
+ 5, 76464, 76464, 288, 288, // #3381
+ 7, 76488, 76488, 2280, 2280, // #3382
+ 5, 76504, 76504, 3448, 3448, // #3383
+ 5, 76512, 76512, 880, 880, // #3384
+ 13, 76536, 76536, 840, 840, // #3385
+ 3, 76560, 76560, 688, 688, // #3386
+ 5, 76584, 76584, 3448, 3448, // #3387
+ 5, 76592, 76592, 880, 880, // #3388
+ 10, 76608, 76608, 832, 832, // #3389
+ 8, 76632, 76632, 1912, 1912, // #3390
+ 13, 76664, 76664, 840, 840, // #3391
+ 3, 76688, 76688, 688, 688, // #3392
+ 7, 76712, 76712, 3656, 3656, // #3393
+ 9, 76744, 76744, 3832, 3832, // #3394
+ 6, 76776, 76776, 3896, 3896, // #3395
+ 3, 76792, 76792, 136, 136, // #3396
+ 9, 76800, 76800, 1184, 1184, // #3397
+ 7, 76824, 76824, 2280, 2280, // #3398
+ 13, 76840, 76840, 840, 840, // #3399
+ 3, 76864, 76864, 688, 688, // #3400
+ 10, 76880, 76880, 928, 928, // #3401
+ 7, 76904, 76904, 2280, 2280, // #3402
+ 7, 76912, 76912, 160, 160, // #3403
+ 10, 76936, 76936, 600, 600, // #3404
+ 22, 76968, 76968, 3048, 3048, // #3405
+ 5, 76992, 76992, 880, 880, // #3406
+ 22, 77016, 77016, 3048, 3048, // #3407
+ 5, 77040, 77040, 880, 880, // #3408
+ 6, 77064, 77064, 3896, 3896, // #3409
+ 3, 77080, 77080, 136, 136, // #3410
+ 12, 77088, 77088, 384, 384, // #3411
+ 7, 77112, 77112, 2280, 2280, // #3412
+ 15, 77128, 77128, 2488, 2488, // #3413
+ 7, 77160, 77160, 2280, 2280, // #3414
+ 13, 77176, 77176, 840, 840, // #3415
+ 3, 77200, 77200, 688, 688, // #3416
+ 5, 77224, 77224, 456, 456, // #3417
+ 4, 77232, 77232, 1792, 1792, // #3418
+ 12, 77248, 77248, 384, 384, // #3419
+ 7, 77272, 77272, 2280, 2280, // #3420
+ 15, 77320, 77320, 2488, 2488, // #3421
+ 7, 77352, 77352, 2280, 2280, // #3422
+ 6, 77368, 77368, 3896, 3896, // #3423
+ 3, 77384, 77384, 136, 136, // #3424
+ 5, 77400, 77400, 3448, 3448, // #3425
+ 5, 77408, 77408, 880, 880, // #3426
+ 7, 77424, 77424, 2784, 2784, // #3427
+ 5, 77440, 77440, 880, 880, // #3428
+ 5, 77464, 77464, 456, 456, // #3429
+ 4, 77472, 77472, 1792, 1792, // #3430
+ 22, 77488, 77488, 576, 576, // #3431
+ 3, 77520, 77520, 688, 688, // #3432
+ 7, 77536, 77536, 2784, 2784, // #3433
+ 5, 77552, 77552, 880, 880, // #3434
+ 15, 77576, 77576, 456, 456, // #3435
+ 7, 77608, 77608, 2280, 2280, // #3436
+ 7, 77616, 77616, 4016, 4016, // #3437
+ 7, 77640, 77640, 2280, 2280, // #3438
+ 6, 77656, 77656, 1416, 1416, // #3439
+ 5, 77664, 77664, 880, 880, // #3440
+ 13, 77688, 77688, 840, 840, // #3441
+ 3, 77712, 77712, 688, 688, // #3442
+ 12, 77728, 77728, 2240, 2240, // #3443
+ 7, 77752, 77752, 2280, 2280, // #3444
+ 12, 77760, 77760, 2240, 2240, // #3445
+ 7, 77784, 77784, 2280, 2280, // #3446
+ 6, 77800, 77800, 1416, 1416, // #3447
+ 5, 77808, 77808, 880, 880, // #3448
+ 22, 77824, 77824, 576, 576, // #3449
+ 3, 77856, 77856, 688, 688, // #3450
+ 13, 77872, 77872, 3168, 3168, // #3451
+ 8, 77896, 77896, 1912, 1912, // #3452
+ 7, 77920, 77920, 2784, 2784, // #3453
+ 5, 77936, 77936, 880, 880, // #3454
+ 7, 77952, 77952, 2784, 2784, // #3455
+ 5, 77968, 77968, 880, 880, // #3456
+ 13, 77992, 77992, 2520, 2520, // #3457
+ 8, 78024, 78024, 1912, 1912, // #3458
+ 6, 78056, 78056, 1416, 1416, // #3459
+ 5, 78064, 78064, 880, 880, // #3460
+ 10, 78088, 78088, 360, 360, // #3461
+ 7, 78120, 78120, 2280, 2280, // #3462
+ 7, 78128, 78128, 2784, 2784, // #3463
+ 5, 78144, 78144, 880, 880, // #3464
+ 15, 78160, 78160, 80, 80, // #3465
+ 7, 78184, 78184, 2280, 2280, // #3466
+ 17, 78200, 78200, 3624, 3624, // #3467
+ 8, 78224, 78224, 3472, 3472, // #3468
+ 27, 78240, 78240, 2256, 2256, // #3469
+ 4, 78280, 78280, 2104, 2104, // #3470
+ 22, 78288, 78288, 576, 576, // #3471
+ 3, 78320, 78320, 688, 688, // #3472
+ 13, 78336, 78336, 3744, 3744, // #3473
+ 7, 78360, 78360, 2280, 2280, // #3474
+ 13, 78368, 78368, 3744, 3744, // #3475
+ 7, 78392, 78392, 2280, 2280, // #3476
+ 6, 78408, 78408, 3896, 3896, // #3477
+ 3, 78424, 78424, 136, 136, // #3478
+ 11, 78432, 78432, 3344, 3344, // #3479
+ 3, 78448, 78448, 688, 688, // #3480
+ 22, 78464, 78464, 576, 576, // #3481
+ 3, 78496, 78496, 688, 688, // #3482
+ 13, 78512, 78512, 2176, 2176, // #3483
+ 7, 78536, 78536, 2280, 2280, // #3484
+ 13, 78552, 78552, 840, 840, // #3485
+ 3, 78576, 78576, 688, 688, // #3486
+ 13, 78592, 78592, 2176, 2176, // #3487
+ 7, 78616, 78616, 2280, 2280, // #3488
+ 6, 78632, 78632, 3896, 3896, // #3489
+ 3, 78648, 78648, 136, 136, // #3490
+ 13, 78664, 78664, 840, 840, // #3491
+ 3, 78688, 78688, 688, 688, // #3492
+ 12, 78728, 78728, 952, 952, // #3493
+ 7, 78760, 78760, 2280, 2280, // #3494
+ 22, 78768, 78768, 576, 576, // #3495
+ 3, 78800, 78800, 688, 688, // #3496
+ 26, 78824, 78824, 1416, 1416, // #3497
+ 4, 78872, 78872, 2104, 2104, // #3498
+ 6, 78888, 78888, 3896, 3896, // #3499
+ 3, 78904, 78904, 136, 136, // #3500
+ 6, 78920, 78920, 3896, 3896, // #3501
+ 3, 78936, 78936, 136, 136, // #3502
+ 22, 78952, 78952, 3048, 3048, // #3503
+ 5, 78976, 78976, 880, 880, // #3504
+ 14, 79000, 79000, 1048, 1048, // #3505
+ 3, 79032, 79032, 2456, 2456, // #3506
+ 5, 79048, 79048, 3448, 3448, // #3507
+ 5, 79056, 79056, 880, 880, // #3508
+ 13, 79072, 79072, 3744, 3744, // #3509
+ 7, 79096, 79096, 2280, 2280, // #3510
+ 13, 79104, 79104, 3744, 3744, // #3511
+ 7, 79128, 79128, 2280, 2280, // #3512
+ 7, 79136, 79136, 2784, 2784, // #3513
+ 5, 79152, 79152, 880, 880, // #3514
+ 16, 79176, 79176, 888, 888, // #3515
+ 7, 79200, 79200, 736, 736, // #3516
+ 13, 79224, 79224, 840, 840, // #3517
+ 3, 79248, 79248, 688, 688, // #3518
+ 13, 79272, 79272, 840, 840, // #3519
+ 3, 79296, 79296, 688, 688, // #3520
+ 11, 79312, 79312, 3344, 3344, // #3521
+ 3, 79328, 79328, 688, 688, // #3522
+ 22, 79352, 79352, 3048, 3048, // #3523
+ 5, 79376, 79376, 880, 880, // #3524
+ 8, 79400, 79400, 2152, 2152, // #3525
+ 3, 79432, 79432, 2456, 2456, // #3526
+ 22, 79448, 79448, 3048, 3048, // #3527
+ 5, 79472, 79472, 880, 880, // #3528
+ 20, 79488, 79488, 3504, 3504, // #3529
+ 9, 79520, 79520, 2016, 2016, // #3530
+ 26, 79544, 79544, 1416, 1416, // #3531
+ 4, 79592, 79592, 2104, 2104, // #3532
+ 5, 79608, 79608, 3448, 3448, // #3533
+ 5, 79616, 79616, 880, 880, // #3534
+ 6, 79632, 79632, 3024, 3024, // #3535
+ 7, 79656, 79656, 2280, 2280, // #3536
+ 13, 79672, 79672, 840, 840, // #3537
+ 3, 79696, 79696, 688, 688, // #3538
+ 7, 79712, 79712, 1824, 1824, // #3539
+ 7, 79736, 79736, 2280, 2280, // #3540
+ 11, 79752, 79752, 3608, 3608, // #3541
+ 10, 79784, 79784, 600, 600, // #3542
+ 8, 79808, 79808, 384, 384, // #3543
+ 9, 79824, 79824, 2016, 2016, // #3544
+ 11, 79840, 79840, 3344, 3344, // #3545
+ 3, 79856, 79856, 688, 688, // #3546
+ 22, 79872, 79872, 576, 576, // #3547
+ 3, 79904, 79904, 688, 688, // #3548
+ 22, 79928, 79928, 3048, 3048, // #3549
+ 5, 79952, 79952, 880, 880, // #3550
+ 13, 79976, 79976, 840, 840, // #3551
+ 3, 80000, 80000, 688, 688, // #3552
+ 7, 80016, 80016, 2784, 2784, // #3553
+ 5, 80032, 80032, 880, 880, // #3554
+ 26, 80048, 80048, 1120, 1120, // #3555
+ 8, 80088, 80088, 1912, 1912, // #3556
+ 7, 80112, 80112, 2784, 2784, // #3557
+ 5, 80128, 80128, 880, 880, // #3558
+ 14, 80144, 80144, 1024, 1024, // #3559
+ 7, 80168, 80168, 2280, 2280, // #3560
+ 7, 80176, 80176, 480, 480, // #3561
+ 7, 80200, 80200, 2280, 2280, // #3562
+ 14, 80208, 80208, 1024, 1024, // #3563
+ 7, 80232, 80232, 2280, 2280, // #3564
+ 9, 80248, 80248, 3816, 3816, // #3565
+ 10, 80280, 80280, 600, 600, // #3566
+ 5, 80312, 80312, 456, 456, // #3567
+ 4, 80320, 80320, 1792, 1792, // #3568
+ 8, 80344, 80344, 2632, 2632, // #3569
+ 9, 80392, 80392, 3832, 3832, // #3570
+ 7, 80416, 80416, 2784, 2784, // #3571
+ 5, 80432, 80432, 880, 880, // #3572
+ 16, 80448, 80448, 3728, 3728, // #3573
+ 7, 80488, 80488, 2280, 2280, // #3574
+ 7, 80496, 80496, 2784, 2784, // #3575
+ 5, 80512, 80512, 880, 880, // #3576
+ 6, 80536, 80536, 3896, 3896, // #3577
+ 3, 80552, 80552, 136, 136, // #3578
+ 13, 80568, 80568, 840, 840, // #3579
+ 3, 80592, 80592, 688, 688, // #3580
+ 7, 80616, 80616, 3656, 3656, // #3581
+ 9, 80648, 80648, 3832, 3832, // #3582
+ 6, 80680, 80680, 3896, 3896, // #3583
+ 3, 80696, 80696, 136, 136, // #3584
+ 7, 80712, 80712, 3656, 3656, // #3585
+ 9, 80776, 80776, 3832, 3832, // #3586
+ 11, 80800, 80800, 3344, 3344, // #3587
+ 3, 80816, 80816, 688, 688, // #3588
+ 7, 80832, 80832, 2784, 2784, // #3589
+ 5, 80848, 80848, 880, 880, // #3590
+ 5, 80872, 80872, 456, 456, // #3591
+ 4, 80880, 80880, 1792, 1792, // #3592
+ 11, 80896, 80896, 2192, 2192, // #3593
+ 8, 80920, 80920, 1912, 1912, // #3594
+ 13, 80952, 80952, 840, 840, // #3595
+ 3, 80976, 80976, 688, 688, // #3596
+ 6, 81000, 81000, 3896, 3896, // #3597
+ 3, 81016, 81016, 136, 136, // #3598
+ 14, 81032, 81032, 1048, 1048, // #3599
+ 3, 81064, 81064, 2456, 2456, // #3600
+ 6, 81080, 81080, 3896, 3896, // #3601
+ 3, 81096, 81096, 136, 136, // #3602
+ 7, 81104, 81104, 2784, 2784, // #3603
+ 5, 81120, 81120, 880, 880, // #3604
+ 9, 81136, 81136, 2880, 2880, // #3605
+ 5, 81152, 81152, 880, 880, // #3606
+ 5, 81176, 81176, 456, 456, // #3607
+ 4, 81184, 81184, 1792, 1792, // #3608
+ 11, 81200, 81200, 3344, 3344, // #3609
+ 3, 81216, 81216, 688, 688, // #3610
+ 21, 81280, 81280, 624, 624, // #3611
+ 8, 81320, 81320, 1912, 1912, // #3612
+ 6, 81352, 81352, 3896, 3896, // #3613
+ 3, 81368, 81368, 136, 136, // #3614
+ 6, 81384, 81384, 3720, 3720, // #3615
+ 7, 81400, 81400, 2280, 2280, // #3616
+ 9, 81408, 81408, 2880, 2880, // #3617
+ 5, 81424, 81424, 880, 880, // #3618
+ 6, 81448, 81448, 3896, 3896, // #3619
+ 3, 81464, 81464, 136, 136, // #3620
+ 6, 81480, 81480, 3896, 3896, // #3621
+ 3, 81496, 81496, 136, 136, // #3622
+ 6, 81512, 81512, 3896, 3896, // #3623
+ 3, 81528, 81528, 136, 136, // #3624
+ 22, 81544, 81544, 3048, 3048, // #3625
+ 5, 81568, 81568, 880, 880, // #3626
+ 16, 81584, 81584, 3728, 3728, // #3627
+ 7, 81624, 81624, 2280, 2280, // #3628
+ 12, 81632, 81632, 1024, 1024, // #3629
+ 7, 81656, 81656, 2280, 2280, // #3630
+ 12, 81664, 81664, 1024, 1024, // #3631
+ 7, 81688, 81688, 2280, 2280, // #3632
+ 13, 81704, 81704, 840, 840, // #3633
+ 3, 81728, 81728, 688, 688, // #3634
+ 15, 81744, 81744, 2112, 2112, // #3635
+ 10, 81768, 81768, 600, 600, // #3636
+ 6, 81800, 81800, 3896, 3896, // #3637
+ 3, 81816, 81816, 136, 136, // #3638
+ 17, 81832, 81832, 3992, 3992, // #3639
+ 9, 81864, 81864, 2648, 2648, // #3640
+ 22, 81896, 81896, 3048, 3048, // #3641
+ 5, 81920, 81920, 880, 880, // #3642
+ 13, 81944, 81944, 840, 840, // #3643
+ 3, 81968, 81968, 688, 688, // #3644
+ 22, 81992, 81992, 3048, 3048, // #3645
+ 5, 82016, 82016, 880, 880, // #3646
+ 12, 82032, 82032, 1024, 1024, // #3647
+ 7, 82056, 82056, 2280, 2280, // #3648
+ 12, 82064, 82064, 1024, 1024, // #3649
+ 7, 82088, 82088, 2280, 2280, // #3650
+ 22, 82096, 82096, 576, 576, // #3651
+ 3, 82128, 82128, 688, 688, // #3652
+ 5, 82152, 82152, 3448, 3448, // #3653
+ 5, 82160, 82160, 880, 880, // #3654
+ 5, 82184, 82184, 3448, 3448, // #3655
+ 5, 82192, 82192, 880, 880, // #3656
+ 5, 82216, 82216, 3448, 3448, // #3657
+ 5, 82224, 82224, 880, 880, // #3658
+ 12, 82240, 82240, 192, 192, // #3659
+ 3, 82264, 82264, 136, 136, // #3660
+ 11, 82272, 82272, 2192, 2192, // #3661
+ 8, 82296, 82296, 1912, 1912, // #3662
+ 13, 82328, 82328, 840, 840, // #3663
+ 3, 82352, 82352, 688, 688, // #3664
+ 12, 82368, 82368, 192, 192, // #3665
+ 3, 82392, 82392, 136, 136, // #3666
+ 6, 82408, 82408, 3896, 3896, // #3667
+ 3, 82424, 82424, 136, 136, // #3668
+ 6, 82440, 82440, 3896, 3896, // #3669
+ 3, 82456, 82456, 136, 136, // #3670
+ 5, 82472, 82472, 3448, 3448, // #3671
+ 5, 82480, 82480, 880, 880, // #3672
+ 6, 82504, 82504, 1416, 1416, // #3673
+ 5, 82512, 82512, 880, 880, // #3674
+ 6, 82536, 82536, 3896, 3896, // #3675
+ 3, 82552, 82552, 136, 136, // #3676
+ 7, 82560, 82560, 1824, 1824, // #3677
+ 7, 82584, 82584, 2280, 2280, // #3678
+ 11, 82592, 82592, 3344, 3344, // #3679
+ 3, 82608, 82608, 688, 688, // #3680
+ 7, 82632, 82632, 3656, 3656, // #3681
+ 9, 82696, 82696, 3832, 3832, // #3682
+ 22, 82728, 82728, 3048, 3048, // #3683
+ 5, 82752, 82752, 880, 880, // #3684
+ 8, 82768, 82768, 1392, 1392, // #3685
+ 7, 82792, 82792, 2280, 2280, // #3686
+ 16, 82808, 82808, 2664, 2664, // #3687
+ 7, 82840, 82840, 2280, 2280, // #3688
+ 11, 82848, 82848, 3344, 3344, // #3689
+ 3, 82864, 82864, 688, 688, // #3690
+ 22, 82880, 82880, 576, 576, // #3691
+ 3, 82912, 82912, 688, 688, // #3692
+ 5, 82936, 82936, 3448, 3448, // #3693
+ 5, 82944, 82944, 880, 880, // #3694
+ 22, 82960, 82960, 576, 576, // #3695
+ 3, 82992, 82992, 688, 688, // #3696
+ 22, 83016, 83016, 3048, 3048, // #3697
+ 5, 83040, 83040, 880, 880, // #3698
+ 22, 83056, 83056, 576, 576, // #3699
+ 3, 83088, 83088, 688, 688, // #3700
+ 13, 83104, 83104, 2176, 2176, // #3701
+ 7, 83128, 83128, 2280, 2280, // #3702
+ 13, 83144, 83144, 840, 840, // #3703
+ 3, 83168, 83168, 688, 688, // #3704
+ 13, 83184, 83184, 2176, 2176, // #3705
+ 7, 83208, 83208, 2280, 2280, // #3706
+ 16, 83216, 83216, 256, 256, // #3707
+ 3, 83256, 83256, 136, 136, // #3708
+ 6, 83272, 83272, 3896, 3896, // #3709
+ 3, 83288, 83288, 136, 136, // #3710
+ 12, 83296, 83296, 192, 192, // #3711
+ 3, 83320, 83320, 136, 136, // #3712
+ 7, 83328, 83328, 2784, 2784, // #3713
+ 5, 83344, 83344, 880, 880, // #3714
+ 12, 83360, 83360, 192, 192, // #3715
+ 3, 83384, 83384, 136, 136, // #3716
+ 12, 83392, 83392, 192, 192, // #3717
+ 3, 83416, 83416, 136, 136, // #3718
+ 22, 83424, 83424, 576, 576, // #3719
+ 3, 83456, 83456, 688, 688, // #3720
+ 12, 83472, 83472, 2240, 2240, // #3721
+ 7, 83496, 83496, 2280, 2280, // #3722
+ 6, 83512, 83512, 3896, 3896, // #3723
+ 3, 83528, 83528, 136, 136, // #3724
+ 7, 83536, 83536, 2784, 2784, // #3725
+ 5, 83552, 83552, 880, 880, // #3726
+ 11, 83568, 83568, 3024, 3024, // #3727
+ 10, 83592, 83592, 600, 600, // #3728
+ 12, 83616, 83616, 2240, 2240, // #3729
+ 7, 83640, 83640, 2280, 2280, // #3730
+ 7, 83648, 83648, 2784, 2784, // #3731
+ 5, 83664, 83664, 880, 880, // #3732
+ 6, 83688, 83688, 3896, 3896, // #3733
+ 3, 83704, 83704, 136, 136, // #3734
+ 6, 83720, 83720, 3896, 3896, // #3735
+ 3, 83736, 83736, 136, 136, // #3736
+ 6, 83752, 83752, 3896, 3896, // #3737
+ 3, 83768, 83768, 136, 136, // #3738
+ 11, 83776, 83776, 2192, 2192, // #3739
+ 8, 83800, 83800, 1912, 1912, // #3740
+ 6, 83832, 83832, 3896, 3896, // #3741
+ 3, 83848, 83848, 136, 136, // #3742
+ 13, 83864, 83864, 840, 840, // #3743
+ 3, 83888, 83888, 688, 688, // #3744
+ 4, 83904, 83904, 2288, 2288, // #3745
+ 7, 83928, 83928, 2280, 2280, // #3746
+ 18, 83936, 83936, 528, 528, // #3747
+ 5, 83976, 83976, 4008, 4008, // #3748
+ 22, 83992, 83992, 3048, 3048, // #3749
+ 5, 84016, 84016, 880, 880, // #3750
+ 6, 84040, 84040, 3896, 3896, // #3751
+ 3, 84056, 84056, 136, 136, // #3752
+ 22, 84072, 84072, 3048, 3048, // #3753
+ 5, 84096, 84096, 880, 880, // #3754
+ 12, 84112, 84112, 192, 192, // #3755
+ 3, 84136, 84136, 136, 136, // #3756
+ 12, 84144, 84144, 192, 192, // #3757
+ 3, 84168, 84168, 136, 136, // #3758
+ 13, 84184, 84184, 840, 840, // #3759
+ 3, 84208, 84208, 688, 688, // #3760
+ 11, 84224, 84224, 2592, 2592, // #3761
+ 7, 84248, 84248, 2280, 2280, // #3762
+ 11, 84256, 84256, 2592, 2592, // #3763
+ 7, 84280, 84280, 2280, 2280, // #3764
+ 9, 84288, 84288, 2880, 2880, // #3765
+ 5, 84304, 84304, 880, 880, // #3766
+ 6, 84328, 84328, 3896, 3896, // #3767
+ 3, 84344, 84344, 136, 136, // #3768
+ 22, 84360, 84360, 3048, 3048, // #3769
+ 5, 84384, 84384, 880, 880, // #3770
+ 7, 84400, 84400, 2784, 2784, // #3771
+ 5, 84416, 84416, 880, 880, // #3772
+ 7, 84440, 84440, 3656, 3656, // #3773
+ 9, 84488, 84488, 3832, 3832, // #3774
+ 22, 84512, 84512, 576, 576, // #3775
+ 3, 84544, 84544, 688, 688, // #3776
+ 13, 84568, 84568, 840, 840, // #3777
+ 3, 84592, 84592, 688, 688, // #3778
+ 23, 84608, 84608, 2064, 2064, // #3779
+ 8, 84648, 84648, 1912, 1912, // #3780
+ 15, 84672, 84672, 3104, 3104, // #3781
+ 7, 84688, 84688, 736, 736, // #3782
+ 16, 84704, 84704, 256, 256, // #3783
+ 3, 84744, 84744, 136, 136, // #3784
+ 6, 84760, 84760, 3896, 3896, // #3785
+ 3, 84776, 84776, 136, 136, // #3786
+ 12, 84784, 84784, 192, 192, // #3787
+ 3, 84808, 84808, 136, 136, // #3788
+ 12, 84816, 84816, 192, 192, // #3789
+ 3, 84840, 84840, 136, 136, // #3790
+ 14, 84856, 84856, 1048, 1048, // #3791
+ 3, 84888, 84888, 2456, 2456, // #3792
+ 13, 84904, 84904, 840, 840, // #3793
+ 3, 84928, 84928, 688, 688, // #3794
+ 6, 84952, 84952, 3896, 3896, // #3795
+ 3, 84968, 84968, 136, 136, // #3796
+ 6, 84984, 84984, 3896, 3896, // #3797
+ 3, 85000, 85000, 136, 136, // #3798
+ 6, 85016, 85016, 3896, 3896, // #3799
+ 3, 85032, 85032, 136, 136, // #3800
+ 21, 85048, 85048, 1432, 1432, // #3801
+ 7, 85080, 85080, 2280, 2280, // #3802
+ 9, 85088, 85088, 1184, 1184, // #3803
+ 7, 85112, 85112, 2280, 2280, // #3804
+ 12, 85120, 85120, 192, 192, // #3805
+ 3, 85144, 85144, 136, 136, // #3806
+ 9, 85152, 85152, 1184, 1184, // #3807
+ 7, 85176, 85176, 2280, 2280, // #3808
+ 12, 85184, 85184, 192, 192, // #3809
+ 3, 85208, 85208, 136, 136, // #3810
+ 12, 85216, 85216, 192, 192, // #3811
+ 3, 85240, 85240, 136, 136, // #3812
+ 12, 85248, 85248, 192, 192, // #3813
+ 3, 85272, 85272, 136, 136, // #3814
+ 7, 85288, 85288, 3656, 3656, // #3815
+ 9, 85320, 85320, 3832, 3832, // #3816
+ 17, 85384, 85384, 888, 888, // #3817
+ 7, 85416, 85416, 2280, 2280, // #3818
+ 17, 85448, 85448, 888, 888, // #3819
+ 7, 85480, 85480, 2280, 2280, // #3820
+ 7, 85496, 85496, 3656, 3656, // #3821
+ 9, 85512, 85512, 3832, 3832, // #3822
+ 6, 85544, 85544, 3896, 3896, // #3823
+ 3, 85560, 85560, 136, 136, // #3824
+ 6, 85576, 85576, 3896, 3896, // #3825
+ 3, 85592, 85592, 136, 136, // #3826
+ 12, 85600, 85600, 192, 192, // #3827
+ 3, 85624, 85624, 136, 136, // #3828
+ 6, 85640, 85640, 3896, 3896, // #3829
+ 3, 85656, 85656, 136, 136, // #3830
+ 11, 85672, 85672, 1112, 1112, // #3831
+ 8, 85704, 85704, 1912, 1912, // #3832
+ 13, 85728, 85728, 2176, 2176, // #3833
+ 7, 85752, 85752, 2280, 2280, // #3834
+ 12, 85760, 85760, 192, 192, // #3835
+ 3, 85784, 85784, 136, 136, // #3836
+ 13, 85792, 85792, 2176, 2176, // #3837
+ 7, 85816, 85816, 2280, 2280, // #3838
+ 8, 85824, 85824, 1024, 1024, // #3839
+ 10, 85848, 85848, 600, 600, // #3840
+ 12, 85872, 85872, 192, 192, // #3841
+ 3, 85896, 85896, 136, 136, // #3842
+ 22, 85912, 85912, 3048, 3048, // #3843
+ 5, 85936, 85936, 880, 880, // #3844
+ 16, 85960, 85960, 4072, 4072, // #3845
+ 8, 85992, 85992, 1912, 1912, // #3846
+ 6, 86024, 86024, 1416, 1416, // #3847
+ 5, 86032, 86032, 880, 880, // #3848
+ 6, 86056, 86056, 1416, 1416, // #3849
+ 5, 86064, 86064, 880, 880, // #3850
+ 5, 86088, 86088, 456, 456, // #3851
+ 4, 86096, 86096, 1792, 1792, // #3852
+ 12, 86112, 86112, 192, 192, // #3853
+ 3, 86136, 86136, 136, 136, // #3854
+ 11, 86152, 86152, 2600, 2600, // #3855
+ 7, 86184, 86184, 2280, 2280, // #3856
+ 7, 86200, 86200, 952, 952, // #3857
+ 3, 86216, 86216, 808, 808, // #3858
+ 12, 86224, 86224, 192, 192, // #3859
+ 3, 86248, 86248, 136, 136, // #3860
+ 15, 86264, 86264, 1864, 1864, // #3861
+ 8, 86296, 86296, 1912, 1912, // #3862
+ 14, 86328, 86328, 1048, 1048, // #3863
+ 3, 86360, 86360, 2456, 2456, // #3864
+ 12, 86368, 86368, 672, 672, // #3865
+ 7, 86392, 86392, 2280, 2280, // #3866
+ 11, 86400, 86400, 3344, 3344, // #3867
+ 3, 86416, 86416, 688, 688, // #3868
+ 12, 86432, 86432, 672, 672, // #3869
+ 7, 86456, 86456, 2280, 2280, // #3870
+ 12, 86464, 86464, 192, 192, // #3871
+ 3, 86488, 86488, 136, 136, // #3872
+ 13, 86504, 86504, 840, 840, // #3873
+ 3, 86528, 86528, 688, 688, // #3874
+ 7, 86544, 86544, 2784, 2784, // #3875
+ 5, 86560, 86560, 880, 880, // #3876
+ 12, 86584, 86584, 1688, 1688, // #3877
+ 5, 86616, 86616, 4008, 4008, // #3878
+ 13, 86632, 86632, 840, 840, // #3879
+ 3, 86656, 86656, 688, 688, // #3880
+ 12, 86672, 86672, 1008, 1008, // #3881
+ 5, 86696, 86696, 4008, 4008, // #3882
+ 11, 86704, 86704, 3344, 3344, // #3883
+ 3, 86720, 86720, 688, 688, // #3884
+ 12, 86736, 86736, 192, 192, // #3885
+ 3, 86760, 86760, 136, 136, // #3886
+ 17, 86776, 86776, 3160, 3160, // #3887
+ 5, 86808, 86808, 4008, 4008, // #3888
+ 9, 86816, 86816, 2880, 2880, // #3889
+ 5, 86832, 86832, 880, 880, // #3890
+ 13, 86856, 86856, 840, 840, // #3891
+ 3, 86880, 86880, 688, 688, // #3892
+ 5, 86904, 86904, 3448, 3448, // #3893
+ 5, 86912, 86912, 880, 880, // #3894
+ 13, 86936, 86936, 840, 840, // #3895
+ 3, 86960, 86960, 688, 688, // #3896
+ 22, 86976, 86976, 576, 576, // #3897
+ 3, 87008, 87008, 688, 688, // #3898
+ 9, 87024, 87024, 2880, 2880, // #3899
+ 5, 87040, 87040, 880, 880, // #3900
+ 12, 87056, 87056, 192, 192, // #3901
+ 3, 87080, 87080, 136, 136, // #3902
+ 5, 87096, 87096, 3448, 3448, // #3903
+ 5, 87104, 87104, 880, 880, // #3904
+ 9, 87120, 87120, 2880, 2880, // #3905
+ 5, 87136, 87136, 880, 880, // #3906
+ 13, 87152, 87152, 1216, 1216, // #3907
+ 3, 87176, 87176, 2456, 2456, // #3908
+ 6, 87192, 87192, 3896, 3896, // #3909
+ 3, 87208, 87208, 136, 136, // #3910
+ 22, 87216, 87216, 1216, 1216, // #3911
+ 10, 87256, 87256, 600, 600, // #3912
+ 6, 87288, 87288, 1416, 1416, // #3913
+ 5, 87296, 87296, 880, 880, // #3914
+ 11, 87312, 87312, 3344, 3344, // #3915
+ 3, 87328, 87328, 688, 688, // #3916
+ 6, 87352, 87352, 3896, 3896, // #3917
+ 3, 87368, 87368, 136, 136, // #3918
+ 6, 87384, 87384, 3896, 3896, // #3919
+ 3, 87400, 87400, 136, 136, // #3920
+ 9, 87408, 87408, 1184, 1184, // #3921
+ 7, 87432, 87432, 2280, 2280, // #3922
+ 12, 87440, 87440, 192, 192, // #3923
+ 3, 87464, 87464, 136, 136, // #3924
+ 9, 87472, 87472, 2880, 2880, // #3925
+ 5, 87488, 87488, 880, 880, // #3926
+ 22, 87512, 87512, 3048, 3048, // #3927
+ 5, 87536, 87536, 880, 880, // #3928
+ 9, 87552, 87552, 1184, 1184, // #3929
+ 7, 87576, 87576, 2280, 2280, // #3930
+ 11, 87584, 87584, 3344, 3344, // #3931
+ 3, 87600, 87600, 688, 688, // #3932
+ 6, 87624, 87624, 1416, 1416, // #3933
+ 5, 87632, 87632, 880, 880, // #3934
+ 13, 87656, 87656, 840, 840, // #3935
+ 3, 87680, 87680, 688, 688, // #3936
+ 22, 87704, 87704, 3048, 3048, // #3937
+ 5, 87728, 87728, 880, 880, // #3938
+ 22, 87752, 87752, 3544, 3544, // #3939
+ 7, 87784, 87784, 2280, 2280, // #3940
+ 11, 87792, 87792, 2592, 2592, // #3941
+ 7, 87816, 87816, 2280, 2280, // #3942
+ 6, 87832, 87832, 3896, 3896, // #3943
+ 3, 87848, 87848, 136, 136, // #3944
+ 22, 87864, 87864, 3048, 3048, // #3945
+ 5, 87888, 87888, 880, 880, // #3946
+ 11, 87904, 87904, 2592, 2592, // #3947
+ 7, 87928, 87928, 2280, 2280, // #3948
+ 9, 87936, 87936, 2880, 2880, // #3949
+ 5, 87952, 87952, 880, 880, // #3950
+ 13, 87976, 87976, 840, 840, // #3951
+ 3, 88000, 88000, 688, 688, // #3952
+ 22, 88016, 88016, 576, 576, // #3953
+ 3, 88048, 88048, 688, 688, // #3954
+ 5, 88072, 88072, 3448, 3448, // #3955
+ 5, 88080, 88080, 880, 880, // #3956
+ 12, 88096, 88096, 192, 192, // #3957
+ 3, 88120, 88120, 136, 136, // #3958
+ 6, 88136, 88136, 952, 952, // #3959
+ 7, 88152, 88152, 2280, 2280, // #3960
+ 13, 88168, 88168, 840, 840, // #3961
+ 3, 88192, 88192, 688, 688, // #3962
+ 12, 88208, 88208, 192, 192, // #3963
+ 3, 88232, 88232, 136, 136, // #3964
+ 7, 88240, 88240, 2784, 2784, // #3965
+ 5, 88256, 88256, 880, 880, // #3966
+ 7, 88272, 88272, 2784, 2784, // #3967
+ 5, 88288, 88288, 880, 880, // #3968
+ 5, 88312, 88312, 3448, 3448, // #3969
+ 5, 88320, 88320, 880, 880, // #3970
+ 13, 88344, 88344, 840, 840, // #3971
+ 3, 88368, 88368, 688, 688, // #3972
+ 12, 88384, 88384, 192, 192, // #3973
+ 3, 88408, 88408, 136, 136, // #3974
+ 11, 88424, 88424, 296, 296, // #3975
+ 5, 88456, 88456, 4008, 4008, // #3976
+ 19, 88464, 88464, 2112, 2112, // #3977
+ 8, 88504, 88504, 1912, 1912, // #3978
+ 13, 88536, 88536, 840, 840, // #3979
+ 3, 88560, 88560, 688, 688, // #3980
+ 16, 88584, 88584, 2664, 2664, // #3981
+ 7, 88616, 88616, 2280, 2280, // #3982
+ 12, 88624, 88624, 192, 192, // #3983
+ 3, 88648, 88648, 136, 136, // #3984
+ 13, 88664, 88664, 840, 840, // #3985
+ 3, 88688, 88688, 688, 688, // #3986
+ 7, 88712, 88712, 312, 312, // #3987
+ 8, 88728, 88728, 1912, 1912, // #3988
+ 26, 88776, 88776, 2920, 2920, // #3989
+ 4, 88824, 88824, 2104, 2104, // #3990
+ 13, 88840, 88840, 840, 840, // #3991
+ 3, 88864, 88864, 688, 688, // #3992
+ 5, 88888, 88888, 456, 456, // #3993
+ 4, 88896, 88896, 1792, 1792, // #3994
+ 8, 88912, 88912, 1984, 1984, // #3995
+ 8, 88936, 88936, 1912, 1912, // #3996
+ 6, 88968, 88968, 1416, 1416, // #3997
+ 5, 88976, 88976, 880, 880, // #3998
+ 22, 88992, 88992, 576, 576, // #3999
+ 3, 89024, 89024, 688, 688, // #4000
+ 20, 89040, 89040, 3328, 3328, // #4001
+ 3, 89080, 89080, 2456, 2456, // #4002
+ 16, 89088, 89088, 256, 256, // #4003
+ 3, 89128, 89128, 136, 136, // #4004
+ 12, 89136, 89136, 192, 192, // #4005
+ 3, 89160, 89160, 136, 136, // #4006
+ 13, 89176, 89176, 840, 840, // #4007
+ 3, 89200, 89200, 688, 688, // #4008
+ 6, 89224, 89224, 3896, 3896, // #4009
+ 3, 89240, 89240, 136, 136, // #4010
+ 27, 89248, 89248, 2256, 2256, // #4011
+ 4, 89288, 89288, 2104, 2104, // #4012
+ 12, 89296, 89296, 192, 192, // #4013
+ 3, 89320, 89320, 136, 136, // #4014
+ 22, 89328, 89328, 576, 576, // #4015
+ 3, 89360, 89360, 688, 688, // #4016
+ 11, 89416, 89416, 3128, 3128, // #4017
+ 8, 89448, 89448, 1912, 1912, // #4018
+ 7, 89472, 89472, 2784, 2784, // #4019
+ 5, 89488, 89488, 880, 880, // #4020
+ 16, 89504, 89504, 3424, 3424, // #4021
+ 7, 89544, 89544, 2280, 2280, // #4022
+ 13, 89560, 89560, 840, 840, // #4023
+ 3, 89584, 89584, 688, 688, // #4024
+ 7, 89600, 89600, 2784, 2784, // #4025
+ 5, 89616, 89616, 880, 880, // #4026
+ 12, 89640, 89640, 1480, 1480, // #4027
+ 3, 89672, 89672, 2456, 2456, // #4028
+ 11, 89680, 89680, 3344, 3344, // #4029
+ 3, 89696, 89696, 688, 688, // #4030
+ 16, 89712, 89712, 3424, 3424, // #4031
+ 7, 89752, 89752, 2280, 2280, // #4032
+ 12, 89760, 89760, 192, 192, // #4033
+ 3, 89784, 89784, 136, 136, // #4034
+ 5, 89800, 89800, 3448, 3448, // #4035
+ 5, 89808, 89808, 880, 880, // #4036
+ 5, 89832, 89832, 3448, 3448, // #4037
+ 5, 89840, 89840, 880, 880, // #4038
+ 5, 89864, 89864, 3448, 3448, // #4039
+ 5, 89872, 89872, 880, 880, // #4040
+ 6, 89896, 89896, 3896, 3896, // #4041
+ 3, 89912, 89912, 136, 136, // #4042
+ 5, 89928, 89928, 3448, 3448, // #4043
+ 5, 89936, 89936, 880, 880, // #4044
+ 7, 89952, 89952, 2784, 2784, // #4045
+ 5, 89968, 89968, 880, 880, // #4046
+ 9, 89984, 89984, 2880, 2880, // #4047
+ 5, 90000, 90000, 880, 880, // #4048
+ 6, 90024, 90024, 1416, 1416, // #4049
+ 5, 90032, 90032, 880, 880, // #4050
+ 11, 90056, 90056, 2600, 2600, // #4051
+ 7, 90088, 90088, 2280, 2280, // #4052
+ 20, 90096, 90096, 3328, 3328, // #4053
+ 3, 90136, 90136, 2456, 2456, // #4054
+ 16, 90144, 90144, 256, 256, // #4055
+ 3, 90184, 90184, 136, 136, // #4056
+ 5, 90200, 90200, 3448, 3448, // #4057
+ 5, 90208, 90208, 880, 880, // #4058
+ 5, 90232, 90232, 3448, 3448, // #4059
+ 5, 90240, 90240, 880, 880, // #4060
+ 16, 90264, 90264, 3480, 3480, // #4061
+ 5, 90296, 90296, 4008, 4008, // #4062
+ 5, 90312, 90312, 3448, 3448, // #4063
+ 5, 90320, 90320, 880, 880, // #4064
+ 12, 90336, 90336, 192, 192, // #4065
+ 3, 90360, 90360, 136, 136, // #4066
+ 16, 90368, 90368, 256, 256, // #4067
+ 3, 90408, 90408, 136, 136, // #4068
+ 22, 90424, 90424, 3048, 3048, // #4069
+ 5, 90448, 90448, 880, 880, // #4070
+ 14, 90472, 90472, 1048, 1048, // #4071
+ 3, 90504, 90504, 2456, 2456, // #4072
+ 13, 90512, 90512, 1216, 1216, // #4073
+ 3, 90536, 90536, 2456, 2456, // #4074
+ 5, 90552, 90552, 3448, 3448, // #4075
+ 5, 90560, 90560, 880, 880, // #4076
+ 13, 90584, 90584, 840, 840, // #4077
+ 3, 90608, 90608, 688, 688, // #4078
+ 16, 90632, 90632, 264, 264, // #4079
+ 7, 90664, 90664, 2280, 2280, // #4080
+ 9, 90672, 90672, 2880, 2880, // #4081
+ 5, 90688, 90688, 880, 880, // #4082
+ 19, 90704, 90704, 2112, 2112, // #4083
+ 8, 90744, 90744, 1912, 1912, // #4084
+ 16, 90776, 90776, 264, 264, // #4085
+ 7, 90808, 90808, 2280, 2280, // #4086
+ 14, 90824, 90824, 1048, 1048, // #4087
+ 3, 90856, 90856, 2456, 2456, // #4088
+ 9, 90864, 90864, 2880, 2880, // #4089
+ 5, 90880, 90880, 880, 880, // #4090
+ 13, 90896, 90896, 1216, 1216, // #4091
+ 3, 90920, 90920, 2456, 2456, // #4092
+ 22, 90928, 90928, 576, 576, // #4093
+ 3, 90960, 90960, 688, 688, // #4094
+ 9, 90976, 90976, 1552, 1552, // #4095
+ 9, 90992, 90992, 2016, 2016, // #4096
+ 22, 91008, 91008, 576, 576, // #4097
+ 3, 91040, 91040, 688, 688, // #4098
+ 12, 91056, 91056, 192, 192, // #4099
+ 3, 91080, 91080, 136, 136, // #4100
+ 12, 91088, 91088, 192, 192, // #4101
+ 3, 91112, 91112, 136, 136, // #4102
+ 27, 91128, 91128, 3736, 3736, // #4103
+ 7, 91176, 91176, 2280, 2280, // #4104
+ 11, 91184, 91184, 3344, 3344, // #4105
+ 3, 91200, 91200, 688, 688, // #4106
+ 9, 91216, 91216, 2880, 2880, // #4107
+ 5, 91232, 91232, 880, 880, // #4108
+ 10, 91248, 91248, 1408, 1408, // #4109
+ 10, 91272, 91272, 600, 600, // #4110
+ 13, 91304, 91304, 840, 840, // #4111
+ 3, 91328, 91328, 688, 688, // #4112
+ 22, 91352, 91352, 3048, 3048, // #4113
+ 5, 91376, 91376, 880, 880, // #4114
+ 9, 91392, 91392, 2880, 2880, // #4115
+ 5, 91408, 91408, 880, 880, // #4116
+ 13, 91432, 91432, 840, 840, // #4117
+ 3, 91456, 91456, 688, 688, // #4118
+ 22, 91480, 91480, 3048, 3048, // #4119
+ 5, 91504, 91504, 880, 880, // #4120
+ 12, 91528, 91528, 1480, 1480, // #4121
+ 3, 91560, 91560, 2456, 2456, // #4122
+ 9, 91568, 91568, 2880, 2880, // #4123
+ 5, 91584, 91584, 880, 880, // #4124
+ 22, 91600, 91600, 576, 576, // #4125
+ 3, 91632, 91632, 688, 688, // #4126
+ 26, 91648, 91648, 1120, 1120, // #4127
+ 8, 91688, 91688, 1912, 1912, // #4128
+ 13, 91712, 91712, 2176, 2176, // #4129
+ 7, 91736, 91736, 2280, 2280, // #4130
+ 6, 91752, 91752, 3896, 3896, // #4131
+ 3, 91768, 91768, 136, 136, // #4132
+ 13, 91776, 91776, 2176, 2176, // #4133
+ 7, 91800, 91800, 2280, 2280, // #4134
+ 6, 91816, 91816, 1416, 1416, // #4135
+ 5, 91824, 91824, 880, 880, // #4136
+ 6, 91848, 91848, 1416, 1416, // #4137
+ 5, 91856, 91856, 880, 880, // #4138
+ 13, 91880, 91880, 840, 840, // #4139
+ 3, 91904, 91904, 688, 688, // #4140
+ 10, 91920, 91920, 832, 832, // #4141
+ 8, 91944, 91944, 1912, 1912, // #4142
+ 6, 91968, 91968, 2736, 2736, // #4143
+ 10, 91992, 91992, 600, 600, // #4144
+ 13, 92024, 92024, 840, 840, // #4145
+ 3, 92048, 92048, 688, 688, // #4146
+ 22, 92072, 92072, 3048, 3048, // #4147
+ 5, 92096, 92096, 880, 880, // #4148
+ 7, 92120, 92120, 3656, 3656, // #4149
+ 9, 92168, 92168, 3832, 3832, // #4150
+ 12, 92192, 92192, 384, 384, // #4151
+ 7, 92216, 92216, 2280, 2280, // #4152
+ 12, 92224, 92224, 384, 384, // #4153
+ 7, 92248, 92248, 2280, 2280, // #4154
+ 5, 92264, 92264, 456, 456, // #4155
+ 4, 92272, 92272, 1792, 1792, // #4156
+ 12, 92288, 92288, 192, 192, // #4157
+ 3, 92312, 92312, 136, 136, // #4158
+ 12, 92320, 92320, 192, 192, // #4159
+ 3, 92344, 92344, 136, 136, // #4160
+ 13, 92352, 92352, 1216, 1216, // #4161
+ 3, 92376, 92376, 2456, 2456, // #4162
+ 12, 92384, 92384, 192, 192, // #4163
+ 3, 92408, 92408, 136, 136, // #4164
+ 7, 92416, 92416, 2784, 2784, // #4165
+ 5, 92432, 92432, 880, 880, // #4166
+ 13, 92456, 92456, 840, 840, // #4167
+ 3, 92480, 92480, 688, 688, // #4168
+ 7, 92496, 92496, 2784, 2784, // #4169
+ 5, 92512, 92512, 880, 880, // #4170
+ 11, 92528, 92528, 3344, 3344, // #4171
+ 3, 92544, 92544, 688, 688, // #4172
+ 14, 92568, 92568, 1048, 1048, // #4173
+ 3, 92600, 92600, 2456, 2456, // #4174
+ 5, 92616, 92616, 3448, 3448, // #4175
+ 5, 92624, 92624, 880, 880, // #4176
+ 7, 92640, 92640, 2784, 2784, // #4177
+ 5, 92656, 92656, 880, 880, // #4178
+ 7, 92672, 92672, 2784, 2784, // #4179
+ 5, 92688, 92688, 880, 880, // #4180
+ 10, 92704, 92704, 832, 832, // #4181
+ 8, 92728, 92728, 1912, 1912, // #4182
+ 22, 92760, 92760, 3048, 3048, // #4183
+ 5, 92784, 92784, 880, 880, // #4184
+ 6, 92808, 92808, 3896, 3896, // #4185
+ 3, 92824, 92824, 136, 136, // #4186
+ 6, 92840, 92840, 3896, 3896, // #4187
+ 3, 92856, 92856, 136, 136, // #4188
+ 12, 92864, 92864, 192, 192, // #4189
+ 3, 92888, 92888, 136, 136, // #4190
+ 7, 92896, 92896, 2784, 2784, // #4191
+ 5, 92912, 92912, 880, 880, // #4192
+ 9, 92928, 92928, 2880, 2880, // #4193
+ 5, 92944, 92944, 880, 880, // #4194
+ 8, 92960, 92960, 1984, 1984, // #4195
+ 8, 92984, 92984, 1912, 1912, // #4196
+ 19, 93008, 93008, 1104, 1104, // #4197
+ 3, 93040, 93040, 688, 688, // #4198
+ 9, 93056, 93056, 2880, 2880, // #4199
+ 5, 93072, 93072, 880, 880, // #4200
+ 7, 93088, 93088, 2784, 2784, // #4201
+ 5, 93104, 93104, 880, 880, // #4202
+ 22, 93120, 93120, 576, 576, // #4203
+ 3, 93152, 93152, 688, 688, // #4204
+ 11, 93168, 93168, 2592, 2592, // #4205
+ 7, 93192, 93192, 2280, 2280, // #4206
+ 11, 93200, 93200, 2592, 2592, // #4207
+ 7, 93224, 93224, 2280, 2280, // #4208
+ 12, 93232, 93232, 192, 192, // #4209
+ 3, 93256, 93256, 136, 136, // #4210
+ 13, 93272, 93272, 840, 840, // #4211
+ 3, 93296, 93296, 688, 688, // #4212
+ 22, 93320, 93320, 2232, 2232, // #4213
+ 7, 93352, 93352, 2280, 2280, // #4214
+ 7, 93360, 93360, 2784, 2784, // #4215
+ 5, 93376, 93376, 880, 880, // #4216
+ 13, 93400, 93400, 840, 840, // #4217
+ 3, 93424, 93424, 688, 688, // #4218
+ 9, 93440, 93440, 2880, 2880, // #4219
+ 5, 93456, 93456, 880, 880, // #4220
+ 12, 93472, 93472, 672, 672, // #4221
+ 7, 93496, 93496, 2280, 2280, // #4222
+ 6, 93512, 93512, 3896, 3896, // #4223
+ 3, 93528, 93528, 136, 136, // #4224
+ 7, 93536, 93536, 2784, 2784, // #4225
+ 5, 93552, 93552, 880, 880, // #4226
+ 20, 93568, 93568, 3328, 3328, // #4227
+ 3, 93608, 93608, 2456, 2456, // #4228
+ 11, 93616, 93616, 3344, 3344, // #4229
+ 3, 93632, 93632, 688, 688, // #4230
+ 9, 93648, 93648, 1184, 1184, // #4231
+ 7, 93672, 93672, 2280, 2280, // #4232
+ 12, 93680, 93680, 672, 672, // #4233
+ 7, 93704, 93704, 2280, 2280, // #4234
+ 18, 93712, 93712, 2704, 2704, // #4235
+ 3, 93752, 93752, 2456, 2456, // #4236
+ 8, 93760, 93760, 3712, 3712, // #4237
+ 7, 93784, 93784, 2280, 2280, // #4238
+ 9, 93792, 93792, 1184, 1184, // #4239
+ 7, 93816, 93816, 2280, 2280, // #4240
+ 13, 93832, 93832, 2520, 2520, // #4241
+ 8, 93864, 93864, 1912, 1912, // #4242
+ 7, 93888, 93888, 2784, 2784, // #4243
+ 5, 93904, 93904, 880, 880, // #4244
+ 7, 93928, 93928, 1672, 1672, // #4245
+ 7, 93944, 93944, 2280, 2280, // #4246
+ 13, 93960, 93960, 840, 840, // #4247
+ 3, 93984, 93984, 688, 688, // #4248
+ 16, 94000, 94000, 256, 256, // #4249
+ 3, 94040, 94040, 136, 136, // #4250
+ 6, 94056, 94056, 3896, 3896, // #4251
+ 3, 94072, 94072, 136, 136, // #4252
+ 10, 94080, 94080, 3712, 3712, // #4253
+ 7, 94104, 94104, 2280, 2280, // #4254
+ 10, 94112, 94112, 3712, 3712, // #4255
+ 7, 94136, 94136, 2280, 2280, // #4256
+ 8, 94144, 94144, 272, 272, // #4257
+ 7, 94168, 94168, 2280, 2280, // #4258
+ 18, 94176, 94176, 2704, 2704, // #4259
+ 3, 94216, 94216, 2456, 2456, // #4260
+ 8, 94232, 94232, 3720, 3720, // #4261
+ 7, 94264, 94264, 2280, 2280, // #4262
+ 6, 94280, 94280, 3896, 3896, // #4263
+ 3, 94296, 94296, 136, 136, // #4264
+ 6, 94312, 94312, 3896, 3896, // #4265
+ 3, 94328, 94328, 136, 136, // #4266
+ 26, 94344, 94344, 1416, 1416, // #4267
+ 4, 94392, 94392, 2104, 2104, // #4268
+ 13, 94408, 94408, 840, 840, // #4269
+ 3, 94432, 94432, 688, 688, // #4270
+ 7, 94448, 94448, 2784, 2784, // #4271
+ 5, 94464, 94464, 880, 880, // #4272
+ 9, 94480, 94480, 2880, 2880, // #4273
+ 5, 94496, 94496, 880, 880, // #4274
+ 13, 94512, 94512, 1216, 1216, // #4275
+ 3, 94536, 94536, 2456, 2456, // #4276
+ 7, 94552, 94552, 3656, 3656, // #4277
+ 9, 94600, 94600, 3832, 3832, // #4278
+ 8, 94632, 94632, 4024, 4024, // #4279
+ 10, 94664, 94664, 600, 600, // #4280
+ 11, 94688, 94688, 2592, 2592, // #4281
+ 7, 94712, 94712, 2280, 2280, // #4282
+ 5, 94728, 94728, 3448, 3448, // #4283
+ 5, 94736, 94736, 880, 880, // #4284
+ 11, 94752, 94752, 2592, 2592, // #4285
+ 7, 94776, 94776, 2280, 2280, // #4286
+ 11, 94784, 94784, 2592, 2592, // #4287
+ 7, 94808, 94808, 2280, 2280, // #4288
+ 22, 94816, 94816, 576, 576, // #4289
+ 3, 94848, 94848, 688, 688, // #4290
+ 11, 94864, 94864, 2592, 2592, // #4291
+ 7, 94888, 94888, 2280, 2280, // #4292
+ 12, 94896, 94896, 192, 192, // #4293
+ 3, 94920, 94920, 136, 136, // #4294
+ 22, 94936, 94936, 3048, 3048, // #4295
+ 5, 94960, 94960, 880, 880, // #4296
+ 5, 94984, 94984, 3448, 3448, // #4297
+ 5, 94992, 94992, 880, 880, // #4298
+ 8, 95008, 95008, 1872, 1872, // #4299
+ 10, 95032, 95032, 600, 600, // #4300
+ 7, 95056, 95056, 2784, 2784, // #4301
+ 5, 95072, 95072, 880, 880, // #4302
+ 7, 95088, 95088, 2784, 2784, // #4303
+ 5, 95104, 95104, 880, 880, // #4304
+ 7, 95120, 95120, 2784, 2784, // #4305
+ 5, 95136, 95136, 880, 880, // #4306
+ 5, 95160, 95160, 3448, 3448, // #4307
+ 5, 95168, 95168, 880, 880, // #4308
+ 12, 95184, 95184, 672, 672, // #4309
+ 7, 95208, 95208, 2280, 2280, // #4310
+ 11, 95216, 95216, 3344, 3344, // #4311
+ 3, 95232, 95232, 688, 688, // #4312
+ 12, 95248, 95248, 672, 672, // #4313
+ 7, 95272, 95272, 2280, 2280, // #4314
+ 6, 95288, 95288, 1416, 1416, // #4315
+ 5, 95296, 95296, 880, 880, // #4316
+ 7, 95312, 95312, 2784, 2784, // #4317
+ 5, 95328, 95328, 880, 880, // #4318
+ 9, 95344, 95344, 2880, 2880, // #4319
+ 5, 95360, 95360, 880, 880, // #4320
+ 6, 95384, 95384, 1416, 1416, // #4321
+ 5, 95392, 95392, 880, 880, // #4322
+ 7, 95408, 95408, 2784, 2784, // #4323
+ 5, 95424, 95424, 880, 880, // #4324
+ 7, 95440, 95440, 2784, 2784, // #4325
+ 5, 95456, 95456, 880, 880, // #4326
+ 7, 95472, 95472, 2784, 2784, // #4327
+ 5, 95488, 95488, 880, 880, // #4328
+ 12, 95512, 95512, 3528, 3528, // #4329
+ 7, 95544, 95544, 2280, 2280, // #4330
+ 7, 95552, 95552, 2784, 2784, // #4331
+ 5, 95568, 95568, 880, 880, // #4332
+ 13, 95584, 95584, 1216, 1216, // #4333
+ 3, 95608, 95608, 2456, 2456, // #4334
+ 11, 95616, 95616, 2592, 2592, // #4335
+ 7, 95640, 95640, 2280, 2280, // #4336
+ 11, 95648, 95648, 2592, 2592, // #4337
+ 7, 95672, 95672, 2280, 2280, // #4338
+ 13, 95688, 95688, 840, 840, // #4339
+ 3, 95712, 95712, 688, 688, // #4340
+ 5, 95736, 95736, 3448, 3448, // #4341
+ 5, 95744, 95744, 880, 880, // #4342
+ 7, 95760, 95760, 2784, 2784, // #4343
+ 5, 95776, 95776, 880, 880, // #4344
+ 9, 95792, 95792, 2880, 2880, // #4345
+ 5, 95808, 95808, 880, 880, // #4346
+ 10, 95824, 95824, 832, 832, // #4347
+ 8, 95848, 95848, 1912, 1912, // #4348
+ 7, 95872, 95872, 2992, 2992, // #4349
+ 7, 95896, 95896, 2280, 2280, // #4350
+ 12, 95904, 95904, 672, 672, // #4351
+ 7, 95928, 95928, 2280, 2280, // #4352
+ 7, 95936, 95936, 2784, 2784, // #4353
+ 5, 95952, 95952, 880, 880, // #4354
+ 12, 95968, 95968, 672, 672, // #4355
+ 7, 95992, 95992, 2280, 2280, // #4356
+ 13, 96008, 96008, 840, 840, // #4357
+ 3, 96032, 96032, 688, 688, // #4358
+ 7, 96048, 96048, 2784, 2784, // #4359
+ 5, 96064, 96064, 880, 880, // #4360
+ 13, 96080, 96080, 3168, 3168, // #4361
+ 7, 96104, 96104, 2280, 2280, // #4362
+ 13, 96112, 96112, 3168, 3168, // #4363
+ 7, 96136, 96136, 2280, 2280, // #4364
+ 10, 96144, 96144, 3712, 3712, // #4365
+ 7, 96168, 96168, 2280, 2280, // #4366
+ 10, 96176, 96176, 2960, 2960, // #4367
+ 5, 96200, 96200, 4008, 4008, // #4368
+ 10, 96208, 96208, 3712, 3712, // #4369
+ 7, 96232, 96232, 2280, 2280, // #4370
+ 16, 96248, 96248, 2664, 2664, // #4371
+ 7, 96280, 96280, 2280, 2280, // #4372
+ 13, 96296, 96296, 840, 840, // #4373
+ 3, 96320, 96320, 688, 688, // #4374
+ 5, 96344, 96344, 456, 456, // #4375
+ 4, 96352, 96352, 1792, 1792, // #4376
+ 13, 96368, 96368, 1216, 1216, // #4377
+ 3, 96392, 96392, 2456, 2456, // #4378
+ 17, 96408, 96408, 3864, 3864, // #4379
+ 5, 96440, 96440, 4008, 4008, // #4380
+ 10, 96456, 96456, 808, 808, // #4381
+ 5, 96488, 96488, 4008, 4008, // #4382
+ 13, 96504, 96504, 2584, 2584, // #4383
+ 3, 96536, 96536, 2456, 2456, // #4384
+ 6, 96552, 96552, 1416, 1416, // #4385
+ 5, 96560, 96560, 880, 880, // #4386
+ 20, 96576, 96576, 3328, 3328, // #4387
+ 3, 96616, 96616, 2456, 2456, // #4388
+ 5, 96632, 96632, 456, 456, // #4389
+ 4, 96640, 96640, 1792, 1792, // #4390
+ 11, 96656, 96656, 3344, 3344, // #4391
+ 3, 96672, 96672, 688, 688, // #4392
+ 5, 96696, 96696, 3448, 3448, // #4393
+ 5, 96704, 96704, 880, 880, // #4394
+ 5, 96728, 96728, 3448, 3448, // #4395
+ 5, 96736, 96736, 880, 880, // #4396
+ 5, 96760, 96760, 456, 456, // #4397
+ 4, 96768, 96768, 1792, 1792, // #4398
+ 5, 96792, 96792, 3448, 3448, // #4399
+ 5, 96800, 96800, 880, 880, // #4400
+ 9, 96816, 96816, 2880, 2880, // #4401
+ 5, 96832, 96832, 880, 880, // #4402
+ 14, 96856, 96856, 1608, 1608, // #4403
+ 8, 96888, 96888, 1912, 1912, // #4404
+ 13, 96920, 96920, 2584, 2584, // #4405
+ 3, 96952, 96952, 2456, 2456, // #4406
+ 9, 96960, 96960, 1184, 1184, // #4407
+ 7, 96984, 96984, 2280, 2280, // #4408
+ 6, 97000, 97000, 1416, 1416, // #4409
+ 5, 97008, 97008, 880, 880, // #4410
+ 9, 97024, 97024, 1184, 1184, // #4411
+ 7, 97048, 97048, 2280, 2280, // #4412
+ 13, 97064, 97064, 840, 840, // #4413
+ 3, 97088, 97088, 688, 688, // #4414
+ 9, 97104, 97104, 2880, 2880, // #4415
+ 5, 97120, 97120, 880, 880, // #4416
+ 9, 97136, 97136, 2880, 2880, // #4417
+ 5, 97152, 97152, 880, 880, // #4418
+ 13, 97176, 97176, 840, 840, // #4419
+ 3, 97200, 97200, 688, 688, // #4420
+ 9, 97216, 97216, 2880, 2880, // #4421
+ 5, 97232, 97232, 880, 880, // #4422
+ 13, 97256, 97256, 840, 840, // #4423
+ 3, 97280, 97280, 688, 688, // #4424
+ 6, 97304, 97304, 1416, 1416, // #4425
+ 5, 97312, 97312, 880, 880, // #4426
+ 7, 97328, 97328, 2784, 2784, // #4427
+ 5, 97344, 97344, 880, 880, // #4428
+ 18, 97360, 97360, 2704, 2704, // #4429
+ 3, 97400, 97400, 2456, 2456, // #4430
+ 7, 97408, 97408, 2784, 2784, // #4431
+ 5, 97424, 97424, 880, 880, // #4432
+ 7, 97440, 97440, 2784, 2784, // #4433
+ 5, 97456, 97456, 880, 880, // #4434
+ 6, 97472, 97472, 2944, 2944, // #4435
+ 7, 97496, 97496, 2280, 2280, // #4436
+ 9, 97504, 97504, 2880, 2880, // #4437
+ 5, 97520, 97520, 880, 880, // #4438
+ 10, 97536, 97536, 3712, 3712, // #4439
+ 7, 97560, 97560, 2280, 2280, // #4440
+ 10, 97568, 97568, 3712, 3712, // #4441
+ 7, 97592, 97592, 2280, 2280, // #4442
+ 13, 97608, 97608, 840, 840, // #4443
+ 3, 97632, 97632, 688, 688, // #4444
+ 9, 97648, 97648, 2880, 2880, // #4445
+ 5, 97664, 97664, 880, 880, // #4446
+ 7, 97680, 97680, 2784, 2784, // #4447
+ 5, 97696, 97696, 880, 880, // #4448
+ 22, 97712, 97712, 576, 576, // #4449
+ 3, 97744, 97744, 688, 688, // #4450
+ 9, 97760, 97760, 1184, 1184, // #4451
+ 7, 97784, 97784, 2280, 2280, // #4452
+ 11, 97792, 97792, 3344, 3344, // #4453
+ 3, 97808, 97808, 688, 688, // #4454
+ 13, 97824, 97824, 1216, 1216, // #4455
+ 3, 97848, 97848, 2456, 2456, // #4456
+ 9, 97856, 97856, 1184, 1184, // #4457
+ 7, 97880, 97880, 2280, 2280, // #4458
+ 9, 97888, 97888, 2880, 2880, // #4459
+ 5, 97904, 97904, 880, 880, // #4460
+ 16, 97928, 97928, 4072, 4072, // #4461
+ 8, 97960, 97960, 1912, 1912, // #4462
+ 11, 97984, 97984, 3344, 3344, // #4463
+ 3, 98000, 98000, 688, 688, // #4464
+ 12, 98024, 98024, 1480, 1480, // #4465
+ 3, 98056, 98056, 2456, 2456, // #4466
+ 6, 98072, 98072, 1416, 1416, // #4467
+ 5, 98080, 98080, 880, 880, // #4468
+ 4, 98104, 98104, 2328, 2328, // #4469
+ 7, 98120, 98120, 2280, 2280, // #4470
+ 22, 98128, 98128, 576, 576, // #4471
+ 3, 98160, 98160, 688, 688, // #4472
+ 22, 98176, 98176, 576, 576, // #4473
+ 3, 98208, 98208, 688, 688, // #4474
+ 6, 98232, 98232, 3896, 3896, // #4475
+ 3, 98248, 98248, 136, 136, // #4476
+ 6, 98264, 98264, 1416, 1416, // #4477
+ 5, 98272, 98272, 880, 880, // #4478
+ 9, 98288, 98288, 2880, 2880, // #4479
+ 5, 98304, 98304, 880, 880, // #4480
+ 22, 98328, 98328, 3048, 3048, // #4481
+ 5, 98352, 98352, 880, 880, // #4482
+ 7, 98376, 98376, 3656, 3656, // #4483
+ 9, 98440, 98440, 3832, 3832, // #4484
+ 12, 98472, 98472, 1480, 1480, // #4485
+ 3, 98504, 98504, 2456, 2456, // #4486
+ 11, 98512, 98512, 3344, 3344, // #4487
+ 3, 98528, 98528, 688, 688, // #4488
+ 6, 98552, 98552, 3896, 3896, // #4489
+ 3, 98568, 98568, 136, 136, // #4490
+ 5, 98584, 98584, 456, 456, // #4491
+ 4, 98592, 98592, 1792, 1792, // #4492
+ 22, 98616, 98616, 3048, 3048, // #4493
+ 5, 98640, 98640, 880, 880, // #4494
+ 13, 98664, 98664, 840, 840, // #4495
+ 3, 98688, 98688, 688, 688, // #4496
+ 22, 98712, 98712, 3048, 3048, // #4497
+ 5, 98736, 98736, 880, 880, // #4498
+ 22, 98760, 98760, 3048, 3048, // #4499
+ 5, 98784, 98784, 880, 880, // #4500
+ 22, 98800, 98800, 576, 576, // #4501
+ 3, 98832, 98832, 688, 688, // #4502
+ 7, 98856, 98856, 3656, 3656, // #4503
+ 9, 98888, 98888, 3832, 3832, // #4504
+ 16, 98912, 98912, 256, 256, // #4505
+ 3, 98952, 98952, 136, 136, // #4506
+ 22, 98968, 98968, 3048, 3048, // #4507
+ 5, 98992, 98992, 880, 880, // #4508
+ 5, 99016, 99016, 3448, 3448, // #4509
+ 5, 99024, 99024, 880, 880, // #4510
+ 14, 99040, 99040, 2960, 2960, // #4511
+ 10, 99064, 99064, 600, 600, // #4512
+ 22, 99088, 99088, 576, 576, // #4513
+ 3, 99120, 99120, 688, 688, // #4514
+ 14, 99144, 99144, 1048, 1048, // #4515
+ 3, 99176, 99176, 2456, 2456, // #4516
+ 13, 99192, 99192, 840, 840, // #4517
+ 3, 99216, 99216, 688, 688, // #4518
+ 5, 99240, 99240, 456, 456, // #4519
+ 4, 99248, 99248, 1792, 1792, // #4520
+ 11, 99264, 99264, 2592, 2592, // #4521
+ 7, 99288, 99288, 2280, 2280, // #4522
+ 11, 99296, 99296, 2592, 2592, // #4523
+ 7, 99320, 99320, 2280, 2280, // #4524
+ 14, 99328, 99328, 2912, 2912, // #4525
+ 7, 99352, 99352, 2280, 2280, // #4526
+ 14, 99360, 99360, 2912, 2912, // #4527
+ 7, 99384, 99384, 2280, 2280, // #4528
+ 11, 99392, 99392, 2592, 2592, // #4529
+ 7, 99416, 99416, 2280, 2280, // #4530
+ 6, 99432, 99432, 1416, 1416, // #4531
+ 5, 99440, 99440, 880, 880, // #4532
+ 11, 99456, 99456, 2592, 2592, // #4533
+ 7, 99480, 99480, 2280, 2280, // #4534
+ 22, 99488, 99488, 576, 576, // #4535
+ 3, 99520, 99520, 688, 688, // #4536
+ 9, 99536, 99536, 576, 576, // #4537
+ 9, 99552, 99552, 2016, 2016, // #4538
+ 7, 99568, 99568, 2784, 2784, // #4539
+ 5, 99584, 99584, 880, 880, // #4540
+ 13, 99608, 99608, 840, 840, // #4541
+ 3, 99632, 99632, 688, 688, // #4542
+ 9, 99648, 99648, 2880, 2880, // #4543
+ 5, 99664, 99664, 880, 880, // #4544
+ 13, 99688, 99688, 840, 840, // #4545
+ 3, 99712, 99712, 688, 688, // #4546
+ 14, 99728, 99728, 3488, 3488, // #4547
+ 7, 99752, 99752, 2280, 2280, // #4548
+ 9, 99760, 99760, 2880, 2880, // #4549
+ 5, 99776, 99776, 880, 880, // #4550
+ 14, 99792, 99792, 3488, 3488, // #4551
+ 7, 99816, 99816, 2280, 2280, // #4552
+ 8, 99824, 99824, 1984, 1984, // #4553
+ 8, 99848, 99848, 1912, 1912, // #4554
+ 6, 99880, 99880, 3896, 3896, // #4555
+ 3, 99896, 99896, 136, 136, // #4556
+ 22, 99912, 99912, 3048, 3048, // #4557
+ 5, 99936, 99936, 880, 880, // #4558
+ 13, 99952, 99952, 3168, 3168, // #4559
+ 7, 99976, 99976, 2280, 2280, // #4560
+ 13, 99984, 99984, 3168, 3168, // #4561
+ 7, 100008, 100008, 2280, 2280, // #4562
+ 5, 100024, 100024, 3448, 3448, // #4563
+ 5, 100032, 100032, 880, 880, // #4564
+ 12, 100048, 100048, 192, 192, // #4565
+ 3, 100072, 100072, 136, 136, // #4566
+ 5, 100088, 100088, 456, 456, // #4567
+ 4, 100096, 100096, 1792, 1792, // #4568
+ 7, 100120, 100120, 3656, 3656, // #4569
+ 9, 100168, 100168, 3832, 3832, // #4570
+ 18, 100192, 100192, 2704, 2704, // #4571
+ 3, 100232, 100232, 2456, 2456, // #4572
+ 9, 100240, 100240, 2880, 2880, // #4573
+ 5, 100256, 100256, 880, 880, // #4574
+ 9, 100272, 100272, 2880, 2880, // #4575
+ 5, 100288, 100288, 880, 880, // #4576
+ 13, 100312, 100312, 840, 840, // #4577
+ 3, 100336, 100336, 688, 688, // #4578
+ 9, 100352, 100352, 3168, 3168, // #4579
+ 10, 100376, 100376, 600, 600, // #4580
+ 5, 100408, 100408, 456, 456, // #4581
+ 4, 100416, 100416, 1792, 1792, // #4582
+ 22, 100440, 100440, 3048, 3048, // #4583
+ 5, 100464, 100464, 880, 880, // #4584
+ 6, 100488, 100488, 3896, 3896, // #4585
+ 3, 100504, 100504, 136, 136, // #4586
+ 17, 100520, 100520, 1864, 1864, // #4587
+ 7, 100552, 100552, 2280, 2280, // #4588
+ 22, 100560, 100560, 576, 576, // #4589
+ 3, 100592, 100592, 688, 688, // #4590
+ 17, 100616, 100616, 1864, 1864, // #4591
+ 7, 100648, 100648, 2280, 2280, // #4592
+ 12, 100656, 100656, 384, 384, // #4593
+ 7, 100680, 100680, 2280, 2280, // #4594
+ 13, 100696, 100696, 840, 840, // #4595
+ 3, 100720, 100720, 688, 688, // #4596
+ 22, 100736, 100736, 576, 576, // #4597
+ 3, 100768, 100768, 688, 688, // #4598
+ 12, 100784, 100784, 384, 384, // #4599
+ 7, 100808, 100808, 2280, 2280, // #4600
+ 11, 100816, 100816, 3344, 3344, // #4601
+ 3, 100832, 100832, 688, 688, // #4602
+ 14, 100848, 100848, 3552, 3552, // #4603
+ 7, 100872, 100872, 2280, 2280, // #4604
+ 17, 100888, 100888, 2760, 2760, // #4605
+ 7, 100920, 100920, 2280, 2280, // #4606
+ 17, 100936, 100936, 2760, 2760, // #4607
+ 7, 100968, 100968, 2280, 2280, // #4608
+ 14, 100976, 100976, 3552, 3552, // #4609
+ 7, 101000, 101000, 2280, 2280, // #4610
+ 12, 101016, 101016, 2904, 2904, // #4611
+ 5, 101048, 101048, 4008, 4008, // #4612
+ 11, 101056, 101056, 3344, 3344, // #4613
+ 3, 101072, 101072, 688, 688, // #4614
+ 15, 101096, 101096, 456, 456, // #4615
+ 7, 101128, 101128, 2280, 2280, // #4616
+ 14, 101192, 101192, 376, 376, // #4617
+ 8, 101224, 101224, 1912, 1912, // #4618
+ 22, 101248, 101248, 576, 576, // #4619
+ 3, 101280, 101280, 688, 688, // #4620
+ 22, 101304, 101304, 3048, 3048, // #4621
+ 5, 101328, 101328, 880, 880, // #4622
+ 16, 101344, 101344, 256, 256, // #4623
+ 3, 101384, 101384, 136, 136, // #4624
+ 22, 101392, 101392, 576, 576, // #4625
+ 3, 101424, 101424, 688, 688, // #4626
+ 10, 101440, 101440, 3712, 3712, // #4627
+ 7, 101464, 101464, 2280, 2280, // #4628
+ 6, 101480, 101480, 1416, 1416, // #4629
+ 5, 101488, 101488, 880, 880, // #4630
+ 10, 101504, 101504, 3712, 3712, // #4631
+ 7, 101528, 101528, 2280, 2280, // #4632
+ 5, 101544, 101544, 3448, 3448, // #4633
+ 5, 101552, 101552, 880, 880, // #4634
+ 16, 101568, 101568, 3728, 3728, // #4635
+ 7, 101608, 101608, 2280, 2280, // #4636
+ 5, 101624, 101624, 456, 456, // #4637
+ 4, 101632, 101632, 1792, 1792, // #4638
+ 13, 101656, 101656, 2584, 2584, // #4639
+ 3, 101688, 101688, 2456, 2456, // #4640
+ 5, 101704, 101704, 456, 456, // #4641
+ 4, 101712, 101712, 1792, 1792, // #4642
+ 11, 101728, 101728, 3344, 3344, // #4643
+ 3, 101744, 101744, 688, 688, // #4644
+ 12, 101760, 101760, 192, 192, // #4645
+ 3, 101784, 101784, 136, 136, // #4646
+ 12, 101792, 101792, 192, 192, // #4647
+ 3, 101816, 101816, 136, 136, // #4648
+ 13, 101832, 101832, 840, 840, // #4649
+ 3, 101856, 101856, 688, 688, // #4650
+ 6, 101880, 101880, 3896, 3896, // #4651
+ 3, 101896, 101896, 136, 136, // #4652
+ 12, 101904, 101904, 192, 192, // #4653
+ 3, 101928, 101928, 136, 136, // #4654
+ 13, 101944, 101944, 840, 840, // #4655
+ 3, 101968, 101968, 688, 688, // #4656
+ 13, 101992, 101992, 840, 840, // #4657
+ 3, 102016, 102016, 688, 688, // #4658
+ 11, 102032, 102032, 3344, 3344, // #4659
+ 3, 102048, 102048, 688, 688, // #4660
+ 6, 102072, 102072, 3896, 3896, // #4661
+ 3, 102088, 102088, 136, 136, // #4662
+ 5, 102104, 102104, 456, 456, // #4663
+ 4, 102112, 102112, 1792, 1792, // #4664
+ 14, 102128, 102128, 3840, 3840, // #4665
+ 8, 102152, 102152, 1912, 1912, // #4666
+ 13, 102184, 102184, 840, 840, // #4667
+ 3, 102208, 102208, 688, 688, // #4668
+ 11, 102224, 102224, 3344, 3344, // #4669
+ 3, 102240, 102240, 688, 688, // #4670
+ 12, 102280, 102280, 952, 952, // #4671
+ 7, 102312, 102312, 2280, 2280, // #4672
+ 18, 102320, 102320, 2704, 2704, // #4673
+ 3, 102360, 102360, 2456, 2456, // #4674
+ 7, 102368, 102368, 2784, 2784, // #4675
+ 5, 102384, 102384, 880, 880, // #4676
+ 16, 102400, 102400, 1552, 1552, // #4677
+ 7, 102440, 102440, 2280, 2280, // #4678
+ 6, 102456, 102456, 3896, 3896, // #4679
+ 3, 102472, 102472, 136, 136, // #4680
+ 16, 102480, 102480, 1552, 1552, // #4681
+ 7, 102520, 102520, 2280, 2280, // #4682
+ 5, 102536, 102536, 456, 456, // #4683
+ 4, 102544, 102544, 1792, 1792, // #4684
+ 6, 102568, 102568, 2280, 2280, // #4685
+ 7, 102584, 102584, 2280, 2280, // #4686
+ 14, 102592, 102592, 3840, 3840, // #4687
+ 8, 102616, 102616, 1912, 1912, // #4688
+ 11, 102640, 102640, 3344, 3344, // #4689
+ 3, 102656, 102656, 688, 688, // #4690
+ 13, 102680, 102680, 840, 840, // #4691
+ 3, 102704, 102704, 688, 688, // #4692
+ 13, 102728, 102728, 840, 840, // #4693
+ 3, 102752, 102752, 688, 688, // #4694
+ 21, 102792, 102792, 3576, 3576, // #4695
+ 8, 102824, 102824, 1912, 1912, // #4696
+ 12, 102848, 102848, 192, 192, // #4697
+ 3, 102872, 102872, 136, 136, // #4698
+ 7, 102888, 102888, 3656, 3656, // #4699
+ 9, 102920, 102920, 3832, 3832, // #4700
+ 26, 102952, 102952, 1416, 1416, // #4701
+ 4, 103000, 103000, 2104, 2104, // #4702
+ 7, 103016, 103016, 3656, 3656, // #4703
+ 9, 103048, 103048, 3832, 3832, // #4704
+ 7, 103080, 103080, 3656, 3656, // #4705
+ 9, 103112, 103112, 3832, 3832, // #4706
+ 7, 103144, 103144, 3656, 3656, // #4707
+ 9, 103176, 103176, 3832, 3832, // #4708
+ 24, 103208, 103208, 808, 808, // #4709
+ 8, 103256, 103256, 1912, 1912, // #4710
+ 18, 103288, 103288, 808, 808, // #4711
+ 10, 103320, 103320, 600, 600, // #4712
+ 6, 103352, 103352, 1416, 1416, // #4713
+ 5, 103360, 103360, 880, 880, // #4714
+ 16, 103376, 103376, 2448, 2448, // #4715
+ 7, 103416, 103416, 2280, 2280, // #4716
+ 22, 103424, 103424, 576, 576, // #4717
+ 3, 103456, 103456, 688, 688, // #4718
+ 15, 103472, 103472, 368, 368, // #4719
+ 10, 103496, 103496, 600, 600, // #4720
+ 9, 103520, 103520, 1184, 1184, // #4721
+ 7, 103544, 103544, 2280, 2280, // #4722
+ 9, 103552, 103552, 1184, 1184, // #4723
+ 7, 103576, 103576, 2280, 2280, // #4724
+ 16, 103584, 103584, 2448, 2448, // #4725
+ 7, 103624, 103624, 2280, 2280, // #4726
+ 13, 103632, 103632, 0, 0, // #4727
+ 7, 103656, 103656, 2280, 2280, // #4728
+ 13, 103664, 103664, 0, 0, // #4729
+ 7, 103688, 103688, 2280, 2280, // #4730
+ 8, 103704, 103704, 2152, 2152, // #4731
+ 3, 103736, 103736, 2456, 2456, // #4732
+ 13, 103752, 103752, 840, 840, // #4733
+ 3, 103776, 103776, 688, 688, // #4734
+ 27, 103792, 103792, 2256, 2256, // #4735
+ 4, 103832, 103832, 2104, 2104, // #4736
+ 12, 103840, 103840, 192, 192, // #4737
+ 3, 103864, 103864, 136, 136, // #4738
+ 12, 103872, 103872, 192, 192, // #4739
+ 3, 103896, 103896, 136, 136, // #4740
+ 13, 103912, 103912, 840, 840, // #4741
+ 3, 103936, 103936, 688, 688, // #4742
+ 12, 103952, 103952, 192, 192, // #4743
+ 3, 103976, 103976, 136, 136, // #4744
+ 12, 103984, 103984, 192, 192, // #4745
+ 3, 104008, 104008, 136, 136, // #4746
+ 7, 104016, 104016, 2784, 2784, // #4747
+ 5, 104032, 104032, 880, 880, // #4748
+ 14, 104056, 104056, 1608, 1608, // #4749
+ 8, 104088, 104088, 1912, 1912, // #4750
+ 26, 104136, 104136, 2920, 2920, // #4751
+ 4, 104184, 104184, 2104, 2104, // #4752
+ 16, 104192, 104192, 256, 256, // #4753
+ 3, 104232, 104232, 136, 136, // #4754
+ 7, 104240, 104240, 2784, 2784, // #4755
+ 5, 104256, 104256, 880, 880, // #4756
+ 12, 104272, 104272, 192, 192, // #4757
+ 3, 104296, 104296, 136, 136, // #4758
+ 10, 104304, 104304, 3712, 3712, // #4759
+ 7, 104328, 104328, 2280, 2280, // #4760
+ 21, 104392, 104392, 3576, 3576, // #4761
+ 8, 104424, 104424, 1912, 1912, // #4762
+ 10, 104448, 104448, 3712, 3712, // #4763
+ 7, 104472, 104472, 2280, 2280, // #4764
+ 22, 104480, 104480, 576, 576, // #4765
+ 3, 104512, 104512, 688, 688, // #4766
+ 11, 104528, 104528, 3344, 3344, // #4767
+ 3, 104544, 104544, 688, 688, // #4768
+ 13, 104568, 104568, 840, 840, // #4769
+ 3, 104592, 104592, 688, 688, // #4770
+ 22, 104616, 104616, 3048, 3048, // #4771
+ 5, 104640, 104640, 880, 880, // #4772
+ 6, 104664, 104664, 3896, 3896, // #4773
+ 3, 104680, 104680, 136, 136, // #4774
+ 13, 104696, 104696, 840, 840, // #4775
+ 3, 104720, 104720, 688, 688, // #4776
+ 17, 104736, 104736, 1680, 1680, // #4777
+ 10, 104776, 104776, 600, 600, // #4778
+ 8, 104808, 104808, 2632, 2632, // #4779
+ 3, 104832, 104832, 2352, 2352, // #4780
+ 6, 104856, 104856, 3896, 3896, // #4781
+ 3, 104872, 104872, 136, 136, // #4782
+ 5, 104888, 104888, 456, 456, // #4783
+ 4, 104896, 104896, 1792, 1792, // #4784
+ 12, 104912, 104912, 672, 672, // #4785
+ 7, 104936, 104936, 2280, 2280, // #4786
+ 6, 104952, 104952, 3896, 3896, // #4787
+ 3, 104968, 104968, 136, 136, // #4788
+ 12, 104976, 104976, 672, 672, // #4789
+ 7, 105000, 105000, 2280, 2280, // #4790
+ 19, 105016, 105016, 1480, 1480, // #4791
+ 9, 105048, 105048, 2648, 2648, // #4792
+ 18, 105072, 105072, 2704, 2704, // #4793
+ 3, 105112, 105112, 2456, 2456, // #4794
+ 13, 105128, 105128, 2584, 2584, // #4795
+ 3, 105160, 105160, 2456, 2456, // #4796
+ 15, 105224, 105224, 3448, 3448, // #4797
+ 8, 105256, 105256, 1912, 1912, // #4798
+ 23, 105288, 105288, 792, 792, // #4799
+ 3, 105320, 105320, 2456, 2456, // #4800
+ 15, 105352, 105352, 3448, 3448, // #4801
+ 8, 105384, 105384, 1912, 1912, // #4802
+ 11, 105408, 105408, 2176, 2176, // #4803
+ 7, 105432, 105432, 2280, 2280, // #4804
+ 24, 105440, 105440, 768, 768, // #4805
+ 8, 105480, 105480, 1912, 1912, // #4806
+ 11, 105504, 105504, 2176, 2176, // #4807
+ 7, 105528, 105528, 2280, 2280, // #4808
+ 6, 105544, 105544, 3896, 3896, // #4809
+ 3, 105560, 105560, 136, 136, // #4810
+ 11, 105568, 105568, 3344, 3344, // #4811
+ 3, 105584, 105584, 688, 688, // #4812
+ 18, 105608, 105608, 1416, 1416, // #4813
+ 3, 105640, 105640, 2456, 2456, // #4814
+ 9, 105648, 105648, 1184, 1184, // #4815
+ 7, 105672, 105672, 2280, 2280, // #4816
+ 7, 105688, 105688, 3656, 3656, // #4817
+ 9, 105736, 105736, 3832, 3832, // #4818
+ 9, 105760, 105760, 1184, 1184, // #4819
+ 7, 105784, 105784, 2280, 2280, // #4820
+ 5, 105800, 105800, 456, 456, // #4821
+ 4, 105808, 105808, 1792, 1792, // #4822
+ 12, 105824, 105824, 192, 192, // #4823
+ 3, 105848, 105848, 136, 136, // #4824
+ 16, 105856, 105856, 3424, 3424, // #4825
+ 7, 105896, 105896, 2280, 2280, // #4826
+ 22, 105904, 105904, 576, 576, // #4827
+ 3, 105936, 105936, 688, 688, // #4828
+ 16, 105952, 105952, 3424, 3424, // #4829
+ 7, 105992, 105992, 2280, 2280, // #4830
+ 13, 106008, 106008, 840, 840, // #4831
+ 3, 106032, 106032, 688, 688, // #4832
+ 6, 106056, 106056, 1416, 1416, // #4833
+ 5, 106064, 106064, 880, 880, // #4834
+ 6, 106088, 106088, 1416, 1416, // #4835
+ 5, 106096, 106096, 880, 880, // #4836
+ 11, 106112, 106112, 3344, 3344, // #4837
+ 3, 106128, 106128, 688, 688, // #4838
+ 13, 106152, 106152, 840, 840, // #4839
+ 3, 106176, 106176, 688, 688, // #4840
+ 13, 106200, 106200, 840, 840, // #4841
+ 3, 106224, 106224, 688, 688, // #4842
+ 5, 106248, 106248, 456, 456, // #4843
+ 4, 106256, 106256, 1792, 1792, // #4844
+ 9, 106272, 106272, 2880, 2880, // #4845
+ 5, 106288, 106288, 880, 880, // #4846
+ 16, 106304, 106304, 256, 256, // #4847
+ 3, 106344, 106344, 136, 136, // #4848
+ 22, 106360, 106360, 3048, 3048, // #4849
+ 5, 106384, 106384, 880, 880, // #4850
+ 22, 106408, 106408, 3048, 3048, // #4851
+ 5, 106432, 106432, 880, 880, // #4852
+ 22, 106456, 106456, 3048, 3048, // #4853
+ 5, 106480, 106480, 880, 880, // #4854
+ 12, 106496, 106496, 144, 144, // #4855
+ 7, 106520, 106520, 2280, 2280, // #4856
+ 9, 106528, 106528, 2880, 2880, // #4857
+ 5, 106544, 106544, 880, 880, // #4858
+ 11, 106560, 106560, 3344, 3344, // #4859
+ 3, 106576, 106576, 688, 688, // #4860
+ 6, 106600, 106600, 3896, 3896, // #4861
+ 3, 106616, 106616, 136, 136, // #4862
+ 13, 106624, 106624, 3168, 3168, // #4863
+ 7, 106648, 106648, 2280, 2280, // #4864
+ 13, 106656, 106656, 3168, 3168, // #4865
+ 7, 106680, 106680, 2280, 2280, // #4866
+ 11, 106696, 106696, 2600, 2600, // #4867
+ 7, 106728, 106728, 2280, 2280, // #4868
+ 6, 106744, 106744, 1416, 1416, // #4869
+ 5, 106752, 106752, 880, 880, // #4870
+ 9, 106768, 106768, 2880, 2880, // #4871
+ 5, 106784, 106784, 880, 880, // #4872
+ 12, 106824, 106824, 952, 952, // #4873
+ 7, 106856, 106856, 2280, 2280, // #4874
+ 6, 106872, 106872, 1416, 1416, // #4875
+ 5, 106880, 106880, 880, 880, // #4876
+ 11, 106896, 106896, 3344, 3344, // #4877
+ 3, 106912, 106912, 688, 688, // #4878
+ 5, 106936, 106936, 456, 456, // #4879
+ 4, 106944, 106944, 1792, 1792, // #4880
+ 9, 106960, 106960, 2880, 2880, // #4881
+ 5, 106976, 106976, 880, 880, // #4882
+ 9, 106992, 106992, 2880, 2880, // #4883
+ 5, 107008, 107008, 880, 880, // #4884
+ 13, 107032, 107032, 840, 840, // #4885
+ 3, 107056, 107056, 688, 688, // #4886
+ 22, 107080, 107080, 3048, 3048, // #4887
+ 5, 107104, 107104, 880, 880, // #4888
+ 7, 107128, 107128, 3656, 3656, // #4889
+ 9, 107144, 107144, 3832, 3832, // #4890
+ 12, 107168, 107168, 2752, 2752, // #4891
+ 7, 107192, 107192, 2280, 2280, // #4892
+ 12, 107200, 107200, 2752, 2752, // #4893
+ 7, 107224, 107224, 2280, 2280, // #4894
+ 5, 107240, 107240, 3448, 3448, // #4895
+ 5, 107248, 107248, 880, 880, // #4896
+ 5, 107272, 107272, 3448, 3448, // #4897
+ 5, 107280, 107280, 880, 880, // #4898
+ 11, 107296, 107296, 3344, 3344, // #4899
+ 3, 107312, 107312, 688, 688, // #4900
+ 15, 107336, 107336, 1864, 1864, // #4901
+ 8, 107368, 107368, 1912, 1912, // #4902
+ 18, 107392, 107392, 2704, 2704, // #4903
+ 3, 107432, 107432, 2456, 2456, // #4904
+ 24, 107456, 107456, 2736, 2736, // #4905
+ 8, 107496, 107496, 1912, 1912, // #4906
+ 8, 107520, 107520, 480, 480, // #4907
+ 9, 107536, 107536, 2016, 2016, // #4908
+ 17, 107560, 107560, 3992, 3992, // #4909
+ 9, 107592, 107592, 2648, 2648, // #4910
+ 4, 107616, 107616, 160, 160, // #4911
+ 7, 107640, 107640, 2280, 2280, // #4912
+ 14, 107648, 107648, 3840, 3840, // #4913
+ 8, 107672, 107672, 1912, 1912, // #4914
+ 12, 107696, 107696, 192, 192, // #4915
+ 3, 107720, 107720, 136, 136, // #4916
+ 18, 107736, 107736, 1416, 1416, // #4917
+ 3, 107768, 107768, 2456, 2456, // #4918
+ 13, 107784, 107784, 840, 840, // #4919
+ 3, 107808, 107808, 688, 688, // #4920
+ 10, 107824, 107824, 3712, 3712, // #4921
+ 7, 107848, 107848, 2280, 2280, // #4922
+ 10, 107856, 107856, 3712, 3712, // #4923
+ 7, 107880, 107880, 2280, 2280, // #4924
+ 6, 107896, 107896, 3896, 3896, // #4925
+ 3, 107912, 107912, 136, 136, // #4926
+ 7, 107920, 107920, 2784, 2784, // #4927
+ 5, 107936, 107936, 880, 880, // #4928
+ 7, 107952, 107952, 2784, 2784, // #4929
+ 5, 107968, 107968, 880, 880, // #4930
+ 9, 107984, 107984, 1184, 1184, // #4931
+ 7, 108008, 108008, 2280, 2280, // #4932
+ 6, 108024, 108024, 3896, 3896, // #4933
+ 3, 108040, 108040, 136, 136, // #4934
+ 9, 108048, 108048, 1184, 1184, // #4935
+ 7, 108072, 108072, 2280, 2280, // #4936
+ 11, 108080, 108080, 3344, 3344, // #4937
+ 3, 108096, 108096, 688, 688, // #4938
+ 22, 108112, 108112, 576, 576, // #4939
+ 3, 108144, 108144, 688, 688, // #4940
+ 24, 108168, 108168, 808, 808, // #4941
+ 8, 108216, 108216, 1912, 1912, // #4942
+ 13, 108248, 108248, 840, 840, // #4943
+ 3, 108272, 108272, 688, 688, // #4944
+ 12, 108288, 108288, 192, 192, // #4945
+ 3, 108312, 108312, 136, 136, // #4946
+ 11, 108320, 108320, 3344, 3344, // #4947
+ 3, 108336, 108336, 688, 688, // #4948
+ 16, 108352, 108352, 256, 256, // #4949
+ 3, 108392, 108392, 136, 136, // #4950
+ 13, 108408, 108408, 840, 840, // #4951
+ 3, 108432, 108432, 688, 688, // #4952
+ 8, 108456, 108456, 2632, 2632, // #4953
+ 9, 108488, 108488, 3832, 3832, // #4954
+ 7, 108520, 108520, 3656, 3656, // #4955
+ 9, 108552, 108552, 3832, 3832, // #4956
+ 7, 108584, 108584, 3656, 3656, // #4957
+ 9, 108616, 108616, 3832, 3832, // #4958
+ 6, 108648, 108648, 1416, 1416, // #4959
+ 5, 108656, 108656, 880, 880, // #4960
+ 6, 108680, 108680, 1096, 1096, // #4961
+ 7, 108696, 108696, 2280, 2280, // #4962
+ 6, 108712, 108712, 1416, 1416, // #4963
+ 5, 108720, 108720, 880, 880, // #4964
+ 22, 108744, 108744, 3048, 3048, // #4965
+ 5, 108768, 108768, 880, 880, // #4966
+ 24, 108784, 108784, 768, 768, // #4967
+ 8, 108824, 108824, 1912, 1912, // #4968
+ 16, 108848, 108848, 256, 256, // #4969
+ 3, 108888, 108888, 136, 136, // #4970
+ 6, 108904, 108904, 3896, 3896, // #4971
+ 3, 108920, 108920, 136, 136, // #4972
+ 13, 108936, 108936, 840, 840, // #4973
+ 3, 108960, 108960, 688, 688, // #4974
+ 22, 108984, 108984, 3048, 3048, // #4975
+ 5, 109008, 109008, 880, 880, // #4976
+ 7, 109032, 109032, 3656, 3656, // #4977
+ 9, 109064, 109064, 3832, 3832, // #4978
+ 17, 109096, 109096, 3992, 3992, // #4979
+ 9, 109128, 109128, 2648, 2648, // #4980
+ 20, 109152, 109152, 3328, 3328, // #4981
+ 3, 109192, 109192, 2456, 2456, // #4982
+ 11, 109208, 109208, 2600, 2600, // #4983
+ 42, 109256, 109256, 3992, 3992, // #4984
+ 245, 109320, 109320, 328, 328, // #4985
+ 0, 109568, 109568, 3428, 3428, // #4986
+ 268, 109581, 109581, 2109, 2109, // #4987
+ 8, 109864, 109864, 1480, 1480, // #4988
+ 0, 109888, 109888, 3428, 3428, // #4989
+ 9, 109891, 109891, 2579, 2579, // #4990
+ 93, 109960, 109960, 1560, 1560, // #4991
+ 0, 110064, 110064, 3428, 3428, // #4992
+ 93, 110084, 110084, 1668, 1668, // #4993
+ 8, 110192, 110192, 3712, 3712, // #4994
+ 0, 110208, 110208, 3428, 3428, // #4995
+ 6, 110220, 110220, 796, 796, // #4996
+ 11, 110248, 110248, 2600, 2600, // #4997
+ 50, 110280, 110280, 1912, 1912, // #4998
+ 11, 110344, 110344, 2600, 2600, // #4999
+ 47, 110400, 110400, 3552, 3552, // #5000
+ 4, 110448, 110448, 3632, 3632, // #5001
+ 18, 110469, 110469, 3637, 3637, // #5002
+ 16, 110535, 110535, 3511, 3511, // #5003
+ 14, 110561, 110561, 1793, 1793, // #5004
+ 14, 110577, 110577, 481, 481, // #5005
+ 10, 110600, 110600, 3656, 3656, // #5006
+ 16, 110627, 110627, 3667, 3667, // #5007
+ 13, 110660, 110660, 3684, 3684, // #5008
+ 16, 110699, 110699, 3675, 3675, // #5009
+ 15, 110722, 110722, 3698, 3698, // #5010
+ 17, 110754, 110754, 3714, 3714, // #5011
+ 16, 110797, 110797, 1757, 1757, // #5012
+ 18, 110819, 110819, 3619, 3619, // #5013
+ 19, 110852, 110852, 3732, 3732, // #5014
+ 20, 110888, 110888, 3752, 3752, // #5015
+ 25, 110925, 110925, 3773, 3773, // #5016
+ 18, 110974, 110974, 1774, 1774, // #5017
+ 23, 111015, 111015, 3799, 3799, // #5018
+ 20, 111053, 111053, 3837, 3837, // #5019
+ 12, 111090, 111090, 3858, 3858, // #5020
+ 12, 111119, 111119, 3871, 3871, // #5021
+ 16, 111146, 111146, 1818, 1818, // #5022
+ 19, 111180, 111180, 3884, 3884, // #5023
+ 33, 111200, 111200, 832, 832, // #5024
+ 0, 111248, 111248, 3428, 3428, // #5025
+ 45, 111300, 111300, 2420, 2420, // #5026
+ 175, 111360, 111360, 336, 336, // #5027
+ 0, 111536, 111536, 3428, 3428, // #5028
+ 200, 111560, 111560, 3992, 3992, // #5029
+ 7, 111776, 111776, 96, 96, // #5030
+ 0, 111792, 111792, 3428, 3428, // #5031
+ 11, 111802, 111802, 490, 490, // #5032
+ 62, 111872, 111872, 336, 336, // #5033
+ 0, 111936, 111936, 3428, 3428, // #5034
+ 88, 111944, 111944, 3784, 3784, // #5035
+ 22, 112056, 112056, 424, 424, // #5036
+ 0, 112080, 112080, 3428, 3428, // #5037
+ 37, 112084, 112084, 452, 452, // #5038
+ 75, 112136, 112136, 952, 952, // #5039
+ 0, 112224, 112224, 3428, 3428, // #5040
+ 97, 112262, 112262, 3686, 3686, // #5041
+ 144, 112384, 112384, 4080, 4080, // #5042
+ 0, 112544, 112544, 3428, 3428, // #5043
+ 151, 112583, 112583, 439, 439, // #5044
+ 30, 112736, 112736, 2832, 2832, // #5045
+ 22, 112776, 112776, 3064, 3064, // #5046
+ 0, 112800, 112800, 3428, 3428, // #5047
+ 31, 112844, 112844, 764, 764, // #5048
+ 36, 112896, 112896, 560, 560, // #5049
+ 0, 112944, 112944, 3428, 3428, // #5050
+ 34, 112973, 112973, 3565, 3565, // #5051
+ 6, 113008, 113008, 624, 624, // #5052
+ 0, 113024, 113024, 3428, 3428, // #5053
+ 7, 113033, 113033, 3833, 3833, // #5054
+ 32, 113088, 113088, 560, 560, // #5055
+ 0, 113136, 113136, 3428, 3428, // #5056
+ 43, 113162, 113162, 3642, 3642, // #5057
+ 10, 113216, 113216, 352, 352, // #5058
+ 0, 113232, 113232, 3428, 3428, // #5059
+ 12, 113235, 113235, 627, 627, // #5060
+ 50, 113288, 113288, 1848, 1848, // #5061
+ 0, 113344, 113344, 3428, 3428, // #5062
+ 61, 113356, 113356, 3580, 3580, // #5063
+ 5, 113424, 113424, 2768, 2768, // #5064
+ 0, 113440, 113440, 3428, 3428, // #5065
+ 7, 113454, 113454, 990, 990, // #5066
+ 3, 113472, 113472, 1568, 1568, // #5067
+ 38, 113496, 113496, 1480, 1480, // #5068
+ 0, 113536, 113536, 3428, 3428, // #5069
+ 40, 113542, 113542, 998, 998, // #5070
+ 51, 113600, 113600, 3552, 3552, // #5071
+ 0, 113664, 113664, 3428, 3428, // #5072
+ 63, 113665, 113665, 161, 161, // #5073
+ 19, 113752, 113752, 3352, 3352, // #5074
+ 0, 113776, 113776, 3428, 3428, // #5075
+ 20, 113776, 113776, 640, 640, // #5076
+ 56, 113808, 113808, 2112, 2112, // #5077
+ 0, 113872, 113872, 3428, 3428, // #5078
+ 64, 113922, 113922, 3426, 3426, // #5079
+ 21, 114008, 114008, 472, 472, // #5080
+ 20, 114056, 114056, 504, 504, // #5081
+ 12, 114088, 114088, 536, 536, // #5082
+ 20, 114120, 114120, 584, 584, // #5083
+ 1, 114157, 114157, 573, 573, // #5084
+ 7, 114164, 114164, 404, 404, // #5085
+ 21, 114184, 114184, 3928, 3928, // #5086
+ 20, 114248, 114248, 3960, 3960, // #5087
+ 12, 114280, 114280, 3992, 3992, // #5088
+ 20, 114312, 114312, 4040, 4040, // #5089
+ 1, 114349, 114349, 4029, 4029, // #5090
+ 21, 114372, 114372, 116, 116, // #5091
+ 4, 114408, 114408, 2296, 2296, // #5092
+ 0, 114416, 114416, 3428, 3428, // #5093
+ 5, 114427, 114427, 699, 699, // #5094
+ 8, 114448, 114448, 176, 176, // #5095
+ 0, 114464, 114464, 3428, 3428, // #5096
+ 9, 114471, 114471, 743, 743, // #5097
+ 12, 114496, 114496, 176, 176, // #5098
+ 0, 114512, 114512, 3428, 3428, // #5099
+ 14, 114574, 114574, 3774, 3774, // #5100
+ 5, 114592, 114592, 2528, 2528, // #5101
+ 0, 114608, 114608, 3428, 3428, // #5102
+ 7, 114620, 114620, 1068, 1068, // #5103
+ 11, 114648, 114648, 1672, 1672, // #5104
+ 0, 114672, 114672, 3428, 3428, // #5105
+ 15, 114674, 114674, 2210, 2210, // #5106
+ 7, 114704, 114704, 1920, 1920, // #5107
+ 0, 114720, 114720, 3428, 3428, // #5108
+ 9, 114762, 114762, 3962, 3962, // #5109
+ 6, 114784, 114784, 1920, 1920, // #5110
+ 0, 114800, 114800, 3428, 3428, // #5111
+ 7, 114809, 114809, 3833, 3833, // #5112
+ 9, 114888, 114888, 568, 568, // #5113
+ 0, 114912, 114912, 3428, 3428, // #5114
+ 12, 114912, 114912, 832, 832, // #5115
+ 14, 114952, 114952, 568, 568, // #5116
+ 0, 114976, 114976, 3428, 3428, // #5117
+ 22, 114978, 114978, 2978, 2978, // #5118
+ 8, 115016, 115016, 568, 568, // #5119
+ 0, 115040, 115040, 3428, 3428, // #5120
+ 21, 115050, 115050, 666, 666, // #5121
+ 5, 115072, 115072, 2528, 2528, // #5122
+ 0, 115088, 115088, 3428, 3428, // #5123
+ 5, 115100, 115100, 876, 876, // #5124
+ 5, 115120, 115120, 2528, 2528, // #5125
+ 0, 115136, 115136, 3428, 3428, // #5126
+ 9, 115136, 115136, 1568, 1568, // #5127
+ 5, 115152, 115152, 2528, 2528, // #5128
+ 0, 115168, 115168, 3428, 3428, // #5129
+ 8, 115169, 115169, 3953, 3953, // #5130
+ 4, 115184, 115184, 2528, 2528, // #5131
+ 0, 115200, 115200, 3428, 3428, // #5132
+ 9, 115204, 115204, 2500, 2500, // #5133
+ 5, 115216, 115216, 2528, 2528, // #5134
+ 0, 115232, 115232, 3428, 3428, // #5135
+ 7, 115239, 115239, 3975, 3975, // #5136
+ 6, 115248, 115248, 2528, 2528, // #5137
+ 0, 115264, 115264, 3428, 3428, // #5138
+ 6, 115269, 115269, 789, 789, // #5139
+ 6, 115280, 115280, 2528, 2528, // #5140
+ 0, 115296, 115296, 3428, 3428, // #5141
+ 6, 115301, 115301, 789, 789, // #5142
+ 6, 115312, 115312, 2528, 2528, // #5143
+ 0, 115328, 115328, 3428, 3428, // #5144
+ 7, 115330, 115330, 1618, 1618, // #5145
+ 11, 115400, 115400, 2488, 2488, // #5146
+ 0, 115424, 115424, 3428, 3428, // #5147
+ 16, 115433, 115433, 3033, 3033, // #5148
+ 9, 115464, 115464, 2488, 2488, // #5149
+ 0, 115488, 115488, 3428, 3428, // #5150
+ 10, 115500, 115500, 3180, 3180, // #5151
+ 8, 115528, 115528, 2488, 2488, // #5152
+ 0, 115552, 115552, 3428, 3428, // #5153
+ 13, 115558, 115558, 198, 198, // #5154
+ 10, 115592, 115592, 2488, 2488, // #5155
+ 0, 115616, 115616, 3428, 3428, // #5156
+ 19, 115631, 115631, 95, 95, // #5157
+ 14, 115720, 115720, 2488, 2488, // #5158
+ 0, 115744, 115744, 3428, 3428, // #5159
+ 19, 115747, 115747, 211, 211, // #5160
+ 11, 115784, 115784, 2488, 2488, // #5161
+ 0, 115808, 115808, 3428, 3428, // #5162
+ 14, 115846, 115846, 950, 950, // #5163
+ 12, 115912, 115912, 2488, 2488, // #5164
+ 0, 115936, 115936, 3428, 3428, // #5165
+ 13, 115948, 115948, 3532, 3532, // #5166
+ 12, 115976, 115976, 2488, 2488, // #5167
+ 0, 116000, 116000, 3428, 3428, // #5168
+ 19, 116034, 116034, 242, 242, // #5169
+ 18, 116072, 116072, 1752, 1752, // #5170
+ 0, 116096, 116096, 3428, 3428, // #5171
+ 30, 116105, 116105, 425, 425, // #5172
+ 19, 116152, 116152, 1752, 1752, // #5173
+ 0, 116176, 116176, 3428, 3428, // #5174
+ 29, 116187, 116187, 395, 395, // #5175
+ 8, 116232, 116232, 2488, 2488, // #5176
+ 0, 116256, 116256, 3428, 3428, // #5177
+ 8, 116257, 116257, 2209, 2209, // #5178
+ 9, 116296, 116296, 2488, 2488, // #5179
+ 0, 116320, 116320, 3428, 3428, // #5180
+ 8, 116330, 116330, 2218, 2218, // #5181
+ 8, 116360, 116360, 2488, 2488, // #5182
+ 0, 116384, 116384, 3428, 3428, // #5183
+ 8, 116387, 116387, 1651, 1651, // #5184
+ 10, 116424, 116424, 2488, 2488, // #5185
+ 0, 116448, 116448, 3428, 3428, // #5186
+ 9, 116450, 116450, 882, 882, // #5187
+ 3, 116464, 116464, 1920, 1920, // #5188
+ 0, 116480, 116480, 3428, 3428, // #5189
+ 6, 116488, 116488, 1592, 1592, // #5190
+ 14, 116496, 116496, 3840, 3840, // #5191
+ 0, 116512, 116512, 3428, 3428, // #5192
+ 17, 116526, 116526, 814, 814, // #5193
+ 10, 116544, 116544, 3840, 3840, // #5194
+ 0, 116560, 116560, 3428, 3428, // #5195
+ 17, 116571, 116571, 715, 715, // #5196
+ 9, 116592, 116592, 3840, 3840, // #5197
+ 0, 116608, 116608, 3428, 3428, // #5198
+ 11, 116615, 116615, 295, 295, // #5199
+ 14, 116640, 116640, 3840, 3840, // #5200
+ 0, 116656, 116656, 3428, 3428, // #5201
+ 21, 116663, 116663, 327, 327, // #5202
+ 14, 116688, 116688, 3840, 3840, // #5203
+ 0, 116704, 116704, 3428, 3428, // #5204
+ 19, 116739, 116739, 307, 307, // #5205
+ 11, 116768, 116768, 3840, 3840, // #5206
+ 0, 116784, 116784, 3428, 3428, // #5207
+ 17, 116784, 116784, 224, 224, // #5208
+ 10, 116816, 116816, 3840, 3840, // #5209
+ 0, 116832, 116832, 3428, 3428, // #5210
+ 16, 116839, 116839, 583, 583, // #5211
+ 21, 116872, 116872, 1752, 1752, // #5212
+ 0, 116896, 116896, 3428, 3428, // #5213
+ 20, 116942, 116942, 3758, 3758, // #5214
+ 24, 116976, 116976, 416, 416, // #5215
+ 0, 117008, 117008, 3428, 3428, // #5216
+ 22, 117014, 117014, 262, 262, // #5217
+ 13, 117040, 117040, 3840, 3840, // #5218
+ 0, 117056, 117056, 3428, 3428, // #5219
+ 19, 117061, 117061, 3557, 3557, // #5220
+ 18, 117096, 117096, 1752, 1752, // #5221
+ 0, 117120, 117120, 3428, 3428, // #5222
+ 20, 117129, 117129, 121, 121, // #5223
+ 12, 117152, 117152, 3840, 3840, // #5224
+ 0, 117168, 117168, 3428, 3428, // #5225
+ 14, 117196, 117196, 1404, 1404, // #5226
+ 13, 117216, 117216, 3840, 3840, // #5227
+ 0, 117232, 117232, 3428, 3428, // #5228
+ 22, 117256, 117256, 504, 504, // #5229
+ 13, 117280, 117280, 3840, 3840, // #5230
+ 0, 117296, 117296, 3428, 3428, // #5231
+ 28, 117311, 117311, 527, 527, // #5232
+ 15, 117344, 117344, 3840, 3840, // #5233
+ 0, 117360, 117360, 3428, 3428, // #5234
+ 24, 117364, 117364, 708, 708, // #5235
+ 17, 117400, 117400, 1752, 1752, // #5236
+ 0, 117424, 117424, 3428, 3428, // #5237
+ 19, 117455, 117455, 3263, 3263, // #5238
+ 14, 117488, 117488, 3840, 3840, // #5239
+ 0, 117504, 117504, 3428, 3428, // #5240
+ 23, 117513, 117513, 1097, 1097, // #5241
+ 23, 117560, 117560, 1752, 1752, // #5242
+ 0, 117584, 117584, 3428, 3428, // #5243
+ 22, 117593, 117593, 265, 265, // #5244
+ 16, 117624, 117624, 1752, 1752, // #5245
+ 0, 117648, 117648, 3428, 3428, // #5246
+ 19, 117701, 117701, 3893, 3893, // #5247
+ 22, 117736, 117736, 1752, 1752, // #5248
+ 0, 117760, 117760, 3428, 3428, // #5249
+ 35, 117768, 117768, 328, 328, // #5250
+ 27, 117808, 117808, 416, 416, // #5251
+ 0, 117840, 117840, 3428, 3428, // #5252
+ 29, 117900, 117900, 188, 188, // #5253
+ 12, 117936, 117936, 3840, 3840, // #5254
+ 0, 117952, 117952, 3428, 3428, // #5255
+ 13, 117958, 117958, 1926, 1926, // #5256
+ 13, 117984, 117984, 3840, 3840, // #5257
+ 0, 118000, 118000, 3428, 3428, // #5258
+ 15, 118027, 118027, 4027, 4027, // #5259
+ 15, 118048, 118048, 3840, 3840, // #5260
+ 0, 118064, 118064, 3428, 3428, // #5261
+ 12, 118078, 118078, 3918, 3918, // #5262
+ 14, 118096, 118096, 3840, 3840, // #5263
+ 0, 118112, 118112, 3428, 3428, // #5264
+ 16, 118117, 118117, 965, 965, // #5265
+ 31, 118144, 118144, 3584, 3584, // #5266
+ 0, 118176, 118176, 3428, 3428, // #5267
+ 32, 118185, 118185, 3081, 3081, // #5268
+ 9, 118224, 118224, 3840, 3840, // #5269
+ 0, 118240, 118240, 3428, 3428, // #5270
+ 11, 118240, 118240, 3520, 3520, // #5271
+ 10, 118256, 118256, 2128, 2128, // #5272
+ 0, 118272, 118272, 3428, 3428, // #5273
+ 12, 118276, 118276, 2788, 2788, // #5274
+};
+
+struct StringData fromUtf8Data = {
+ intData,
+ { charData },
+ 5275, /* entryCount */
+ 1976 /* maxLength */
+};
+
+// average comparison length: 9.7492
+// cache-line crosses: 296 (2.8%)
+// alignment histogram:
+// 0xXXX0 = 4778 (45.3%) strings, 2389 (50.0%) of which same-aligned
+// 0xXXX1 = 30 (0.3%) strings, 15 (50.0%) of which same-aligned
+// 0xXXX2 = 52 (0.5%) strings, 26 (50.0%) of which same-aligned
+// 0xXXX3 = 58 (0.5%) strings, 29 (50.0%) of which same-aligned
+// 0xXXX4 = 322 (3.1%) strings, 161 (50.0%) of which same-aligned
+// 0xXXX5 = 48 (0.5%) strings, 24 (50.0%) of which same-aligned
+// 0xXXX6 = 38 (0.4%) strings, 19 (50.0%) of which same-aligned
+// 0xXXX7 = 34 (0.3%) strings, 17 (50.0%) of which same-aligned
+// 0xXXX8 = 4882 (46.3%) strings, 2441 (50.0%) of which same-aligned
+// 0xXXX9 = 44 (0.4%) strings, 22 (50.0%) of which same-aligned
+// 0xXXXa = 56 (0.5%) strings, 28 (50.0%) of which same-aligned
+// 0xXXXb = 30 (0.3%) strings, 15 (50.0%) of which same-aligned
+// 0xXXXc = 54 (0.5%) strings, 27 (50.0%) of which same-aligned
+// 0xXXXd = 38 (0.4%) strings, 19 (50.0%) of which same-aligned
+// 0xXXXe = 42 (0.4%) strings, 21 (50.0%) of which same-aligned
+// 0xXXXf = 44 (0.4%) strings, 22 (50.0%) of which same-aligned
+// total = 10550 (100%) strings, 5275 (50.0%) of which same-aligned
diff --git a/tests/benchmarks/corelib/tools/qstring/generatelist.pl b/tests/benchmarks/corelib/tools/qstring/generatelist.pl
new file mode 100644
index 0000000000..c44b77d869
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/generatelist.pl
@@ -0,0 +1,198 @@
+#!/usr/bin/perl
+## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+## All rights reserved.
+## Contact: Nokia Corporation (qt-info@nokia.com)
+##
+## This file is part of the QtCore module of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## No Commercial Usage
+## This file contains pre-release code and may not be distributed.
+## You may use this file in accordance with the terms and conditions
+## contained in the Technology Preview License Agreement accompanying
+## this package.
+##
+## GNU Lesser General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU Lesser
+## General Public License version 2.1 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 2.1 requirements
+## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+##
+## In addition, as a special exception, Nokia gives you certain additional
+## rights. These rights are described in the Nokia Qt LGPL Exception
+## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+##
+## If you have questions regarding the use of this file, please contact
+## Nokia at qt-info@nokia.com.
+##
+##
+##
+##
+##
+##
+##
+##
+## $QT_END_LICENSE$
+#
+# Parses a file (passed as argument) that contains a dump of pairs of
+# strings and generates C source code including said data.
+#
+# The format of the file is:
+# LEN = <len> <keyword> <align1> <align2>\n<data1><data2>\n
+# where:
+# LEN the literal string "LEN"
+# <len> the length of the data, in 16-bit words
+# <keyword> the literal string "SAME" or "DIFF"
+# <align1> the alignment or pointer value of the first data
+# <align2> the alignment or pointer value of the second data
+# <data1> the first data
+# <data2> the second data
+# \n newline
+#
+# The code to write this data would be:
+# fprintf(out, "LEN = %d %s %d %d\n", len,
+# (p1 == p2) ? "SAME" : "DIFF",
+# uint(quintptr(p1)) & 0xfff, uint(quintptr(p2)) & 0xfff);
+# fwrite(p1, 2, len, out);
+# fwrite(p2, 2, len, out);
+# fwrite("\n", 1, 1, out);
+
+sub printUshortArray($$$) {
+ $str = $_[0];
+ $align = $_[1] & 0x1f;
+ $offset = $_[2];
+
+ die if ($align & 1) != 0;
+ $align /= 2;
+
+ $len = (length $str) / 2;
+ $headpadding = $align & 0x7;
+ $tailpadding = 8 - (($len + $headpadding) & 0x7);
+ $multiplecachelines = ($align + $len) > 0x20;
+
+ if ($multiplecachelines) {
+ # if this string crosses into a new cacheline, then
+ # replicate the result
+ $headpadding |= ($offset & ~0x1f);
+ $headpadding += 0x20
+ if ($headpadding < $offset);
+ $headpadding -= $offset;
+ ++$cachelinecrosses;
+ }
+ for $i (1..$headpadding) {
+ print 65536-$i,",";
+ }
+ print "\n " if ($headpadding > 0);
+ print " " if ($headpadding == 0);
+
+ for ($i = 0; $i < $len * 2; $i += 2) {
+ print " ", ord(substr($str, $i, 1)) +
+ ord(substr($str, $i + 1, 1)) * 256,
+ ",";
+ }
+ print "\n " if ($tailpadding > 0);
+
+ for $i (1..$tailpadding) {
+ print 65536-$i, ",";
+ }
+ print " // ", $offset + $headpadding + $len + $tailpadding;
+ print "+" if $multiplecachelines;
+
+ return ($offset + $headpadding, $offset + $headpadding + $len + $tailpadding);
+}
+
+print "// This is a generated file - DO NOT EDIT\n\n";
+
+print "#include \"data.h\"\n\n";
+
+print "const ushort stringCollectionData[] __attribute__((aligned(64))) = {\n";
+$count = 0;
+$offset = 0;
+$totalsize = 0;
+$maxlen = 0;
+$cachelinecrosses = 0;
+
+open IN, "<" . $ARGV[0];
+while (1) {
+ $line = readline(*IN);
+ last unless defined($line);
+ $line =~ /LEN = (\d+) (\w+) (\d+) (\d+)/;
+ $len = $1;
+ $data[$count]->{len} = $len;
+ $sameptr = $2;
+ $data[$count]->{align1} = $3 - 0;
+ $data[$count]->{align2} = $4 - 0;
+
+ # statistics
+ $alignhistogram{$3 & 0xf}++;
+ $alignhistogram{$4 & 0xf}++;
+ $samealignments{$3 & 0xf}++ if ($3 & 0xf) == ($4 & 0xf);
+
+ read IN, $a, $len * 2;
+ read IN, $b, $len * 2;
+
+ <IN>; # Eat the newline
+
+ if ($len == 0) {
+ $data[$count]->{offset1} = $offset;
+ $data[$count]->{offset2} = $data[$count]->{offset1};
+ ++$data[$count]->{offset2} if ($sameptr eq "DIFF");
+ } else {
+ print " // #$count\n";
+ print " ";
+ ($data[$count]->{offset1}, $offset) =
+ printUshortArray($a, $data[$count]->{align1}, $offset);
+ print "\n ";
+ die if ($offset & 0x7) != 0;
+
+ if ($sameptr eq "DIFF") {
+ ($data[$count]->{offset2}, $offset) =
+ printUshortArray($b, $data[$count]->{align2}, $offset);
+ print "\n\n";
+ } else {
+ $data[$count]->{offset2} = $data[$count]->{offset1};
+ print "\n\n";
+ }
+ }
+ ++$count;
+
+ $totalsize += $len;
+ $maxlen = $len if $len > $maxlen;
+}
+print "};\n";
+close IN;
+
+print "const struct StringCollection stringCollection[] = {\n";
+for $i (0..$count-1) {
+ print " {",
+ $data[$i]->{len}, ", ",
+ $data[$i]->{offset1}, ", ",
+ $data[$i]->{offset2}, ", ",
+ $data[$i]->{align1}, ", ",
+ $data[$i]->{align2},
+ "}, // #$i\n";
+ next if $data[$i]->{len} == 0;
+ die if (($data[$i]->{offset1} & 0x7) != ($data[$i]->{align1} & 0xf)/2);
+ die if (($data[$i]->{offset2} & 0x7) != ($data[$i]->{align2} & 0xf)/2);
+}
+print "};\n";
+
+print "const int stringCollectionCount = $count;\n";
+print "const int stringCollectionMaxLen = $maxlen;\n";
+printf "// average comparison length: %.4f\n", ($totalsize * 1.0 / $count);
+printf "// cache-line crosses: %d (%.1f%%)\n",
+ $cachelinecrosses, ($cachelinecrosses * 100.0 / $count / 2);
+
+print "// alignment histogram:\n";
+for $key (sort { $a <=> $b } keys(%alignhistogram)) {
+ $value = $alignhistogram{$key};
+ $samealigned = $samealignments{$key};
+ printf "// 0xXXX%x = %d (%.1f%%) strings, %d (%.1f%%) of which same-aligned\n",
+ $key, $value, $value * 100.0 / ($count*2),
+ $samealigned, $samealigned * 100.0 / $value;
+ $samealignedtotal += $samealigned;
+}
+printf "// total = %d (100%) strings, %d (%.1f%%) of which same-aligned\n",
+ $count * 2, $samealignedtotal, $samealignedtotal * 100 / $count / 2;
diff --git a/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl b/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl
new file mode 100644
index 0000000000..077174d86a
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/generatelist_char.pl
@@ -0,0 +1,208 @@
+#!/usr/bin/perl
+# -*- mode: utf-8; tabs: nil -*-
+## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+## All rights reserved.
+## Contact: Nokia Corporation (qt-info@nokia.com)
+##
+## This file is part of the QtCore module of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## No Commercial Usage
+## This file contains pre-release code and may not be distributed.
+## You may use this file in accordance with the terms and conditions
+## contained in the Technology Preview License Agreement accompanying
+## this package.
+##
+## GNU Lesser General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU Lesser
+## General Public License version 2.1 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 2.1 requirements
+## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+##
+## In addition, as a special exception, Nokia gives you certain additional
+## rights. These rights are described in the Nokia Qt LGPL Exception
+## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+##
+## If you have questions regarding the use of this file, please contact
+## Nokia at qt-info@nokia.com.
+##
+##
+##
+##
+##
+##
+##
+##
+## $QT_END_LICENSE$
+#
+# Parses a file (passed as argument) that contains a dump of pairs of
+# strings and generates C source code including said data.
+#
+# The format of the file is:
+# LEN = <len> <keyword> <align1> <align2>\n<data1><data2>\n
+# where:
+# LEN the literal string "LEN"
+# <len> the length of the data, in 16-bit words
+# <keyword> the literal string "SAME" or "DIFF"
+# <align1> the alignment or pointer value of the first data
+# <align2> the alignment or pointer value of the second data
+# <data1> the first data
+# <data2> the second data
+# \n newline
+#
+# The code to write this data would be:
+# fprintf(out, "LEN = %d %s %d %d\n", len,
+# (p1 == p2) ? "SAME" : "DIFF",
+# uint(quintptr(p1)) & 0xfff, uint(quintptr(p2)) & 0xfff);
+# fwrite(p1, 2, len, out);
+# fwrite(p2, 2, len, out);
+# fwrite("\n", 1, 1, out);
+
+sub printCharArray($$$) {
+ $str = $_[0];
+ $align = $_[1] & 0x3f;
+ $offset = $_[2];
+
+ $headpadding = $align & 0xf;
+ $tailpadding = 16 - (($len + $headpadding) & 0xf);
+ $multiplecachelines = ($align + $len) > 0x40;
+
+ if ($multiplecachelines) {
+ # if this string crosses into a new cacheline, then
+ # replicate the result
+ $headpadding |= ($offset & ~0x3f);
+ $headpadding += 0x40
+ if ($headpadding < $offset);
+ $headpadding -= $offset;
+ ++$cachelinecrosses;
+ }
+
+ if ($headpadding > 0) {
+ print " \"";
+ for $i (1..$headpadding) {
+ printf "\\%o", 256-$i;
+ }
+ print "\"\n";
+ }
+
+ print " \"";
+ for ($i = 0; $i < $len; $i++) {
+ $c = substr($str, $i, 1);
+ if (ord($c) < 0x20 || ord($c) > 0x7f || $c eq '"' || $c eq '\\') {
+ printf "\\%o\"\"", ord($c);
+ } else {
+ print $c;
+ }
+ }
+
+ if ($tailpadding > 0) {
+ print "\"\n \"";
+ for $i (1..$tailpadding) {
+ printf "\\%o", 256-$i;
+ }
+ }
+ print "\" // ", $offset + $headpadding + $len + $tailpadding;
+ print "+" if $multiplecachelines;
+ print "\n";
+
+ return ($offset + $headpadding, $offset + $headpadding + $len + $tailpadding);
+}
+
+print "// This is a generated file - DO NOT EDIT\n\n";
+
+print "#include \"data.h\"\n\n";
+
+$varname = shift @ARGV;
+print "static const char charData[] __attribute__((aligned(64))) = {\n";
+$count = 0;
+$offset = 0;
+$totalsize = 0;
+$maxlen = 0;
+$cachelinecrosses = 0;
+
+open IN, "<" . $ARGV[0];
+while (1) {
+ $line = readline(*IN);
+ last unless defined($line);
+ $line =~ /LEN = (\d+) (\w+) (\d+) (\d+)/;
+ $len = $1;
+ $data[$count]->{len} = $len;
+ $sameptr = $2;
+ $data[$count]->{align1} = $3 - 0;
+ $data[$count]->{align2} = $4 - 0;
+
+ # statistics
+ $alignhistogram{$3 & 0xf}++;
+ $alignhistogram{$4 & 0xf}++;
+ $samealignments{$3 & 0xf}++ if ($3 & 0xf) == ($4 & 0xf);
+
+ read IN, $a, $len;
+ read IN, $b, $len;
+
+ <IN>; # Eat the newline
+
+ if ($len == 0) {
+ $data[$count]->{offset1} = $offset;
+ $data[$count]->{offset2} = $data[$count]->{offset1};
+ ++$data[$count]->{offset2} if ($sameptr eq "DIFF");
+ } else {
+ print " // #$count\n";
+ ($data[$count]->{offset1}, $offset) =
+ printCharArray($a, $data[$count]->{align1}, $offset);
+ die if ($offset & 0xf) != 0;
+
+ if ($sameptr eq "DIFF") {
+ ($data[$count]->{offset2}, $offset) =
+ printCharArray($b, $data[$count]->{align2}, $offset);
+ } else {
+ $data[$count]->{offset2} = $data[$count]->{offset1};
+ }
+ print "\n";
+ }
+ ++$count;
+
+ $totalsize += $len;
+ $maxlen = $len if $len > $maxlen;
+}
+print "};\n";
+close IN;
+
+print "static const int intData[] = {\n";
+for $i (0..$count-1) {
+ print " ",
+ $data[$i]->{len}, ", ",
+ $data[$i]->{offset1}, ", ",
+ $data[$i]->{offset2}, ", ",
+ $data[$i]->{align1}, ", ",
+ $data[$i]->{align2},
+ ", // #$i\n";
+ next if $data[$i]->{len} == 0;
+ die if (($data[$i]->{offset1} & 0xf) != ($data[$i]->{align1} & 0xf));
+ die if (($data[$i]->{offset2} & 0xf) != ($data[$i]->{align2} & 0xf));
+}
+print "};\n\n";
+
+print "struct StringData $varname = {\n" .
+ " intData,\n" .
+ " { charData },\n" .
+ " $count, /* entryCount */\n" .
+ " $maxlen /* maxLength */\n" .
+ "};\n\n";
+
+printf "// average comparison length: %.4f\n", ($totalsize * 1.0 / $count);
+printf "// cache-line crosses: %d (%.1f%%)\n",
+ $cachelinecrosses, ($cachelinecrosses * 100.0 / $count / 2);
+
+print "// alignment histogram:\n";
+for $key (sort { $a <=> $b } keys(%alignhistogram)) {
+ $value = $alignhistogram{$key};
+ $samealigned = $samealignments{$key};
+ printf "// 0xXXX%x = %d (%.1f%%) strings, %d (%.1f%%) of which same-aligned\n",
+ $key, $value, $value * 100.0 / ($count*2),
+ $samealigned, $samealigned * 100.0 / $value;
+ $samealignedtotal += $samealigned;
+}
+printf "// total = %d (100%) strings, %d (%.1f%%) of which same-aligned\n",
+ $count * 2, $samealignedtotal, $samealignedtotal * 100 / $count / 2;
diff --git a/tests/benchmarks/corelib/tools/qstring/main.cpp b/tests/benchmarks/corelib/tools/qstring/main.cpp
new file mode 100644
index 0000000000..96f2c30cf4
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/main.cpp
@@ -0,0 +1,2601 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QStringList>
+#include <QFile>
+#include <QtTest/QtTest>
+
+#ifdef Q_OS_SYMBIAN
+// In Symbian OS test data is located in applications private dir
+// Application private dir is default serach path for files, so SRCDIR can be set to empty
+#define SRCDIR ""
+#endif
+
+#ifdef Q_OS_UNIX
+#include <sys/mman.h>
+#include <unistd.h>
+#endif
+
+#include <private/qsimd_p.h>
+
+#include "data.h"
+
+class tst_QString: public QObject
+{
+ Q_OBJECT
+public:
+ tst_QString();
+private slots:
+ void equals() const;
+ void equals_data() const;
+ void equals2_data() const;
+ void equals2() const;
+ void ucstrncmp_data() const;
+ void ucstrncmp() const;
+ void fromUtf8() const;
+ void fromLatin1_data() const;
+ void fromLatin1() const;
+ void fromLatin1Alternatives_data() const;
+ void fromLatin1Alternatives() const;
+ void fromUtf8Alternatives_data() const;
+ void fromUtf8Alternatives() const;
+};
+
+void tst_QString::equals() const
+{
+ QFETCH(QString, a);
+ QFETCH(QString, b);
+
+ QBENCHMARK {
+ a == b;
+ }
+}
+
+tst_QString::tst_QString()
+{
+}
+
+void tst_QString::equals_data() const
+{
+ static const struct {
+ ushort data[80];
+ int dummy; // just to ensure 4-byte alignment
+ } data = {
+ {
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, // 16
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, // 32
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, // 48
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, // 64
+ 64, 64, 64, 64, 96, 96, 96, 96,
+ 64, 64, 96, 96, 96, 96, 96, 96 // 80
+ }, 0
+ };
+ const QChar *ptr = reinterpret_cast<const QChar *>(data.data);
+
+ QTest::addColumn<QString>("a");
+ QTest::addColumn<QString>("b");
+ QString base = QString::fromRawData(ptr, 64);
+
+ QTest::newRow("different-length") << base << QString::fromRawData(ptr, 4);
+ QTest::newRow("same-string") << base << base;
+ QTest::newRow("same-data") << base << QString::fromRawData(ptr, 64);
+
+ // try to avoid crossing a cache line (that is, at ptr[64])
+ QTest::newRow("aligned-aligned-4n")
+ << QString::fromRawData(ptr, 60) << QString::fromRawData(ptr + 2, 60);
+ QTest::newRow("aligned-unaligned-4n")
+ << QString::fromRawData(ptr, 60) << QString::fromRawData(ptr + 1, 60);
+ QTest::newRow("unaligned-unaligned-4n")
+ << QString::fromRawData(ptr + 1, 60) << QString::fromRawData(ptr + 3, 60);
+
+ QTest::newRow("aligned-aligned-4n+1")
+ << QString::fromRawData(ptr, 61) << QString::fromRawData(ptr + 2, 61);
+ QTest::newRow("aligned-unaligned-4n+1")
+ << QString::fromRawData(ptr, 61) << QString::fromRawData(ptr + 1, 61);
+ QTest::newRow("unaligned-unaligned-4n+1")
+ << QString::fromRawData(ptr + 1, 61) << QString::fromRawData(ptr + 3, 61);
+
+ QTest::newRow("aligned-aligned-4n-1")
+ << QString::fromRawData(ptr, 59) << QString::fromRawData(ptr + 2, 59);
+ QTest::newRow("aligned-unaligned-4n-1")
+ << QString::fromRawData(ptr, 59) << QString::fromRawData(ptr + 1, 59);
+ QTest::newRow("unaligned-unaligned-4n-1")
+ << QString::fromRawData(ptr + 1, 59) << QString::fromRawData(ptr + 3, 59);
+
+ QTest::newRow("aligned-aligned-2n")
+ << QString::fromRawData(ptr, 58) << QString::fromRawData(ptr + 2, 58);
+ QTest::newRow("aligned-unaligned-2n")
+ << QString::fromRawData(ptr, 58) << QString::fromRawData(ptr + 1, 58);
+ QTest::newRow("unaligned-unaligned-2n")
+ << QString::fromRawData(ptr + 1, 58) << QString::fromRawData(ptr + 3, 58);
+}
+
+static bool equals2_memcmp_call(const ushort *p1, const ushort *p2, int len)
+{
+ return memcmp(p1, p2, len * 2) == 0;
+}
+
+static bool equals2_bytewise(const ushort *p1, const ushort *p2, int len)
+{
+ if (p1 == p2 || !len)
+ return true;
+ uchar *b1 = (uchar *)p1;
+ uchar *b2 = (uchar *)p2;
+ len *= 2;
+ while (len--)
+ if (*b1++ != *b2++)
+ return false;
+ return true;
+}
+
+static bool equals2_shortwise(const ushort *p1, const ushort *p2, int len)
+{
+ if (p1 == p2 || !len)
+ return true;
+// for (register int counter; counter < len; ++counter)
+// if (p1[counter] != p2[counter])
+// return false;
+ while (len--) {
+ if (p1[len] != p2[len])
+ return false;
+ }
+ return true;
+}
+
+static bool equals2_intwise(const ushort *p1, const ushort *p2, int length)
+{
+ if (p1 == p2 || !length)
+ return true;
+ register union {
+ const quint16 *w;
+ const quint32 *d;
+ quintptr value;
+ } sa, sb;
+ sa.w = p1;
+ sb.w = p2;
+
+ // check alignment
+ if ((sa.value & 2) == (sb.value & 2)) {
+ // both addresses have the same alignment
+ if (sa.value & 2) {
+ // both addresses are not aligned to 4-bytes boundaries
+ // compare the first character
+ if (*sa.w != *sb.w)
+ return false;
+ --length;
+ ++sa.w;
+ ++sb.w;
+
+ // now both addresses are 4-bytes aligned
+ }
+
+ // both addresses are 4-bytes aligned
+ // do a fast 32-bit comparison
+ register const quint32 *e = sa.d + (length >> 1);
+ for ( ; sa.d != e; ++sa.d, ++sb.d) {
+ if (*sa.d != *sb.d)
+ return false;
+ }
+
+ // do we have a tail?
+ return (length & 1) ? *sa.w == *sb.w : true;
+ } else {
+ // one of the addresses isn't 4-byte aligned but the other is
+ register const quint16 *e = sa.w + length;
+ for ( ; sa.w != e; ++sa.w, ++sb.w) {
+ if (*sa.w != *sb.w)
+ return false;
+ }
+ }
+ return true;
+}
+
+static inline bool equals2_short_tail(const ushort *p1, const ushort *p2, int len)
+{
+ if (len) {
+ if (*p1 != *p2)
+ return false;
+ if (--len) {
+ if (p1[1] != p2[1])
+ return false;
+ if (--len) {
+ if (p1[2] != p2[2])
+ return false;
+ if (--len) {
+ if (p1[3] != p2[3])
+ return false;
+ if (--len) {
+ if (p1[4] != p2[4])
+ return false;
+ if (--len) {
+ if (p1[5] != p2[5])
+ return false;
+ if (--len) {
+ if (p1[6] != p2[6])
+ return false;
+ return p1[7] == p2[7];
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return true;
+}
+
+//#pragma GCC optimize("no-unroll-loops")
+#ifdef __SSE2__
+static bool equals2_sse2_aligned(const ushort *p1, const ushort *p2, int len)
+{
+ if (len >= 8) {
+ qptrdiff counter = 0;
+ while (len > 8) {
+ __m128i q1 = _mm_load_si128((__m128i *)(p1 + counter));
+ __m128i q2 = _mm_load_si128((__m128i *)(p2 + counter));
+ __m128i cmp = _mm_cmpeq_epi16(q1, q2);
+ if (ushort(_mm_movemask_epi8(cmp)) != ushort(0xffff))
+ return false;
+
+ len -= 8;
+ counter += 8;
+ }
+ p1 += counter;
+ p2 += counter;
+ }
+
+ return equals2_short_tail(p1, p2, len);
+}
+
+static bool equals2_sse2(const ushort *p1, const ushort *p2, int len)
+{
+ if (p1 == p2 || !len)
+ return true;
+
+ if (len >= 8) {
+ qptrdiff counter = 0;
+ while (len >= 8) {
+ __m128i q1 = _mm_loadu_si128((__m128i *)(p1 + counter));
+ __m128i q2 = _mm_loadu_si128((__m128i *)(p2 + counter));
+ __m128i cmp = _mm_cmpeq_epi16(q1, q2);
+ if (ushort(_mm_movemask_epi8(cmp)) != 0xffff)
+ return false;
+
+ len -= 8;
+ counter += 8;
+ }
+ p1 += counter;
+ p2 += counter;
+ }
+
+ return equals2_short_tail(p1, p2, len);
+}
+
+//static bool equals2_sse2(const ushort *p1, const ushort *p2, int len)
+//{
+// register int val1 = quintptr(p1) & 0xf;
+// register int val2 = quintptr(p2) & 0xf;
+// if (false && val1 + val2 == 0)
+// return equals2_sse2_aligned(p1, p2, len);
+// else
+// return equals2_sse2_unaligned(p1, p2, len);
+//}
+
+static bool equals2_sse2_aligning(const ushort *p1, const ushort *p2, int len)
+{
+ if (len < 8)
+ return equals2_short_tail(p1, p2, len);
+
+ qptrdiff counter = 0;
+
+ // which one is easier to align, p1 or p2 ?
+ register int val1 = quintptr(p1) & 0xf;
+ register int val2 = quintptr(p2) & 0xf;
+ if (val1 && val2) {
+#if 0
+ // we'll align the one which requires the least number of steps
+ if (val1 > val2) {
+ qSwap(p1, p2);
+ val1 = val2;
+ }
+
+ // val1 contains the number of bytes past the 16-aligned mark
+ // we must read 16-val1 bytes to align
+ val1 = 16 - val1;
+ if (val1 & 0x2) {
+ if (*p1 != *p2)
+ return false;
+ --len;
+ ++counter;
+ }
+ while (val1 & 12) {
+ if (*(uint*)p1 != *(uint*)p2)
+ return false;
+ --len;
+ counter += 2;
+ val1 -= 4;
+ }
+#else
+ // we'll align the one closest to the 16-byte mark
+ if (val1 > val2) {
+ qSwap(p1, p2);
+ val1 = val2;
+ }
+
+ // we're reading val1 bytes too many
+ __m128i q2 = _mm_loadu_si128((__m128i *)(p2 - val1/2));
+ __m128i cmp = _mm_cmpeq_epi16(*(__m128i *)(p1 - val1/2), q2);
+ if (short(_mm_movemask_epi8(cmp)) >> val1 != short(-1))
+ return false;
+
+ counter = 8 - val1/2;
+ len -= 8 - val1/2;
+#endif
+ } else if (!val2) {
+ // p2 is already aligned
+ qSwap(p1, p2);
+ }
+
+ // p1 is aligned
+
+ while (len >= 8) {
+ __m128i q1 = _mm_load_si128((__m128i *)(p1 + counter));
+ __m128i q2 = _mm_loadu_si128((__m128i *)(p2 + counter));
+ __m128i cmp = _mm_cmpeq_epi16(q1, q2);
+ if (ushort(_mm_movemask_epi8(cmp)) != ushort(0xffff))
+ return false;
+
+ len -= 8;
+ counter += 8;
+ }
+
+ // tail
+ return equals2_short_tail(p1 + counter, p2 + counter, len);
+}
+
+#ifdef __SSE3__
+static bool equals2_sse3(const ushort *p1, const ushort *p2, int len)
+{
+ if (p1 == p2 || !len)
+ return true;
+
+ if (len >= 8) {
+ qptrdiff counter = 0;
+ while (len >= 8) {
+ __m128i q1 = _mm_lddqu_si128((__m128i *)(p1 + counter));
+ __m128i q2 = _mm_lddqu_si128((__m128i *)(p2 + counter));
+ __m128i cmp = _mm_cmpeq_epi16(q1, q2);
+ if (ushort(_mm_movemask_epi8(cmp)) != 0xffff)
+ return false;
+
+ len -= 8;
+ counter += 8;
+ }
+ p1 += counter;
+ p2 += counter;
+ }
+
+ return equals2_short_tail(p1, p2, len);
+}
+
+#ifdef __SSSE3__
+template<int N> static inline bool equals2_ssse3_alignr(__m128i *m1, __m128i *m2, int len)
+{
+ __m128i lower = _mm_load_si128(m1);
+ while (len >= 8) {
+ __m128i upper = _mm_load_si128(m1 + 1);
+ __m128i correct;
+ correct = _mm_alignr_epi8(upper, lower, N);
+
+ __m128i q2 = _mm_lddqu_si128(m2);
+ __m128i cmp = _mm_cmpeq_epi16(correct, q2);
+ if (ushort(_mm_movemask_epi8(cmp)) != 0xffff)
+ return false;
+
+ len -= 8;
+ ++m2;
+ ++m1;
+ lower = upper;
+ }
+
+ // tail
+ return len == 0 || equals2_short_tail((const ushort *)m1 + N / 2, (const ushort*)m2, len);
+}
+
+static inline bool equals2_ssse3_aligned(__m128i *m1, __m128i *m2, int len)
+{
+ while (len >= 8) {
+ __m128i q2 = _mm_lddqu_si128(m2);
+ __m128i cmp = _mm_cmpeq_epi16(*m1, q2);
+ if (ushort(_mm_movemask_epi8(cmp)) != 0xffff)
+ return false;
+
+ len -= 8;
+ ++m1;
+ ++m2;
+ }
+ return len == 0 || equals2_short_tail((const ushort *)m1, (const ushort *)m2, len);
+}
+
+static bool equals2_ssse3(const ushort *p1, const ushort *p2, int len)
+{
+ // p1 & 0xf can be:
+ // 0, 2, 4, 6, 8, 10, 12, 14
+ // If it's 0, we're aligned
+ // If it's not, then we're interested in the 16 - (p1 & 0xf) bytes only
+
+ if (len >= 8) {
+ // find the last aligned position below the p1 memory
+ __m128i *m1 = (__m128i *)(quintptr(p1) & ~0xf);
+ __m128i *m2 = (__m128i *)p2;
+ qptrdiff diff = quintptr(p1) - quintptr(m1);
+
+ // diff contains the number of extra bytes
+ if (diff == 10)
+ return equals2_ssse3_alignr<10>(m1, m2, len);
+ else if (diff == 2)
+ return equals2_ssse3_alignr<2>(m1, m2, len);
+ if (diff < 8) {
+ if (diff < 4) {
+ return equals2_ssse3_aligned(m1, m2, len);
+ } else {
+ if (diff == 4)
+ return equals2_ssse3_alignr<4>(m1, m2, len);
+ else // diff == 6
+ return equals2_ssse3_alignr<6>(m1, m2, len);
+ }
+ } else {
+ if (diff < 12) {
+ return equals2_ssse3_alignr<8>(m1, m2, len);
+ } else {
+ if (diff == 12)
+ return equals2_ssse3_alignr<12>(m1, m2, len);
+ else // diff == 14
+ return equals2_ssse3_alignr<14>(m1, m2, len);
+ }
+ }
+ }
+
+ // tail
+ return equals2_short_tail(p1, p2, len);
+}
+
+template<int N> static inline bool equals2_ssse3_aligning_alignr(__m128i *m1, __m128i *m2, int len)
+{
+ __m128i lower = _mm_load_si128(m1);
+ while (len >= 8) {
+ __m128i upper = _mm_load_si128(m1 + 1);
+ __m128i correct;
+ correct = _mm_alignr_epi8(upper, lower, N);
+
+ __m128i cmp = _mm_cmpeq_epi16(correct, *m2);
+ if (ushort(_mm_movemask_epi8(cmp)) != 0xffff)
+ return false;
+
+ len -= 8;
+ ++m2;
+ ++m1;
+ lower = upper;
+ }
+
+ // tail
+ return len == 0 || equals2_short_tail((const ushort *)m1 + N / 2, (const ushort*)m2, len);
+}
+
+static bool equals2_ssse3_aligning(const ushort *p1, const ushort *p2, int len)
+{
+ if (len < 8)
+ return equals2_short_tail(p1, p2, len);
+ qptrdiff counter = 0;
+
+ // which one is easier to align, p1 or p2 ?
+ {
+ register int val1 = quintptr(p1) & 0xf;
+ register int val2 = quintptr(p2) & 0xf;
+ if (val1 && val2) {
+ // we'll align the one closest to the 16-byte mark
+ if (val1 < val2) {
+ qSwap(p1, p2);
+ val2 = val1;
+ }
+
+ // we're reading val1 bytes too many
+ __m128i q1 = _mm_lddqu_si128((__m128i *)(p1 - val2/2));
+ __m128i cmp = _mm_cmpeq_epi16(q1, *(__m128i *)(p2 - val2/2));
+ if (short(_mm_movemask_epi8(cmp)) >> val1 != short(-1))
+ return false;
+
+ counter = 8 - val2/2;
+ len -= 8 - val2/2;
+ } else if (!val1) {
+ // p1 is already aligned
+ qSwap(p1, p2);
+ }
+ }
+
+ // p2 is aligned now
+ // we want to use palignr in the mis-alignment of p1
+ __m128i *m1 = (__m128i *)(quintptr(p1 + counter) & ~0xf);
+ __m128i *m2 = (__m128i *)(p2 + counter);
+ register int val1 = quintptr(p1 + counter) - quintptr(m1);
+
+ // val1 contains the number of extra bytes
+ if (val1 == 8)
+ return equals2_ssse3_aligning_alignr<8>(m1, m2, len);
+ if (val1 == 0)
+ return equals2_sse2_aligned(p1 + counter, p2 + counter, len);
+ if (val1 < 8) {
+ if (val1 < 4) {
+ return equals2_ssse3_aligning_alignr<2>(m1, m2, len);
+ } else {
+ if (val1 == 4)
+ return equals2_ssse3_aligning_alignr<4>(m1, m2, len);
+ else // diff == 6
+ return equals2_ssse3_aligning_alignr<6>(m1, m2, len);
+ }
+ } else {
+ if (val1 < 12) {
+ return equals2_ssse3_aligning_alignr<10>(m1, m2, len);
+ } else {
+ if (val1 == 12)
+ return equals2_ssse3_aligning_alignr<12>(m1, m2, len);
+ else // diff == 14
+ return equals2_ssse3_aligning_alignr<14>(m1, m2, len);
+ }
+ }
+}
+
+#ifdef __SSE4_1__
+static bool equals2_sse4(const ushort *p1, const ushort *p2, int len)
+{
+ // We use the pcmpestrm instruction searching for differences (negative polarity)
+ // it will reset CF if it's all equal
+ // it will reset OF if the first char is equal
+ // it will set ZF & SF if the length is less than 8 (which means we've done the last operation)
+ // the three possible conditions are:
+ // difference found: CF = 1
+ // all equal, not finished: CF = ZF = SF = 0
+ // all equal, finished: CF = 0, ZF = SF = 1
+ // We use the JA instruction that jumps if ZF = 0 and CF = 0
+ if (p1 == p2 || !len)
+ return true;
+
+ // This function may read some bytes past the end of p1 or p2
+ // It is safe to do that, as long as those extra bytes (beyond p1+len and p2+len)
+ // are on the same page as the last valid byte.
+ // If len is a multiple of 8, we'll never load invalid bytes.
+ if (len & 7) {
+ // The last load would load (len & ~7) valid bytes and (8 - (len & ~7)) invalid bytes.
+ // So we can't do the last load if any of those bytes is in a different
+ // page. That is, if:
+ // pX + len is on a different page from pX + (len & ~7) + 8
+ //
+ // that is, if second-to-last load ended up less than 16 bytes from the page end:
+ // pX + (len & ~7) is the last ushort read in the second-to-last load
+ if (len < 8)
+ return equals2_short_tail(p1, p2, len);
+ if ((quintptr(p1 + (len & ~7)) & 0xfff) > 0xff0 ||
+ (quintptr(p2 + (len & ~7)) & 0xfff) > 0xff0) {
+
+ // yes, so we mustn't do the final 128-bit load
+ bool result;
+ asm (
+ "sub %[p1], %[p2]\n\t"
+ "sub $16, %[p1]\n\t"
+ "add $8, %[len]\n\t"
+
+ // main loop:
+ "0:\n\t"
+ "add $16, %[p1]\n\t"
+ "sub $8, %[len]\n\t"
+ "jz 1f\n\t"
+ "lddqu (%[p1]), %%xmm0\n\t"
+ "mov %[len], %%edx\n\t"
+ "pcmpestri %[mode], (%[p2],%[p1]), %%xmm0\n\t"
+
+ "jna 1f\n\t"
+ "add $16, %[p1]\n\t"
+ "sub $8, %[len]\n\t"
+ "jz 1f\n\t"
+ "lddqu (%[p1]), %%xmm0\n\t"
+ "mov %[len], %%edx\n\t"
+ "pcmpestri %[mode], (%[p2],%[p1]), %%xmm0\n\t"
+
+ "ja 0b\n\t"
+ "1:\n\t"
+ "setnc %[result]\n\t"
+ : [result] "=a" (result),
+ [p1] "+r" (p1),
+ [p2] "+r" (p2)
+ : [len] "0" (len & ~7),
+ [mode] "i" (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY)
+ : "%edx", "%ecx", "%xmm0"
+ );
+ return result && equals2_short_tail(p1, (const ushort *)(quintptr(p1) + quintptr(p2)), len & 7);
+ }
+ }
+
+// const qptrdiff disp = p2 - p1;
+// p1 -= 8;
+// len += 8;
+// while (true) {
+// enum { Mode = _SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY };
+
+// p1 += 8;
+// len -= 8;
+// if (!len)
+// return true;
+
+// __m128i q1 = _mm_lddqu_si128((__m128i *)(p1 + disp));
+// __m128i *m2 = (__m128i *)p1;
+
+// bool cmp_a = _mm_cmpestra(q1, len, *m2, len, Mode);
+// if (cmp_a)
+// continue;
+// return !_mm_cmpestrc(q1, len, *m2, len, Mode);
+// }
+// return true;
+ bool result;
+ asm (
+ "sub %[p1], %[p2]\n\t"
+ "sub $16, %[p1]\n\t"
+ "add $8, %[len]\n\t"
+
+ "0:\n\t"
+ "add $16, %[p1]\n\t"
+ "sub $8, %[len]\n\t"
+ "jz 1f\n\t"
+ "lddqu (%[p2],%[p1]), %%xmm0\n\t"
+ "mov %[len], %%edx\n\t"
+ "pcmpestri %[mode], (%[p1]), %%xmm0\n\t"
+
+ "jna 1f\n\t"
+ "add $16, %[p1]\n\t"
+ "sub $8, %[len]\n\t"
+ "jz 1f\n\t"
+ "lddqu (%[p2],%[p1]), %%xmm0\n\t"
+ "mov %[len], %%edx\n\t"
+ "pcmpestri %[mode], (%[p1]), %%xmm0\n\t"
+
+ "ja 0b\n\t"
+
+ "1:\n\t"
+ "setnc %[result]\n\t"
+ : [result] "=a" (result)
+ : [len] "0" (len),
+ [p1] "r" (p1),
+ [p2] "r" (p2),
+ [mode] "i" (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY)
+ : "%edx", "%ecx", "%xmm0"
+ );
+ return result;
+}
+
+#endif
+#endif
+#endif
+#endif
+
+typedef bool (* FuncPtr)(const ushort *, const ushort *, int);
+static const FuncPtr func[] = {
+ equals2_memcmp_call, // 0
+ equals2_bytewise, // 1
+ equals2_shortwise, // 1
+ equals2_intwise, // 3
+#ifdef __SSE2__
+ equals2_sse2, // 4
+ equals2_sse2_aligning, // 5
+#ifdef __SSE3__
+ equals2_sse3, // 6
+#ifdef __SSSE3__
+ equals2_ssse3, // 7
+ equals2_ssse3, // 8
+#ifdef __SSE4_1__
+ equals2_sse4, // 9
+#endif
+#endif
+#endif
+#endif
+ 0
+};
+static const int functionCount = sizeof(func)/sizeof(func[0]) - 1;
+
+void tst_QString::equals2_data() const
+{
+ QTest::addColumn<int>("algorithm");
+ QTest::newRow("selftest") << -1;
+ QTest::newRow("memcmp_call") << 0;
+ QTest::newRow("bytewise") << 1;
+ QTest::newRow("shortwise") << 2;
+ QTest::newRow("intwise") << 3;
+#ifdef __SSE2__
+ QTest::newRow("sse2") << 4;
+ QTest::newRow("sse2_aligning") << 5;
+#ifdef __SSE3__
+ QTest::newRow("sse3") << 6;
+#ifdef __SSSE3__
+ QTest::newRow("ssse3") << 7;
+ QTest::newRow("ssse3_aligning") << 8;
+#ifdef __SSE4_1__
+ QTest::newRow("sse4.2") << 9;
+#endif
+#endif
+#endif
+#endif
+}
+
+static void __attribute__((noinline)) equals2_selftest()
+{
+#ifdef Q_OS_UNIX
+ const long pagesize = sysconf(_SC_PAGESIZE);
+ void *page1, *page3;
+ ushort *page2;
+ page1 = mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+ page2 = (ushort *)mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_POPULATE, -1, 0);
+ page3 = mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+
+ Q_ASSERT(quintptr(page2) == quintptr(page1) + pagesize || quintptr(page2) == quintptr(page1) - pagesize);
+ Q_ASSERT(quintptr(page3) == quintptr(page2) + pagesize || quintptr(page3) == quintptr(page2) - pagesize);
+ munmap(page1, pagesize);
+ munmap(page3, pagesize);
+
+ // populate our page
+ for (uint i = 0; i < pagesize / sizeof(long long); ++i)
+ ((long long *)page2)[i] = Q_INT64_C(0x0041004100410041);
+
+ // the following should crash:
+ //page2[-1] = 0xdead;
+ //page2[pagesize / sizeof(ushort) + 1] = 0xbeef;
+
+ static const ushort needle[] = {
+ 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
+ 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
+ 0x41
+ };
+
+ for (int algo = 0; algo < functionCount; ++algo) {
+ // boundary condition test:
+ for (int i = 0; i < 8; ++i) {
+ (func[algo])(page2 + i, needle, sizeof needle / 2);
+ (func[algo])(page2 - i - 1 - sizeof(needle)/2 + pagesize/2, needle, sizeof needle/2);
+ }
+ }
+
+ munmap(page2, pagesize);
+#endif
+
+ for (int algo = 0; algo < functionCount; ++algo) {
+ for (int i = 0; i < stringCollectionCount; ++i) {
+ const ushort *p1 = stringCollectionData + stringCollection[i].offset1;
+ const ushort *p2 = stringCollectionData + stringCollection[i].offset2;
+ bool expected = memcmp(p1, p2, stringCollection[i].len * 2) == 0;
+
+ bool result = (func[algo])(p1, p2, stringCollection[i].len);
+ if (expected != result)
+ qWarning().nospace()
+ << "algo=" << algo
+ << " i=" << i
+ << " failed (" << result << "!=" << expected
+ << "); strings were "
+ << QByteArray((char*)p1, stringCollection[i].len).toHex()
+ << " and "
+ << QByteArray((char*)p2, stringCollection[i].len).toHex();
+ }
+ }
+}
+
+void tst_QString::equals2() const
+{
+ QFETCH(int, algorithm);
+ if (algorithm == -1) {
+ equals2_selftest();
+ return;
+ }
+
+ QBENCHMARK {
+ for (int i = 0; i < stringCollectionCount; ++i) {
+ const ushort *p1 = stringCollectionData + stringCollection[i].offset1;
+ const ushort *p2 = stringCollectionData + stringCollection[i].offset2;
+ bool result = (func[algorithm])(p1, p2, stringCollection[i].len);
+ Q_UNUSED(result);
+ }
+ }
+}
+
+static int ucstrncmp_shortwise(const ushort *a, const ushort *b, int l)
+{
+ while (l-- && *a == *b)
+ a++,b++;
+ if (l==-1)
+ return 0;
+ return *a - *b;
+}
+
+static int ucstrncmp_intwise(const ushort *a, const ushort *b, int len)
+{
+ // do both strings have the same alignment?
+ if ((quintptr(a) & 2) == (quintptr(b) & 2)) {
+ // are we aligned to 4 bytes?
+ if (quintptr(a) & 2) {
+ if (*a != *b)
+ return *a - *b;
+ ++a;
+ ++b;
+ --len;
+ }
+
+ const uint *p1 = (const uint *)a;
+ const uint *p2 = (const uint *)b;
+ quintptr counter = 0;
+ for ( ; len > 1 ; len -= 2, ++counter) {
+ if (p1[counter] != p2[counter]) {
+ // which ushort isn't equal?
+ int diff = a[2*counter] - b[2*counter];
+ return diff ? diff : a[2*counter + 1] - b[2*counter + 1];
+ }
+ }
+
+ return len ? a[2*counter] - b[2*counter] : 0;
+ } else {
+ while (len-- && *a == *b)
+ a++,b++;
+ if (len==-1)
+ return 0;
+ return *a - *b;
+ }
+}
+
+#ifdef __SSE2__
+static inline int ucstrncmp_short_tail(const ushort *p1, const ushort *p2, int len)
+{
+ if (len) {
+ if (*p1 != *p2)
+ return *p1 - *p2;
+ if (--len) {
+ if (p1[1] != p2[1])
+ return p1[1] - p2[1];
+ if (--len) {
+ if (p1[2] != p2[2])
+ return p1[2] - p2[2];
+ if (--len) {
+ if (p1[3] != p2[3])
+ return p1[3] - p2[3];
+ if (--len) {
+ if (p1[4] != p2[4])
+ return p1[4] - p2[4];
+ if (--len) {
+ if (p1[5] != p2[5])
+ return p1[5] - p2[5];
+ if (--len) {
+ if (p1[6] != p2[6])
+ return p1[6] - p2[6];
+ return p1[7] - p2[7];
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return 0;
+}
+
+static inline int bsf_nonzero(register long val)
+{
+ int result;
+# ifdef Q_CC_GNU
+ // returns the first non-zero bit on a non-zero reg
+ asm ("bsf %1, %0" : "=r" (result) : "r" (val));
+ return result;
+# elif defined(Q_CC_MSVC)
+ _BitScanForward(&result, val);
+ return result;
+# endif
+}
+
+static int ucstrncmp_sse2(const ushort *a, const ushort *b, int len)
+{
+ qptrdiff counter = 0;
+ while (len >= 8) {
+ __m128i m1 = _mm_loadu_si128((__m128i *)(a + counter));
+ __m128i m2 = _mm_loadu_si128((__m128i *)(b + counter));
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ counter += bsf_nonzero(mask)/2;
+ return a[counter] - b[counter];
+ }
+
+ counter += 8;
+ len -= 8;
+ }
+ return ucstrncmp_short_tail(a + counter, b + counter, len);
+}
+
+static int ucstrncmp_sse2_aligning(const ushort *a, const ushort *b, int len)
+{
+ if (len >= 8) {
+ __m128i m1 = _mm_loadu_si128((__m128i *)a);
+ __m128i m2 = _mm_loadu_si128((__m128i *)b);
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ int counter = bsf_nonzero(mask)/2;
+ return a[counter] - b[counter];
+ }
+
+
+ // now align to do 16-byte loads
+ int diff = 8 - (quintptr(a) & 0xf)/2;
+ len -= diff;
+ a += diff;
+ b += diff;
+ }
+
+ qptrdiff counter = 0;
+ while (len >= 8) {
+ __m128i m1 = _mm_load_si128((__m128i *)(a + counter));
+ __m128i m2 = _mm_loadu_si128((__m128i *)(b + counter));
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ counter += bsf_nonzero(mask)/2;
+ return a[counter] - b[counter];
+ }
+
+ counter += 8;
+ len -= 8;
+ }
+ return ucstrncmp_short_tail(a + counter, b + counter, len);
+}
+
+static inline int ucstrncmp_sse2_aligned(const ushort *a, const ushort *b, int len)
+{
+ quintptr counter = 0;
+ while (len >= 8) {
+ __m128i m1 = _mm_load_si128((__m128i *)(a + counter));
+ __m128i m2 = _mm_load_si128((__m128i *)(b + counter));
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ counter += bsf_nonzero(mask)/2;
+ return a[counter] - b[counter];
+ }
+
+ counter += 8;
+ len -= 8;
+ }
+ return ucstrncmp_short_tail(a + counter, b + counter, len);
+}
+
+#ifdef __SSSE3__
+static inline int ucstrncmp_ssse3_alignr_aligned(const ushort *a, const ushort *b, int len)
+{
+ quintptr counter = 0;
+ while (len >= 8) {
+ __m128i m1 = _mm_load_si128((__m128i *)(a + counter));
+ __m128i m2 = _mm_lddqu_si128((__m128i *)(b + counter));
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ counter += bsf_nonzero(mask)/2;
+ return a[counter] - b[counter];
+ }
+
+ counter += 8;
+ len -= 8;
+ }
+ return ucstrncmp_short_tail(a + counter, b + counter, len);
+}
+
+
+typedef __m128i (* MMLoadFunction)(const __m128i *);
+template<int N, MMLoadFunction LoadFunction>
+static inline int ucstrncmp_ssse3_alignr(const ushort *a, const ushort *b, int len)
+{
+ qptrdiff counter = 0;
+ __m128i lower, upper;
+ upper = _mm_load_si128((__m128i *)a);
+
+ do {
+ lower = upper;
+ upper = _mm_load_si128((__m128i *)(a + counter) + 1);
+ __m128i merged = _mm_alignr_epi8(upper, lower, N);
+
+ __m128i m2 = LoadFunction((__m128i *)(b + counter));
+ __m128i cmp = _mm_cmpeq_epi16(merged, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ counter += bsf_nonzero(mask)/2;
+ return a[counter + N/2] - b[counter];
+ }
+
+ counter += 8;
+ len -= 8;
+ } while (len >= 8);
+
+ return ucstrncmp_short_tail(a + counter + N/2, b + counter, len);
+}
+
+static int ucstrncmp_ssse3(const ushort *a, const ushort *b, int len)
+{
+ if (len >= 8) {
+ int val = quintptr(a) & 0xf;
+ a -= val/2;
+
+ if (val == 10)
+ return ucstrncmp_ssse3_alignr<10, _mm_lddqu_si128>(a, b, len);
+ else if (val == 2)
+ return ucstrncmp_ssse3_alignr<2, _mm_lddqu_si128>(a, b, len);
+ if (val < 8) {
+ if (val < 4)
+ return ucstrncmp_ssse3_alignr_aligned(a, b, len);
+ else if (val == 4)
+ return ucstrncmp_ssse3_alignr<4, _mm_lddqu_si128>(a, b, len);
+ else
+ return ucstrncmp_ssse3_alignr<6, _mm_lddqu_si128>(a, b, len);
+ } else {
+ if (val < 12)
+ return ucstrncmp_ssse3_alignr<8, _mm_lddqu_si128>(a, b, len);
+ else if (val == 12)
+ return ucstrncmp_ssse3_alignr<12, _mm_lddqu_si128>(a, b, len);
+ else
+ return ucstrncmp_ssse3_alignr<14, _mm_lddqu_si128>(a, b, len);
+ }
+ }
+ return ucstrncmp_short_tail(a, b, len);
+}
+
+static int ucstrncmp_ssse3_aligning(const ushort *a, const ushort *b, int len)
+{
+ if (len >= 8) {
+ __m128i m1 = _mm_loadu_si128((__m128i *)a);
+ __m128i m2 = _mm_loadu_si128((__m128i *)b);
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ int counter = bsf_nonzero(mask)/2;
+ return a[counter] - b[counter];
+ }
+
+
+ // now 'b' align to do 16-byte loads
+ int diff = 8 - (quintptr(b) & 0xf)/2;
+ len -= diff;
+ a += diff;
+ b += diff;
+ }
+
+ if (len < 8)
+ return ucstrncmp_short_tail(a, b, len);
+
+ // 'b' is aligned
+ int val = quintptr(a) & 0xf;
+ a -= val/2;
+
+ if (val == 8)
+ return ucstrncmp_ssse3_alignr<8, _mm_load_si128>(a, b, len);
+ else if (val == 0)
+ return ucstrncmp_sse2_aligned(a, b, len);
+ if (val < 8) {
+ if (val < 4)
+ return ucstrncmp_ssse3_alignr<2, _mm_load_si128>(a, b, len);
+ else if (val == 4)
+ return ucstrncmp_ssse3_alignr<4, _mm_load_si128>(a, b, len);
+ else
+ return ucstrncmp_ssse3_alignr<6, _mm_load_si128>(a, b, len);
+ } else {
+ if (val < 12)
+ return ucstrncmp_ssse3_alignr<10, _mm_load_si128>(a, b, len);
+ else if (val == 12)
+ return ucstrncmp_ssse3_alignr<12, _mm_load_si128>(a, b, len);
+ else
+ return ucstrncmp_ssse3_alignr<14, _mm_load_si128>(a, b, len);
+ }
+}
+
+static inline
+int ucstrncmp_ssse3_aligning2_aligned(const ushort *a, const ushort *b, int len, int garbage)
+{
+ // len >= 8
+ __m128i m1 = _mm_load_si128((const __m128i *)a);
+ __m128i m2 = _mm_load_si128((const __m128i *)b);
+ __m128i cmp = _mm_cmpeq_epi16(m1, m2);
+ int mask = short(_mm_movemask_epi8(cmp)); // force sign extension
+ mask >>= garbage;
+ if (~mask) {
+ // which ushort isn't equal?
+ uint counter = (garbage + bsf_nonzero(~mask));
+ return a[counter/2] - b[counter/2];
+ }
+
+ // the first 16-garbage bytes (8-garbage/2 ushorts) were equal
+ len -= 8 - garbage/2;
+ return ucstrncmp_sse2_aligned(a + 8, b + 8, len);
+}
+
+template<int N> static inline
+int ucstrncmp_ssse3_aligning2_alignr(const ushort *a, const ushort *b, int len, int garbage)
+{
+ // len >= 8
+ __m128i lower, upper, merged;
+ lower = _mm_load_si128((const __m128i*)a);
+ upper = _mm_load_si128((const __m128i*)(a + 8));
+ merged = _mm_alignr_epi8(upper, lower, N);
+
+ __m128i m2 = _mm_load_si128((const __m128i*)b);
+ __m128i cmp = _mm_cmpeq_epi16(merged, m2);
+ int mask = short(_mm_movemask_epi8(cmp)); // force sign extension
+ mask >>= garbage;
+ if (~mask) {
+ // which ushort isn't equal?
+ uint counter = (garbage + bsf_nonzero(~mask));
+ return a[counter/2 + N/2] - b[counter/2];
+ }
+
+ // the first 16-garbage bytes (8-garbage/2 ushorts) were equal
+ quintptr counter = 8;
+ len -= 8 - garbage/2;
+ while (len >= 8) {
+ lower = upper;
+ upper = _mm_load_si128((__m128i *)(a + counter) + 1);
+ merged = _mm_alignr_epi8(upper, lower, N);
+
+ m2 = _mm_load_si128((__m128i *)(b + counter));
+ cmp = _mm_cmpeq_epi16(merged, m2);
+ ushort mask = ~uint(_mm_movemask_epi8(cmp));
+ if (mask) {
+ // which ushort isn't equal?
+ counter += bsf_nonzero(mask)/2;
+ return a[counter + N/2] - b[counter];
+ }
+
+ counter += 8;
+ len -= 8;
+ }
+
+ return ucstrncmp_short_tail(a + counter + N/2, b + counter, len);
+}
+
+static inline int conditional_invert(int result, bool invert)
+{
+ if (invert)
+ return -result;
+ return result;
+}
+
+static int ucstrncmp_ssse3_aligning2(const ushort *a, const ushort *b, int len)
+{
+ // Different strategy from above: instead of doing two unaligned loads
+ // when trying to align, we'll only do aligned loads and round down the
+ // addresses of a and b. This means the first load will contain garbage
+ // in the beginning of the string, which we'll shift out of the way
+ // (after _mm_movemask_epi8)
+
+ if (len < 8)
+ return ucstrncmp_intwise(a, b, len);
+
+ // both a and b are misaligned
+ // we'll call the alignr function with the alignment *difference* between the two
+ int offset = (quintptr(a) & 0xf) - (quintptr(b) & 0xf);
+ if (offset >= 0) {
+ // from this point on, b has the shortest alignment
+ // and align(a) = align(b) + offset
+ // round down the alignment so align(b) == align(a) == 0
+ int garbage = (quintptr(b) & 0xf);
+ a = (const ushort*)(quintptr(a) & ~0xf);
+ b = (const ushort*)(quintptr(b) & ~0xf);
+
+ // now the first load of b will load 'garbage' extra bytes
+ // and the first load of a will load 'garbage + offset' extra bytes
+ if (offset == 8)
+ return ucstrncmp_ssse3_aligning2_alignr<8>(a, b, len, garbage);
+ if (offset == 0)
+ return ucstrncmp_ssse3_aligning2_aligned(a, b, len, garbage);
+ if (offset < 8) {
+ if (offset < 4)
+ return ucstrncmp_ssse3_aligning2_alignr<2>(a, b, len, garbage);
+ else if (offset == 4)
+ return ucstrncmp_ssse3_aligning2_alignr<4>(a, b, len, garbage);
+ else
+ return ucstrncmp_ssse3_aligning2_alignr<6>(a, b, len, garbage);
+ } else {
+ if (offset < 12)
+ return ucstrncmp_ssse3_aligning2_alignr<10>(a, b, len, garbage);
+ else if (offset == 12)
+ return ucstrncmp_ssse3_aligning2_alignr<12>(a, b, len, garbage);
+ else
+ return ucstrncmp_ssse3_aligning2_alignr<14>(a, b, len, garbage);
+ }
+ } else {
+ // same as above but inverted
+ int garbage = (quintptr(a) & 0xf);
+ a = (const ushort*)(quintptr(a) & ~0xf);
+ b = (const ushort*)(quintptr(b) & ~0xf);
+
+ offset = -offset;
+ if (offset == 8)
+ return -ucstrncmp_ssse3_aligning2_alignr<8>(b, a, len, garbage);
+ if (offset < 8) {
+ if (offset < 4)
+ return -ucstrncmp_ssse3_aligning2_alignr<2>(b, a, len, garbage);
+ else if (offset == 4)
+ return -ucstrncmp_ssse3_aligning2_alignr<4>(b, a, len, garbage);
+ else
+ return -ucstrncmp_ssse3_aligning2_alignr<6>(b, a, len, garbage);
+ } else {
+ if (offset < 12)
+ return -ucstrncmp_ssse3_aligning2_alignr<10>(b, a, len, garbage);
+ else if (offset == 12)
+ return -ucstrncmp_ssse3_aligning2_alignr<12>(b, a, len, garbage);
+ else
+ return -ucstrncmp_ssse3_aligning2_alignr<14>(b, a, len, garbage);
+ }
+ }
+}
+
+#endif
+#endif
+
+typedef int (* UcstrncmpFunction)(const ushort *, const ushort *, int);
+Q_DECLARE_METATYPE(UcstrncmpFunction)
+
+void tst_QString::ucstrncmp_data() const
+{
+ QTest::addColumn<UcstrncmpFunction>("function");
+ QTest::newRow("selftest") << UcstrncmpFunction(0);
+ QTest::newRow("shortwise") << &ucstrncmp_shortwise;
+ QTest::newRow("intwise") << &ucstrncmp_intwise;
+#ifdef __SSE2__
+ QTest::newRow("sse2") << &ucstrncmp_sse2;
+ QTest::newRow("sse2_aligning") << &ucstrncmp_sse2_aligning;
+#ifdef __SSSE3__
+ QTest::newRow("ssse3") << &ucstrncmp_ssse3;
+ QTest::newRow("ssse3_aligning") << &ucstrncmp_ssse3_aligning;
+ QTest::newRow("ssse3_aligning2") << &ucstrncmp_ssse3_aligning2;
+#endif
+#endif
+}
+
+void tst_QString::ucstrncmp() const
+{
+ QFETCH(UcstrncmpFunction, function);
+ if (!function) {
+ static const UcstrncmpFunction func[] = {
+ &ucstrncmp_shortwise,
+ &ucstrncmp_intwise,
+#ifdef __SSE2__
+ &ucstrncmp_sse2,
+ &ucstrncmp_sse2_aligning,
+#ifdef __SSSE3__
+ &ucstrncmp_ssse3,
+ &ucstrncmp_ssse3_aligning,
+ &ucstrncmp_ssse3_aligning2
+#endif
+#endif
+ };
+ static const int functionCount = sizeof func / sizeof func[0];
+
+#ifdef Q_OS_UNIX
+ const long pagesize = sysconf(_SC_PAGESIZE);
+ void *page1, *page3;
+ ushort *page2;
+ page1 = mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+ page2 = (ushort *)mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_POPULATE, -1, 0);
+ page3 = mmap(0, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+
+ Q_ASSERT(quintptr(page2) == quintptr(page1) + pagesize || quintptr(page2) == quintptr(page1) - pagesize);
+ Q_ASSERT(quintptr(page3) == quintptr(page2) + pagesize || quintptr(page3) == quintptr(page2) - pagesize);
+ munmap(page1, pagesize);
+ munmap(page3, pagesize);
+
+ // populate our page
+ for (uint i = 0; i < pagesize / sizeof(long long); ++i)
+ ((long long *)page2)[i] = Q_INT64_C(0x0041004100410041);
+
+ // the following should crash:
+ //page2[-1] = 0xdead;
+ //page2[pagesize / sizeof(ushort) + 1] = 0xbeef;
+
+ static const ushort needle[] = {
+ 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
+ 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
+ 0x41
+ };
+
+ for (int algo = 0; algo < functionCount; ++algo) {
+ // boundary condition test:
+ for (int i = 0; i < 8; ++i) {
+ (func[algo])(page2 + i, needle, sizeof needle / 2);
+ (func[algo])(page2 - i - 1 - sizeof(needle)/2 + pagesize/2, needle, sizeof needle/2);
+ }
+ }
+
+ munmap(page2, pagesize);
+#endif
+
+ for (int algo = 0; algo < functionCount; ++algo) {
+ for (int i = 0; i < stringCollectionCount; ++i) {
+ const ushort *p1 = stringCollectionData + stringCollection[i].offset1;
+ const ushort *p2 = stringCollectionData + stringCollection[i].offset2;
+ int expected = ucstrncmp_shortwise(p1, p2, stringCollection[i].len);
+ expected = qBound(-1, expected, 1);
+
+ int result = (func[algo])(p1, p2, stringCollection[i].len);
+ result = qBound(-1, result, 1);
+ if (expected != result)
+ qWarning().nospace()
+ << "algo=" << algo
+ << " i=" << i
+ << " failed (" << result << "!=" << expected
+ << "); strings were "
+ << QByteArray((char*)p1, stringCollection[i].len).toHex()
+ << " and "
+ << QByteArray((char*)p2, stringCollection[i].len).toHex();
+ }
+ }
+ return;
+ }
+
+ QBENCHMARK {
+ for (int i = 0; i < stringCollectionCount; ++i) {
+ const ushort *p1 = stringCollectionData + stringCollection[i].offset1;
+ const ushort *p2 = stringCollectionData + stringCollection[i].offset2;
+ (function)(p1, p2, stringCollection[i].len);
+ }
+ }
+}
+
+void tst_QString::fromUtf8() const
+{
+ QFile file(SRCDIR "utf-8.txt");
+ if (!file.open(QFile::ReadOnly)) {
+ qFatal("Cannot open input file");
+ return;
+ }
+ QByteArray data = file.readAll();
+ const char *d = data.constData();
+ int size = data.size();
+
+ QBENCHMARK {
+ QString::fromUtf8(d, size);
+ }
+}
+
+void tst_QString::fromLatin1_data() const
+{
+ QTest::addColumn<QByteArray>("latin1");
+
+ // make all the strings have the same length
+ QTest::newRow("ascii-only") << QByteArray("HelloWorld");
+ QTest::newRow("ascii+control") << QByteArray("Hello\1\r\n\x7f\t");
+ QTest::newRow("ascii+nul") << QByteArray("a\0zbc\0defg", 10);
+ QTest::newRow("non-ascii") << QByteArray("\x80\xc0\xff\x81\xc1\xfe\x90\xd0\xef\xa0");
+}
+
+void tst_QString::fromLatin1() const
+{
+ QFETCH(QByteArray, latin1);
+
+ while (latin1.length() < 128) {
+ latin1 += latin1;
+ }
+
+ QByteArray copy1 = latin1, copy2 = latin1, copy3 = latin1;
+ copy1.chop(1);
+ copy2.detach();
+ copy3 += latin1; // longer length
+ copy2.clear();
+
+ QBENCHMARK {
+ QString s1 = QString::fromLatin1(latin1);
+ QString s2 = QString::fromLatin1(latin1);
+ QString s3 = QString::fromLatin1(copy1);
+ QString s4 = QString::fromLatin1(copy3);
+ s3 = QString::fromLatin1(copy3);
+ }
+}
+
+typedef void (* FromLatin1Function)(ushort *, const char *, int);
+Q_DECLARE_METATYPE(FromLatin1Function)
+
+void fromLatin1_regular(ushort *dst, const char *str, int size)
+{
+ // from qstring.cpp:
+ while (size--)
+ *dst++ = (uchar)*str++;
+}
+
+#ifdef __SSE2__
+void fromLatin1_sse2_qt47(ushort *dst, const char *str, int size)
+{
+ if (size >= 16) {
+ int chunkCount = size >> 4; // divided by 16
+ const __m128i nullMask = _mm_set1_epi32(0);
+ for (int i = 0; i < chunkCount; ++i) {
+ const __m128i chunk = _mm_loadu_si128((__m128i*)str); // load
+ str += 16;
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_storeu_si128((__m128i*)dst, firstHalf); // store
+ dst += 8;
+
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf = _mm_unpackhi_epi8 (chunk, nullMask);
+ _mm_storeu_si128((__m128i*)dst, secondHalf); // store
+ dst += 8;
+ }
+ size = size % 16;
+ }
+ while (size--)
+ *dst++ = (uchar)*str++;
+}
+
+static inline void fromLatin1_epilog(ushort *dst, const char *str, int size)
+{
+ if (!size) return;
+ dst[0] = (uchar)str[0];
+ if (!--size) return;
+ dst[1] = (uchar)str[1];
+ if (!--size) return;
+ dst[2] = (uchar)str[2];
+ if (!--size) return;
+ dst[3] = (uchar)str[3];
+ if (!--size) return;
+ dst[4] = (uchar)str[4];
+ if (!--size) return;
+ dst[5] = (uchar)str[5];
+ if (!--size) return;
+ dst[6] = (uchar)str[6];
+ if (!--size) return;
+ dst[7] = (uchar)str[7];
+ if (!--size) return;
+ dst[8] = (uchar)str[8];
+ if (!--size) return;
+ dst[9] = (uchar)str[9];
+ if (!--size) return;
+ dst[10] = (uchar)str[10];
+ if (!--size) return;
+ dst[11] = (uchar)str[11];
+ if (!--size) return;
+ dst[12] = (uchar)str[12];
+ if (!--size) return;
+ dst[13] = (uchar)str[13];
+ if (!--size) return;
+ dst[14] = (uchar)str[14];
+ if (!--size) return;
+ dst[15] = (uchar)str[15];
+}
+
+void fromLatin1_sse2_improved(ushort *dst, const char *str, int size)
+{
+ const __m128i nullMask = _mm_set1_epi32(0);
+ qptrdiff counter = 0;
+ size -= 16;
+ while (size >= counter) {
+ const __m128i chunk = _mm_loadu_si128((__m128i*)(str + counter)); // load
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter), firstHalf); // store
+
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf = _mm_unpackhi_epi8 (chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 8), secondHalf); // store
+
+ counter += 16;
+ }
+ size += 16;
+ fromLatin1_epilog(dst + counter, str + counter, size - counter);
+}
+
+void fromLatin1_sse2_improved2(ushort *dst, const char *str, int size)
+{
+ const __m128i nullMask = _mm_set1_epi32(0);
+ qptrdiff counter = 0;
+ size -= 32;
+ while (size >= counter) {
+ const __m128i chunk1 = _mm_loadu_si128((__m128i*)(str + counter)); // load
+ const __m128i chunk2 = _mm_loadu_si128((__m128i*)(str + counter + 16)); // load
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf1 = _mm_unpacklo_epi8(chunk1, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter), firstHalf1); // store
+
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf1 = _mm_unpackhi_epi8(chunk1, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 8), secondHalf1); // store
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf2 = _mm_unpacklo_epi8(chunk2, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 16), firstHalf2); // store
+
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf2 = _mm_unpackhi_epi8(chunk2, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 24), secondHalf2); // store
+
+ counter += 32;
+ }
+ size += 16;
+ if (size >= counter) {
+ const __m128i chunk = _mm_loadu_si128((__m128i*)(str + counter)); // load
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter), firstHalf); // store
+
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf = _mm_unpackhi_epi8 (chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 8), secondHalf); // store
+
+ counter += 16;
+ }
+ size += 16;
+ fromLatin1_epilog(dst + counter, str + counter, size - counter);
+}
+
+void fromLatin1_prolog_unrolled(ushort *dst, const char *str, int size)
+{
+ // QString's data pointer is most often ending in 0x2 or 0xa
+ // that means the two most common values for size are (8-1)=7 and (8-5)=3
+ if (size == 7)
+ goto copy_7;
+ if (size == 3)
+ goto copy_3;
+
+ if (size == 6)
+ goto copy_6;
+ if (size == 5)
+ goto copy_5;
+ if (size == 4)
+ goto copy_4;
+ if (size == 2)
+ goto copy_2;
+ if (size == 1)
+ goto copy_1;
+ return;
+
+copy_7:
+ dst[6] = (uchar)str[6];
+copy_6:
+ dst[5] = (uchar)str[5];
+copy_5:
+ dst[4] = (uchar)str[4];
+copy_4:
+ dst[3] = (uchar)str[3];
+copy_3:
+ dst[2] = (uchar)str[2];
+copy_2:
+ dst[1] = (uchar)str[1];
+copy_1:
+ dst[0] = (uchar)str[0];
+}
+
+void fromLatin1_prolog_sse2_overcommit(ushort *dst, const char *str, int)
+{
+ // do one iteration of conversion
+ const __m128i chunk = _mm_loadu_si128((__m128i*)str); // load
+
+ // unpack only the first 8 bytes, padding with zeros
+ const __m128i nullMask = _mm_set1_epi32(0);
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_storeu_si128((__m128i*)dst, firstHalf); // store
+}
+
+template<FromLatin1Function prologFunction>
+void fromLatin1_sse2_withprolog(ushort *dst, const char *str, int size)
+{
+ // same as the improved code, but we attempt to align at the prolog
+ // therefore, we issue aligned stores
+
+ if (size >= 16) {
+ uint misalignment = uint(quintptr(dst) & 0xf);
+ uint prologCount = (16 - misalignment) / 2;
+
+ prologFunction(dst, str, prologCount);
+
+ size -= prologCount;
+ dst += prologCount;
+ str += prologCount;
+ }
+
+ const __m128i nullMask = _mm_set1_epi32(0);
+ qptrdiff counter = 0;
+ size -= 16;
+ while (size >= counter) {
+ const __m128i chunk = _mm_loadu_si128((__m128i*)(str + counter)); // load
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_store_si128((__m128i*)(dst + counter), firstHalf); // store
+
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf = _mm_unpackhi_epi8 (chunk, nullMask);
+ _mm_store_si128((__m128i*)(dst + counter + 8), secondHalf); // store
+
+ counter += 16;
+ }
+ size += 16;
+ fromLatin1_epilog(dst + counter, str + counter, size - counter);
+}
+
+#ifdef __SSE4_1__
+void fromLatin1_sse4_pmovzxbw(ushort *dst, const char *str, int size)
+{
+ qptrdiff counter = 0;
+ size -= 16;
+ while (size >= counter) {
+ __m128i chunk = _mm_loadu_si128((__m128i*)(str + counter)); // load
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_cvtepu8_epi16(chunk);
+ _mm_storeu_si128((__m128i*)(dst + counter), firstHalf); // store
+
+ // unpack the last 8 bytes, padding with zeros
+ chunk = _mm_srli_si128(chunk, 8);
+ const __m128i secondHalf = _mm_cvtepu8_epi16(chunk);
+ _mm_storeu_si128((__m128i*)(dst + counter + 8), secondHalf); // store
+
+ counter += 16;
+ }
+ size += 16;
+ fromLatin1_epilog(dst + counter, str + counter, size - counter);
+}
+
+void fromLatin1_prolog_sse4_overcommit(ushort *dst, const char *str, int)
+{
+ // load 8 bytes and zero-extend them to 16
+ const __m128i chunk = _mm_cvtepu8_epi16(*(__m128i*)str); // load
+ _mm_storeu_si128((__m128i*)dst, chunk); // store
+}
+#endif
+#endif
+
+#ifdef __ARM_NEON__
+static inline void fromLatin1_epilog(ushort *dst, const char *str, int size)
+{
+ if (!size) return;
+ dst[0] = (uchar)str[0];
+ if (!--size) return;
+ dst[1] = (uchar)str[1];
+ if (!--size) return;
+ dst[2] = (uchar)str[2];
+ if (!--size) return;
+ dst[3] = (uchar)str[3];
+ if (!--size) return;
+ dst[4] = (uchar)str[4];
+ if (!--size) return;
+ dst[5] = (uchar)str[5];
+ if (!--size) return;
+ dst[6] = (uchar)str[6];
+ if (!--size) return;
+ dst[7] = (uchar)str[7];
+ if (!--size) return;
+}
+
+void fromLatin1_neon_improved(ushort *dst, const char *str, int len)
+{
+ while (len >= 8) {
+ // load 8 bytes into one doubleword Neon register
+ const uint8x8_t chunk = vld1_u8((uint8_t *)str);
+ str += 8;
+
+ // expand 8 bytes into 16 bytes in a quadword register
+ const uint16x8_t expanded = vmovl_u8(chunk);
+ vst1q_u16(dst, expanded); // store
+ dst += 8;
+
+ len -= 8;
+ }
+ fromLatin1_epilog(dst, str, len);
+}
+
+void fromLatin1_neon_improved2(ushort *dst, const char *str, int len)
+{
+ while (len >= 16) {
+ // load 16 bytes into one quadword Neon register
+ const uint8x16_t chunk = vld1q_u8((uint8_t *)str);
+ str += 16;
+
+ // expand each doubleword of the quadword register into a quadword
+ const uint16x8_t expanded_low = vmovl_u8(vget_low_u8(chunk));
+ vst1q_u16(dst, expanded_low); // store
+ dst += 8;
+ const uint16x8_t expanded_high = vmovl_u8(vget_high_u8(chunk));
+ vst1q_u16(dst, expanded_high); // store
+ dst += 8;
+
+ len -= 16;
+ }
+
+ if (len >= 8) {
+ // load 8 bytes into one doubleword Neon register
+ const uint8x8_t chunk = vld1_u8((uint8_t *)str);
+ str += 8;
+
+ // expand 8 bytes into 16 bytes in a quadword register
+ const uint16x8_t expanded = vmovl_u8(chunk);
+ vst1q_u16(dst, expanded); // store
+ dst += 8;
+
+ len -= 8;
+ }
+ fromLatin1_epilog(dst, str, len);
+}
+
+void fromLatin1_neon_handwritten(ushort *dst, const char *str, int len)
+{
+ // same as above, but handwritten Neon
+ while (len >= 8) {
+ uint16x8_t chunk;
+ asm (
+ "vld1.8 %[chunk], [%[str]]!\n"
+ "vmovl.u8 %q[chunk], %[chunk]\n"
+ "vst1.16 %h[chunk], [%[dst]]!\n"
+ : [dst] "+r" (dst),
+ [str] "+r" (str),
+ [chunk] "=w" (chunk));
+ len -= 8;
+ }
+
+ fromLatin1_epilog(dst, str, len);
+}
+
+void fromLatin1_neon_handwritten2(ushort *dst, const char *str, int len)
+{
+ // same as above, but handwritten Neon
+ while (len >= 16) {
+ uint16x8_t chunk1, chunk2;
+ asm (
+ "vld1.8 %h[chunk1], [%[str]]!\n"
+ "vmovl.u8 %q[chunk2], %f[chunk1]\n"
+ "vmovl.u8 %q[chunk1], %e[chunk1]\n"
+ "vst1.16 %h[chunk1], [%[dst]]!\n"
+ "vst1.16 %h[chunk2], [%[dst]]!\n"
+ : [dst] "+r" (dst),
+ [str] "+r" (str),
+ [chunk1] "=w" (chunk1),
+ [chunk2] "=w" (chunk2));
+ len -= 16;
+ }
+
+ if (len >= 8) {
+ uint16x8_t chunk;
+ asm (
+ "vld1.8 %[chunk], [%[str]]!\n"
+ "vmovl.u8 %q[chunk], %[chunk]\n"
+ "vst1.16 %h[chunk], [%[dst]]!\n"
+ : [dst] "+r" (dst),
+ [str] "+r" (str),
+ [chunk] "=w" (chunk));
+ len -= 8;
+ }
+
+ fromLatin1_epilog(dst, str, len);
+}
+#endif
+
+void tst_QString::fromLatin1Alternatives_data() const
+{
+ QTest::addColumn<FromLatin1Function>("function");
+ QTest::newRow("empty") << FromLatin1Function(0);
+ QTest::newRow("regular") << &fromLatin1_regular;
+#ifdef __SSE2__
+ QTest::newRow("sse2-qt4.7") << &fromLatin1_sse2_qt47;
+ QTest::newRow("sse2-improved") << &fromLatin1_sse2_improved;
+ QTest::newRow("sse2-improved2") << &fromLatin1_sse2_improved2;
+ QTest::newRow("sse2-with-prolog-regular") << &fromLatin1_sse2_withprolog<&fromLatin1_regular>;
+ QTest::newRow("sse2-with-prolog-unrolled") << &fromLatin1_sse2_withprolog<&fromLatin1_prolog_unrolled>;
+ QTest::newRow("sse2-with-prolog-sse2-overcommit") << &fromLatin1_sse2_withprolog<&fromLatin1_prolog_sse2_overcommit>;
+#ifdef __SSE4_1__
+ QTest::newRow("sse2-with-prolog-sse4-overcommit") << &fromLatin1_sse2_withprolog<&fromLatin1_prolog_sse4_overcommit>;
+ QTest::newRow("sse4-pmovzxbw") << &fromLatin1_sse4_pmovzxbw;
+#endif
+#endif
+#ifdef __ARM_NEON__
+ QTest::newRow("neon-improved") << &fromLatin1_neon_improved;
+ QTest::newRow("neon-improved2") << &fromLatin1_neon_improved2;
+ QTest::newRow("neon-handwritten") << &fromLatin1_neon_handwritten;
+ QTest::newRow("neon-handwritten2") << &fromLatin1_neon_handwritten2;
+#endif
+}
+
+extern StringData fromLatin1Data;
+static void fromLatin1Alternatives_internal(FromLatin1Function function, QString &dst, bool doVerify)
+{
+ struct Entry
+ {
+ int len;
+ int offset1, offset2;
+ int align1, align2;
+ };
+ const Entry *entries = reinterpret_cast<const Entry *>(fromLatin1Data.entries);
+
+ for (int i = 0; i < fromLatin1Data.entryCount; ++i) {
+ int len = entries[i].len;
+ const char *src = fromLatin1Data.charData + entries[i].offset1;
+
+ if (!function)
+ continue;
+ if (!doVerify) {
+ (function)(&dst.data()->unicode(), src, len);
+ } else {
+ dst.fill(QChar('x'), dst.length());
+
+ (function)(&dst.data()->unicode() + 8, src, len);
+
+ QString zeroes(8, QChar('x'));
+ QString final = dst.mid(8, len);
+ QCOMPARE(final, QString::fromLatin1(src, len));
+ QCOMPARE(dst.left(8), zeroes);
+ QCOMPARE(dst.mid(len + 8, 8), zeroes);
+ }
+ }
+}
+
+void tst_QString::fromLatin1Alternatives() const
+{
+ QFETCH(FromLatin1Function, function);
+
+ QString dst(fromLatin1Data.maxLength + 16, QChar('x'));
+ fromLatin1Alternatives_internal(function, dst, true);
+
+ QBENCHMARK {
+ fromLatin1Alternatives_internal(function, dst, false);
+ }
+}
+
+typedef int (* FromUtf8Function)(ushort *, const char *, int);
+Q_DECLARE_METATYPE(FromUtf8Function)
+
+extern QTextCodec::ConverterState *state;
+QTextCodec::ConverterState *state = 0; // just because the code in qutfcodec.cpp uses a state
+
+int fromUtf8_latin1_regular(ushort *dst, const char *chars, int len)
+{
+ fromLatin1_regular(dst, chars, len);
+ return len;
+}
+
+#ifdef __SSE2__
+int fromUtf8_latin1_qt47(ushort *dst, const char *chars, int len)
+{
+ fromLatin1_sse2_qt47(dst, chars, len);
+ return len;
+}
+
+int fromUtf8_latin1_sse2_improved(ushort *dst, const char *chars, int len)
+{
+ fromLatin1_sse2_improved(dst, chars, len);
+ return len;
+}
+#endif
+
+static inline bool isUnicodeNonCharacter(uint ucs4)
+{
+ // Unicode has a couple of "non-characters" that one can use internally,
+ // but are not allowed to be used for text interchange.
+ //
+ // Those are the last two entries each Unicode Plane (U+FFFE, U+FFFF,
+ // U+1FFFE, U+1FFFF, etc.) as well as the entries between U+FDD0 and
+ // U+FDEF (inclusive)
+
+ return (ucs4 & 0xfffe) == 0xfffe
+ || (ucs4 - 0xfdd0U) < 16;
+}
+
+int fromUtf8_qt47(ushort *dst, const char *chars, int len)
+{
+ // this is almost the code found in Qt 4.7's qutfcodec.cpp QUtf8Codec::convertToUnicode
+ // That function returns a QString, this one returns the number of characters converted
+ // That's to avoid doing malloc() inside the benchmark test
+ // Any differences between this code and the original are just because of that, I promise
+
+ bool headerdone = false;
+ ushort replacement = QChar::ReplacementCharacter;
+ int need = 0;
+ int error = -1;
+ uint uc = 0;
+ uint min_uc = 0;
+ if (state) {
+ if (state->flags & QTextCodec::IgnoreHeader)
+ headerdone = true;
+ if (state->flags & QTextCodec::ConvertInvalidToNull)
+ replacement = QChar::Null;
+ need = state->remainingChars;
+ if (need) {
+ uc = state->state_data[0];
+ min_uc = state->state_data[1];
+ }
+ }
+ if (!headerdone && len > 3
+ && (uchar)chars[0] == 0xef && (uchar)chars[1] == 0xbb && (uchar)chars[2] == 0xbf) {
+ // starts with a byte order mark
+ chars += 3;
+ len -= 3;
+ headerdone = true;
+ }
+
+ // QString result(need + len + 1, Qt::Uninitialized); // worst case
+ // ushort *qch = (ushort *)result.unicode();
+ ushort *qch = dst;
+ uchar ch;
+ int invalid = 0;
+
+ for (int i = 0; i < len; ++i) {
+ ch = chars[i];
+ if (need) {
+ if ((ch&0xc0) == 0x80) {
+ uc = (uc << 6) | (ch & 0x3f);
+ --need;
+ if (!need) {
+ // utf-8 bom composes into 0xfeff code point
+ bool nonCharacter;
+ if (!headerdone && uc == 0xfeff) {
+ // don't do anything, just skip the BOM
+ } else if (!(nonCharacter = isUnicodeNonCharacter(uc)) && uc > 0xffff && uc < 0x110000) {
+ // surrogate pair
+ //Q_ASSERT((qch - (ushort*)result.unicode()) + 2 < result.length());
+ *qch++ = QChar::highSurrogate(uc);
+ *qch++ = QChar::lowSurrogate(uc);
+ } else if ((uc < min_uc) || (uc >= 0xd800 && uc <= 0xdfff) || nonCharacter || uc >= 0x110000) {
+ // error: overlong sequence, UTF16 surrogate or non-character
+ *qch++ = replacement;
+ ++invalid;
+ } else {
+ *qch++ = uc;
+ }
+ headerdone = true;
+ }
+ } else {
+ // error
+ i = error;
+ *qch++ = replacement;
+ ++invalid;
+ need = 0;
+ headerdone = true;
+ }
+ } else {
+ if (ch < 128) {
+ *qch++ = ushort(ch);
+ headerdone = true;
+ } else if ((ch & 0xe0) == 0xc0) {
+ uc = ch & 0x1f;
+ need = 1;
+ error = i;
+ min_uc = 0x80;
+ headerdone = true;
+ } else if ((ch & 0xf0) == 0xe0) {
+ uc = ch & 0x0f;
+ need = 2;
+ error = i;
+ min_uc = 0x800;
+ } else if ((ch&0xf8) == 0xf0) {
+ uc = ch & 0x07;
+ need = 3;
+ error = i;
+ min_uc = 0x10000;
+ headerdone = true;
+ } else {
+ // error
+ *qch++ = replacement;
+ ++invalid;
+ headerdone = true;
+ }
+ }
+ }
+ if (!state && need > 0) {
+ // unterminated UTF sequence
+ for (int i = error; i < len; ++i) {
+ *qch++ = replacement;
+ ++invalid;
+ }
+ }
+ //result.truncate(qch - (ushort *)result.unicode());
+ if (state) {
+ state->invalidChars += invalid;
+ state->remainingChars = need;
+ if (headerdone)
+ state->flags |= QTextCodec::IgnoreHeader;
+ state->state_data[0] = need ? uc : 0;
+ state->state_data[1] = need ? min_uc : 0;
+ }
+ //return result;
+ return qch - dst;
+}
+
+int fromUtf8_qt47_stateless(ushort *dst, const char *chars, int len)
+{
+ // This is the same code as above, but for stateless UTF-8 conversion
+ // no other improvements
+ bool headerdone = false;
+ const ushort replacement = QChar::ReplacementCharacter;
+ int need = 0;
+ int error = -1;
+ uint uc = 0;
+ uint min_uc = 0;
+
+ if (len > 3
+ && (uchar)chars[0] == 0xef && (uchar)chars[1] == 0xbb && (uchar)chars[2] == 0xbf) {
+ // starts with a byte order mark
+ chars += 3;
+ len -= 3;
+ }
+
+ // QString result(need + len + 1, Qt::Uninitialized); // worst case
+ // ushort *qch = (ushort *)result.unicode();
+ ushort *qch = dst;
+ uchar ch;
+ int invalid = 0;
+
+ for (int i = 0; i < len; ++i) {
+ ch = chars[i];
+ if (need) {
+ if ((ch&0xc0) == 0x80) {
+ uc = (uc << 6) | (ch & 0x3f);
+ --need;
+ if (!need) {
+ // utf-8 bom composes into 0xfeff code point
+ bool nonCharacter;
+ if (!headerdone && uc == 0xfeff) {
+ // don't do anything, just skip the BOM
+ } else if (!(nonCharacter = isUnicodeNonCharacter(uc)) && uc > 0xffff && uc < 0x110000) {
+ // surrogate pair
+ //Q_ASSERT((qch - (ushort*)result.unicode()) + 2 < result.length());
+ *qch++ = QChar::highSurrogate(uc);
+ *qch++ = QChar::lowSurrogate(uc);
+ } else if ((uc < min_uc) || (uc >= 0xd800 && uc <= 0xdfff) || nonCharacter || uc >= 0x110000) {
+ // error: overlong sequence, UTF16 surrogate or non-character
+ *qch++ = replacement;
+ ++invalid;
+ } else {
+ *qch++ = uc;
+ }
+ headerdone = true;
+ }
+ } else {
+ // error
+ i = error;
+ *qch++ = replacement;
+ ++invalid;
+ need = 0;
+ headerdone = true;
+ }
+ } else {
+ if (ch < 128) {
+ *qch++ = ushort(ch);
+ headerdone = true;
+ } else if ((ch & 0xe0) == 0xc0) {
+ uc = ch & 0x1f;
+ need = 1;
+ error = i;
+ min_uc = 0x80;
+ headerdone = true;
+ } else if ((ch & 0xf0) == 0xe0) {
+ uc = ch & 0x0f;
+ need = 2;
+ error = i;
+ min_uc = 0x800;
+ } else if ((ch&0xf8) == 0xf0) {
+ uc = ch & 0x07;
+ need = 3;
+ error = i;
+ min_uc = 0x10000;
+ headerdone = true;
+ } else {
+ // error
+ *qch++ = replacement;
+ ++invalid;
+ headerdone = true;
+ }
+ }
+ }
+ if (need > 0) {
+ // unterminated UTF sequence
+ for (int i = error; i < len; ++i) {
+ *qch++ = replacement;
+ ++invalid;
+ }
+ }
+ //result.truncate(qch - (ushort *)result.unicode());
+ //return result;
+ return qch - dst;
+}
+
+template <bool trusted>
+static inline void extract_utf8_multibyte(ushort *&dst, const char *&chars, qptrdiff &counter, int &len)
+{
+ uchar ch = chars[counter];
+
+ // is it a leading or a continuation one?
+ if (!trusted && (ch & 0xc0) == 0x80) {
+ // continuation character found without the leading
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ if ((ch & 0xe0) == 0xc0) {
+ // two-byte UTF-8 sequence
+ if (!trusted && counter + 1 == len) {
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ uchar ch2 = chars[counter + 1];
+ if (!trusted)
+ if ((ch2 & 0xc0) != 0x80) {
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ ushort ucs = (ch & 0x1f);
+ ucs <<= 6;
+ ucs |= (ch2 & 0x3f);
+
+ // dst[counter] will correspond to chars[counter..counter+1], so adjust
+ ++chars;
+ --len;
+ if (trusted || ucs >= 0x80)
+ dst[counter] = ucs;
+ else
+ dst[counter] = QChar::ReplacementCharacter;
+ ++counter;
+ return;
+ }
+
+ if ((ch & 0xf0) == 0xe0) {
+ // three-byte UTF-8 sequence
+ if (!trusted && counter + 2 >= len) {
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ uchar ch2 = chars[counter + 1];
+ uchar ch3 = chars[counter + 2];
+ if (!trusted)
+ if ((ch2 & 0xc0) != 0x80 || (ch3 & 0xc0) != 0x80) {
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ ushort ucs = (ch & 0x1f) << 12 | (ch2 & 0x3f) << 6 | (ch3 & 0x3f);
+
+ // dst[counter] will correspond to chars[counter..counter+2], so adjust
+ chars += 2;
+ len -= 2;
+ if (!trusted &&
+ (ucs < 0x800 || isUnicodeNonCharacter(ucs) || (ucs >= 0xd800 && ucs <= 0xdfff)))
+ dst[counter] = QChar::ReplacementCharacter;
+ else
+ dst[counter] = ucs;
+ ++counter;
+ return;
+ }
+
+ if ((ch & 0xf8) == 0xf0) {
+ // four-byte UTF-8 sequence
+ // will require an UTF-16 surrogate pair
+ if (!trusted && counter + 3 >= len) {
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ uchar ch2 = chars[counter + 1];
+ uchar ch3 = chars[counter + 2];
+ uchar ch4 = chars[counter + 3];
+ if (!trusted)
+ if ((ch2 & 0xc0) != 0x80 || (ch3 & 0xc0) != 0x80 || (ch4 & 0xc0) != 0x80) {
+ dst[counter++] = QChar::ReplacementCharacter;
+ return;
+ }
+
+ uint ucs = (ch & 0x1f) << 18 | (ch2 & 0x3f) << 12
+ | (ch3 & 0x3f) << 6 | (ch4 & 0x3f);
+
+ // dst[counter] will correspond to chars[counter..counter+2], so adjust
+ chars += 3;
+ len -= 3;
+ if (trusted || (ucs >= 0x10000 && ucs < 0x110000 && !isUnicodeNonCharacter(ucs))) {
+ dst[counter + 0] = QChar::highSurrogate(ucs);
+ dst[counter + 1] = QChar::lowSurrogate(ucs);
+ counter += 2;
+ } else {
+ dst[counter++] = QChar::ReplacementCharacter;
+ }
+ return;
+ }
+
+ ++counter;
+}
+
+int fromUtf8_optimised_for_ascii(ushort *qch, const char *chars, int len)
+{
+ if (len > 3
+ && (uchar)chars[0] == 0xef && (uchar)chars[1] == 0xbb && (uchar)chars[2] == 0xbf) {
+ // starts with a byte order mark
+ chars += 3;
+ len -= 3;
+ }
+
+ qptrdiff counter = 0;
+ ushort *dst = qch;
+ while (counter < len) {
+ uchar ch = chars[counter];
+ if ((ch & 0x80) == 0) {
+ dst[counter] = ch;
+ ++counter;
+ continue;
+ }
+
+ // UTF-8 character found
+ extract_utf8_multibyte<false>(dst, chars, counter, len);
+ }
+ return dst + counter - qch;
+}
+
+#ifdef __SSE2__
+int fromUtf8_sse2_optimised_for_ascii(ushort *qch, const char *chars, int len)
+{
+ if (len > 3
+ && (uchar)chars[0] == 0xef && (uchar)chars[1] == 0xbb && (uchar)chars[2] == 0xbf) {
+ // starts with a byte order mark
+ chars += 3;
+ len -= 3;
+ }
+
+ qptrdiff counter = 0;
+ ushort *dst = qch;
+
+ len -= 16;
+ const __m128i nullMask = _mm_set1_epi32(0);
+ while (counter < len) {
+ const __m128i chunk = _mm_loadu_si128((__m128i*)(chars + counter)); // load
+ ushort highbytes = _mm_movemask_epi8(chunk);
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter), firstHalf); // store
+
+ if (!uchar(highbytes)) {
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf = _mm_unpackhi_epi8 (chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 8), secondHalf); // store
+
+ if (!highbytes) {
+ counter += 16;
+ continue;
+ }
+ }
+
+ // UTF-8 character found
+ // which one?
+ counter += bsf_nonzero(highbytes);
+ len += 16;
+ extract_utf8_multibyte<false>(dst, chars, counter, len);
+ len -= 16;
+ }
+ len += 16;
+
+ while (counter < len) {
+ uchar ch = chars[counter];
+ if ((ch & 0x80) == 0) {
+ dst[counter] = ch;
+ ++counter;
+ continue;
+ }
+
+ // UTF-8 character found
+ extract_utf8_multibyte<false>(dst, chars, counter, len);
+ }
+ return dst + counter - qch;
+}
+
+int fromUtf8_sse2_trusted_no_bom(ushort *qch, const char *chars, int len)
+{
+ qptrdiff counter = 0;
+ ushort *dst = qch;
+
+ len -= 16;
+ const __m128i nullMask = _mm_set1_epi32(0);
+ while (counter < len) {
+ const __m128i chunk = _mm_loadu_si128((__m128i*)(chars + counter)); // load
+ ushort highbytes = _mm_movemask_epi8(chunk);
+
+ // unpack the first 8 bytes, padding with zeros
+ const __m128i firstHalf = _mm_unpacklo_epi8(chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter), firstHalf); // store
+
+ if (!uchar(highbytes)) {
+ // unpack the last 8 bytes, padding with zeros
+ const __m128i secondHalf = _mm_unpackhi_epi8 (chunk, nullMask);
+ _mm_storeu_si128((__m128i*)(dst + counter + 8), secondHalf); // store
+
+ if (!highbytes) {
+ counter += 16;
+ continue;
+ }
+ }
+
+ // UTF-8 character found
+ // which one?
+ counter += bsf_nonzero(highbytes);
+ len += 16;
+ extract_utf8_multibyte<true>(dst, chars, counter, len);
+ len -= 16;
+ }
+ len += 16;
+
+ while (counter < len) {
+ uchar ch = chars[counter];
+ if ((ch & 0x80) == 0) {
+ dst[counter] = ch;
+ ++counter;
+ continue;
+ }
+
+ // UTF-8 character found
+ extract_utf8_multibyte<true>(dst, chars, counter, len);
+ }
+ return dst + counter - qch;
+}
+#endif
+
+#ifdef __ARM_NEON__
+int fromUtf8_latin1_neon(ushort *dst, const char *chars, int len)
+{
+ fromLatin1_neon_improved(dst, chars, len);
+ return len;
+}
+
+int fromUtf8_neon(ushort *qch, const char *chars, int len)
+{
+ if (len > 3
+ && (uchar)chars[0] == 0xef && (uchar)chars[1] == 0xbb && (uchar)chars[2] == 0xbf) {
+ // starts with a byte order mark
+ chars += 3;
+ len -= 3;
+ }
+
+ ushort *dst = qch;
+ const uint8x8_t highBit = vdup_n_u8(0x80);
+ while (len >= 8) {
+ // load 8 bytes into one doubleword Neon register
+ const uint8x8_t chunk = vld1_u8((uint8_t *)chars);
+ const uint16x8_t expanded = vmovl_u8(chunk);
+ vst1q_u16(dst, expanded);
+
+ uint8x8_t highBits = vtst_u8(chunk, highBit);
+ // we need to find the lowest byte set
+ int mask_low = vget_lane_u32(vreinterpret_u32_u8(highBits), 0);
+ int mask_high = vget_lane_u32(vreinterpret_u32_u8(highBits), 1);
+
+ if (__builtin_expect(mask_low == 0 && mask_high == 0, 1)) {
+ chars += 8;
+ dst += 8;
+ len -= 8;
+ } else {
+ // UTF-8 character found
+ // which one?
+ qptrdiff pos;
+ asm ("rbit %0, %1\n"
+ "clz %1, %1\n"
+ : "=r" (pos)
+ : "r" (mask_low ? mask_low : mask_high));
+ // now mask_low contains the number of leading zeroes
+ // or the value 32 (0x20) if no zeroes were found
+ // the number of leading zeroes is 8*pos
+ pos /= 8;
+
+ extract_utf8_multibyte<false>(dst, chars, pos, len);
+ chars += pos;
+ dst += pos;
+ len -= pos;
+ }
+ }
+
+ qptrdiff counter = 0;
+ while (counter < len) {
+ uchar ch = chars[counter];
+ if ((ch & 0x80) == 0) {
+ dst[counter] = ch;
+ ++counter;
+ continue;
+ }
+ // UTF-8 character found
+ extract_utf8_multibyte<false>(dst, chars, counter, len);
+ }
+ return dst + counter - qch;
+}
+
+int fromUtf8_neon_trusted(ushort *qch, const char *chars, int len)
+{
+ ushort *dst = qch;
+ const uint8x8_t highBit = vdup_n_u8(0x80);
+ while (len >= 8) {
+ // load 8 bytes into one doubleword Neon register
+ const uint8x8_t chunk = vld1_u8((uint8_t *)chars);
+ const uint16x8_t expanded = vmovl_u8(chunk);
+ vst1q_u16(dst, expanded);
+
+ uint8x8_t highBits = vtst_u8(chunk, highBit);
+ // we need to find the lowest byte set
+ int mask_low = vget_lane_u32(vreinterpret_u32_u8(highBits), 0);
+ int mask_high = vget_lane_u32(vreinterpret_u32_u8(highBits), 1);
+
+ if (__builtin_expect(mask_low == 0 && mask_high == 0, 1)) {
+ chars += 8;
+ dst += 8;
+ len -= 8;
+ } else {
+ // UTF-8 character found
+ // which one?
+ qptrdiff pos;
+ asm ("rbit %0, %1\n"
+ "clz %1, %1\n"
+ : "=r" (pos)
+ : "r" (mask_low ? mask_low : mask_high));
+ // now mask_low contains the number of leading zeroes
+ // or the value 32 (0x20) if no zeroes were found
+ // the number of leading zeroes is 8*pos
+ pos /= 8;
+
+ extract_utf8_multibyte<true>(dst, chars, pos, len);
+ chars += pos;
+ dst += pos;
+ len -= pos;
+ }
+ }
+
+ qptrdiff counter = 0;
+ while (counter < len) {
+ uchar ch = chars[counter];
+ if ((ch & 0x80) == 0) {
+ dst[counter] = ch;
+ ++counter;
+ continue;
+ }
+
+ // UTF-8 character found
+ extract_utf8_multibyte<true>(dst, chars, counter, len);
+ }
+ return dst + counter - qch;
+}
+#endif
+
+void tst_QString::fromUtf8Alternatives_data() const
+{
+ QTest::addColumn<FromUtf8Function>("function");
+ QTest::newRow("empty") << FromUtf8Function(0);
+ QTest::newRow("qt-4.7") << &fromUtf8_qt47;
+ QTest::newRow("qt-4.7-stateless") << &fromUtf8_qt47_stateless;
+ QTest::newRow("optimized-for-ascii") << &fromUtf8_optimised_for_ascii;
+#ifdef __SSE2__
+ QTest::newRow("sse2-optimized-for-ascii") << &fromUtf8_sse2_optimised_for_ascii;
+ QTest::newRow("sse2-trusted-no-bom") << &fromUtf8_sse2_trusted_no_bom;
+#endif
+#ifdef __ARM_NEON__
+ QTest::newRow("neon") << &fromUtf8_neon;
+ QTest::newRow("neon-trusted-no-bom") << &fromUtf8_neon_trusted;
+#endif
+
+ QTest::newRow("latin1-generic") << &fromUtf8_latin1_regular;
+#ifdef __SSE2__
+ QTest::newRow("latin1-sse2-qt4.7") << &fromUtf8_latin1_qt47;
+ QTest::newRow("latin1-sse2-improved") << &fromUtf8_latin1_sse2_improved;
+#endif
+#ifdef __ARM_NEON__
+ QTest::newRow("latin1-neon-improved") << &fromUtf8_latin1_neon;
+#endif
+}
+
+extern StringData fromUtf8Data;
+static void fromUtf8Alternatives_internal(FromUtf8Function function, QString &dst, bool doVerify)
+{
+ if (!doVerify) {
+ // NOTE: this only works because the Latin1 data is ASCII-only
+ fromLatin1Alternatives_internal(reinterpret_cast<FromLatin1Function>(function), dst, doVerify);
+ } else {
+ if (strncmp(QTest::currentDataTag(), "latin1-", 7) == 0)
+ return;
+ }
+
+ struct Entry
+ {
+ int len;
+ int offset1, offset2;
+ int align1, align2;
+ };
+ const Entry *entries = reinterpret_cast<const Entry *>(fromUtf8Data.entries);
+
+ for (int i = 0; i < fromUtf8Data.entryCount; ++i) {
+ int len = entries[i].len;
+ const char *src = fromUtf8Data.charData + entries[i].offset1;
+
+ if (!function)
+ continue;
+ if (!doVerify) {
+ (function)(&dst.data()->unicode(), src, len);
+ } else {
+ dst.fill(QChar('x'), dst.length());
+
+ int utf8len = (function)(&dst.data()->unicode() + 8, src, len);
+
+ QString expected = QString::fromUtf8(src, len);
+ QString final = dst.mid(8, expected.length());
+ if (final != expected || utf8len != expected.length())
+ qDebug() << i << entries[i].offset1 << utf8len << final << expected.length() << expected;
+
+ QCOMPARE(final, expected);
+ QCOMPARE(utf8len, expected.length());
+
+ QString zeroes(8, QChar('x'));
+ QCOMPARE(dst.left(8), zeroes);
+ QCOMPARE(dst.mid(len + 8, 8), zeroes);
+ }
+ }
+}
+
+void tst_QString::fromUtf8Alternatives() const
+{
+ QFETCH(FromUtf8Function, function);
+
+ QString dst(fromUtf8Data.maxLength + 16, QChar('x'));
+ fromUtf8Alternatives_internal(function, dst, true);
+
+ QBENCHMARK {
+ fromUtf8Alternatives_internal(function, dst, false);
+ }
+}
+
+QTEST_MAIN(tst_QString)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qstring/qstring.pro b/tests/benchmarks/corelib/tools/qstring/qstring.pro
new file mode 100644
index 0000000000..5db9776b09
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/qstring.pro
@@ -0,0 +1,20 @@
+load(qttest_p4)
+TARGET = tst_bench_qstring
+QT -= gui
+SOURCES += main.cpp data.cpp fromlatin1.cpp fromutf8.cpp
+
+wince*:{
+ DEFINES += SRCDIR=\\\"\\\"
+} else:symbian* {
+ addFiles.files = utf-8.txt
+ addFiles.path = .
+ DEPLOYMENT += addFiles
+ TARGET.EPOCHEAPSIZE="0x100 0x1000000"
+} else {
+ DEFINES += SRCDIR=\\\"$$PWD/\\\"
+}
+
+sse4:QMAKE_CXXFLAGS += -msse4
+else:ssse3:QMAKE_FLAGS += -mssse3
+else:sse2:QMAKE_CXXFLAGS += -msse2
+neon:QMAKE_CXXFLAGS += -mfpu=neon
diff --git a/tests/benchmarks/corelib/tools/qstring/utf-8.txt b/tests/benchmarks/corelib/tools/qstring/utf-8.txt
new file mode 100644
index 0000000000..a8a58defe9
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstring/utf-8.txt
@@ -0,0 +1,72 @@
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
+Språk: Norsk
+Γλώσσα: Ελληνικά
+Язык: РуÑÑкий
+언어 : 한국어
+言語: 日本語
+Langage : Français
diff --git a/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp b/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp
new file mode 100644
index 0000000000..18094bfe0f
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp
@@ -0,0 +1,433 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+// Select one of the scenarios below
+#define SCENARIO 1
+
+#if SCENARIO == 1
+// this is the "no harm done" version. Only operator% is active,
+// with NO_CAST * defined
+#define P %
+#undef QT_USE_FAST_OPERATOR_PLUS
+#undef QT_USE_FAST_CONCATENATION
+#define QT_NO_CAST_FROM_ASCII
+#define QT_NO_CAST_TO_ASCII
+#endif
+
+
+#if SCENARIO == 2
+// this is the "full" version. Operator+ is replaced by a QStringBuilder
+// based version
+// with NO_CAST * defined
+#define P +
+#define QT_USE_FAST_OPERATOR_PLUS
+#define QT_USE_FAST_CONCATENATION
+#define QT_NO_CAST_FROM_ASCII
+#define QT_NO_CAST_TO_ASCII
+#endif
+
+#if SCENARIO == 3
+// this is the "no harm done" version. Only operator% is active,
+// with NO_CAST * _not_ defined
+#define P %
+#undef QT_USE_FAST_OPERATOR_PLUS
+#undef QT_USE_FAST_CONCATENATION
+#undef QT_NO_CAST_FROM_ASCII
+#undef QT_NO_CAST_TO_ASCII
+#endif
+
+#if SCENARIO == 4
+// this is the "full" version. Operator+ is replaced by a QStringBuilder
+// based version
+// with NO_CAST * _not_ defined
+#define P +
+#define QT_USE_FAST_OPERATOR_PLUS
+#define QT_USE_FAST_CONCATENATION
+#undef QT_NO_CAST_FROM_ASCII
+#undef QT_NO_CAST_TO_ASCII
+#endif
+
+
+#include <qbytearray.h>
+#include <qdebug.h>
+#include <qstring.h>
+#include <qstringbuilder.h>
+
+#include <qtest.h>
+
+#include <string>
+
+#define COMPARE(a, b) QCOMPARE(a, b)
+//#define COMPARE(a, b)
+
+#define SEP(s) qDebug() << "\n\n-------- " s " ---------";
+
+#define LITERAL "some string literal"
+
+class tst_qstringbuilder : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_qstringbuilder()
+ : l1literal(LITERAL),
+ l1string(LITERAL),
+ ba(LITERAL),
+ string(l1string),
+ stdstring(LITERAL),
+ stringref(&string, 2, 10),
+ achar('c'),
+ r2(QLatin1String(LITERAL LITERAL)),
+ r3(QLatin1String(LITERAL LITERAL LITERAL)),
+ r4(QLatin1String(LITERAL LITERAL LITERAL LITERAL)),
+ r5(QLatin1String(LITERAL LITERAL LITERAL LITERAL LITERAL))
+ {}
+
+
+public:
+ enum { N = 10000 };
+
+ int run_traditional()
+ {
+ int s = 0;
+ for (int i = 0; i < N; ++i) {
+#if 0
+ s += QString(l1string + l1string).size();
+ s += QString(l1string + l1string + l1string).size();
+ s += QString(l1string + l1string + l1string + l1string).size();
+ s += QString(l1string + l1string + l1string + l1string + l1string).size();
+#endif
+ s += QString(achar + l1string + achar).size();
+ }
+ return s;
+ }
+
+ int run_builder()
+ {
+ int s = 0;
+ for (int i = 0; i < N; ++i) {
+#if 0
+ s += QString(l1literal P l1literal).size();
+ s += QString(l1literal P l1literal P l1literal).size();
+ s += QString(l1literal P l1literal P l1literal P l1literal).size();
+ s += QString(l1literal P l1literal P l1literal P l1literal P l1literal).size();
+#endif
+ s += QString(achar % l1literal % achar).size();
+ }
+ return s;
+ }
+
+private slots:
+
+ void separator_0() {
+ qDebug() << "\nIn each block the QStringBuilder based result appear first "
+ "(with a 'b_' prefix), QStringBased second ('q_' prefix), std::string "
+ "last ('s_' prefix)\n";
+ }
+
+ void separator_1() { SEP("literal + literal (builder first)"); }
+
+ void b_2_l1literal() {
+ QBENCHMARK { r = l1literal P l1literal; }
+ COMPARE(r, r2);
+ }
+ #ifndef QT_NO_CAST_FROM_ASCII
+ void b_l1literal_LITERAL() {
+ QBENCHMARK { r = l1literal P LITERAL; }
+ COMPARE(r, r2);
+ }
+ #endif
+ void q_2_l1string() {
+ QBENCHMARK { r = l1string + l1string; }
+ COMPARE(r, r2);
+ }
+
+
+ void separator_2() { SEP("2 strings"); }
+
+ void b_2_string() {
+ QBENCHMARK { r = string P string; }
+ COMPARE(r, r2);
+ }
+ void q_2_string() {
+ QBENCHMARK { r = string + string; }
+ COMPARE(r, r2);
+ }
+ void s_2_string() {
+ QBENCHMARK { stdr = stdstring + stdstring; }
+ COMPARE(stdr, stdstring + stdstring);
+ }
+
+
+ void separator_2c() { SEP("2 string refs"); }
+
+ void b_2_stringref() {
+ QBENCHMARK { r = stringref % stringref; }
+ COMPARE(r, QString(stringref.toString() + stringref.toString()));
+ }
+ void q_2_stringref() {
+ QBENCHMARK { r = stringref.toString() + stringref.toString(); }
+ COMPARE(r, QString(stringref % stringref));
+ }
+
+
+ void separator_2b() { SEP("3 strings"); }
+
+ void b_3_string() {
+ QBENCHMARK { r = string P string P string; }
+ COMPARE(r, r3);
+ }
+ void q_3_string() {
+ QBENCHMARK { r = string + string + string; }
+ COMPARE(r, r3);
+ }
+ void s_3_string() {
+ QBENCHMARK { stdr = stdstring + stdstring + stdstring; }
+ COMPARE(stdr, stdstring + stdstring + stdstring);
+ }
+
+ void separator_2e() { SEP("4 strings"); }
+
+ void b_4_string() {
+ QBENCHMARK { r = string P string P string P string; }
+ COMPARE(r, r4);
+ }
+ void q_4_string() {
+ QBENCHMARK { r = string + string + string + string; }
+ COMPARE(r, r4);
+ }
+ void s_4_string() {
+ QBENCHMARK { stdr = stdstring + stdstring + stdstring + stdstring; }
+ COMPARE(stdr, stdstring + stdstring + stdstring + stdstring);
+ }
+
+
+
+ void separator_2a() { SEP("string + literal (builder first)"); }
+
+ void b_string_l1literal() {
+ QBENCHMARK { r = string % l1literal; }
+ COMPARE(r, r2);
+ }
+ #ifndef QT_NO_CAST_FROM_ASCII
+ void b_string_LITERAL() {
+ QBENCHMARK { r = string P LITERAL; }
+ COMPARE(r, r2);
+ }
+ void b_LITERAL_string() {
+ QBENCHMARK { r = LITERAL P string; }
+ COMPARE(r, r2);
+ }
+ #endif
+ void b_string_l1string() {
+ QBENCHMARK { r = string P l1string; }
+ COMPARE(r, r2);
+ }
+ void q_string_l1literal() {
+ QBENCHMARK { r = string + l1string; }
+ COMPARE(r, r2);
+ }
+ void q_string_l1string() {
+ QBENCHMARK { r = string + l1string; }
+ COMPARE(r, r2);
+ }
+ void s_LITERAL_string() {
+ QBENCHMARK { stdr = LITERAL + stdstring; }
+ COMPARE(stdr, stdstring + stdstring);
+ }
+
+
+ void separator_3() { SEP("3 literals"); }
+
+ void b_3_l1literal() {
+ QBENCHMARK { r = l1literal P l1literal P l1literal; }
+ COMPARE(r, r3);
+ }
+ void q_3_l1string() {
+ QBENCHMARK { r = l1string + l1string + l1string; }
+ COMPARE(r, r3);
+ }
+ void s_3_l1string() {
+ QBENCHMARK { stdr = stdstring + LITERAL + LITERAL; }
+ COMPARE(stdr, stdstring + stdstring + stdstring);
+ }
+
+
+ void separator_4() { SEP("4 literals"); }
+
+ void b_4_l1literal() {
+ QBENCHMARK { r = l1literal P l1literal P l1literal P l1literal; }
+ COMPARE(r, r4);
+ }
+ void q_4_l1string() {
+ QBENCHMARK { r = l1string + l1string + l1string + l1string; }
+ COMPARE(r, r4);
+ }
+
+
+ void separator_5() { SEP("5 literals"); }
+
+ void b_5_l1literal() {
+ QBENCHMARK { r = l1literal P l1literal P l1literal P l1literal P l1literal; }
+ COMPARE(r, r5);
+ }
+
+ void q_5_l1string() {
+ QBENCHMARK { r = l1string + l1string + l1string + l1string + l1string; }
+ COMPARE(r, r5);
+ }
+
+
+ void separator_6() { SEP("4 chars"); }
+
+ void b_string_4_char() {
+ QBENCHMARK { r = string + achar + achar + achar + achar; }
+ COMPARE(r, QString(string P achar P achar P achar P achar));
+ }
+
+ void q_string_4_char() {
+ QBENCHMARK { r = string + achar + achar + achar + achar; }
+ COMPARE(r, QString(string P achar P achar P achar P achar));
+ }
+
+ void s_string_4_char() {
+ QBENCHMARK { stdr = stdstring + 'c' + 'c' + 'c' + 'c'; }
+ COMPARE(stdr, stdstring + 'c' + 'c' + 'c' + 'c');
+ }
+
+
+ void separator_7() { SEP("char + string + char"); }
+
+ void b_char_string_char() {
+ QBENCHMARK { r = achar + string + achar; }
+ COMPARE(r, QString(achar P string P achar));
+ }
+
+ void q_char_string_char() {
+ QBENCHMARK { r = achar + string + achar; }
+ COMPARE(r, QString(achar P string P achar));
+ }
+
+ void s_char_string_char() {
+ QBENCHMARK { stdr = 'c' + stdstring + 'c'; }
+ COMPARE(stdr, 'c' + stdstring + 'c');
+ }
+
+
+ void separator_8() { SEP("string.arg"); }
+
+ void b_string_arg() {
+ const QString pattern = l1string + QString::fromLatin1("%1") + l1string;
+ QBENCHMARK { r = l1literal P string P l1literal; }
+ COMPARE(r, r3);
+ }
+
+ void q_string_arg() {
+ const QString pattern = l1string + QLatin1String("%1") + l1string;
+ QBENCHMARK { r = pattern.arg(string); }
+ COMPARE(r, r3);
+ }
+
+ void q_bytearray_arg() {
+ QByteArray result;
+ QBENCHMARK { result = ba + ba + ba; }
+ }
+
+
+ void separator_9() { SEP("QString::reserve()"); }
+
+ void b_reserve() {
+ QBENCHMARK {
+ r.clear();
+ r = string P string P string P string;
+ }
+ COMPARE(r, r4);
+ }
+ void b_reserve_lit() {
+ QBENCHMARK {
+ r.clear();
+ r = string P l1literal P string P string;
+ }
+ COMPARE(r, r4);
+ }
+ void s_reserve() {
+ QBENCHMARK {
+ r.clear();
+ r.reserve(string.size() + string.size() + string.size() + string.size());
+ r += string;
+ r += string;
+ r += string;
+ r += string;
+ }
+ COMPARE(r, r4);
+ }
+ void s_reserve_lit() {
+ QBENCHMARK {
+ r.clear();
+ //r.reserve(string.size() + qstrlen(l1string.latin1())
+ // + string.size() + string.size());
+ r.reserve(1024);
+ r += string;
+ r += l1string;
+ r += string;
+ r += string;
+ }
+ COMPARE(r, r4);
+ }
+
+private:
+ const QLatin1Literal l1literal;
+ const QLatin1String l1string;
+ const QByteArray ba;
+ const QString string;
+ const std::string stdstring;
+ const QStringRef stringref;
+ const QLatin1Char achar;
+ const QString r2, r3, r4, r5;
+
+ // short cuts for results
+ QString r;
+ std::string stdr;
+};
+
+QTEST_MAIN(tst_qstringbuilder)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qstringbuilder/qstringbuilder.pro b/tests/benchmarks/corelib/tools/qstringbuilder/qstringbuilder.pro
new file mode 100644
index 0000000000..948657e8e2
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstringbuilder/qstringbuilder.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qstringbuilder
+
+QMAKE_CXXFLAGS += -g
+QMAKE_CFLAGS += -g
+
+QT -= gui
+
+CONFIG += release
+
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qstringlist/.gitignore b/tests/benchmarks/corelib/tools/qstringlist/.gitignore
new file mode 100644
index 0000000000..3e0cdc952f
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstringlist/.gitignore
@@ -0,0 +1 @@
+tst_qstringlist
diff --git a/tests/benchmarks/corelib/tools/qstringlist/main.cpp b/tests/benchmarks/corelib/tools/qstringlist/main.cpp
new file mode 100644
index 0000000000..e07dcd4577
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstringlist/main.cpp
@@ -0,0 +1,218 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QStringList>
+#include <QtTest>
+
+#include <sstream>
+#include <string>
+#include <vector>
+
+class tst_QStringList: public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void join() const;
+ void join_data() const;
+
+ void split_qlist_qbytearray() const;
+ void split_qlist_qbytearray_data() const { return split_data(); }
+
+ void split_data() const;
+ void split_qlist_qstring() const;
+ void split_qlist_qstring_data() const { return split_data(); }
+
+ void split_stdvector_stdstring() const;
+ void split_stdvector_stdstring_data() const { return split_data(); }
+
+ void split_stdvector_stdwstring() const;
+ void split_stdvector_stdwstring_data() const { return split_data(); }
+
+ void split_stdlist_stdstring() const;
+ void split_stdlist_stdstring_data() const { return split_data(); }
+
+private:
+ static QStringList populateList(const int count, const QString &unit);
+ static QString populateString(const int count, const QString &unit);
+};
+
+QStringList tst_QStringList::populateList(const int count, const QString &unit)
+{
+ QStringList retval;
+
+ for (int i = 0; i < count; ++i)
+ retval.append(unit);
+
+ return retval;
+}
+
+QString tst_QStringList::populateString(const int count, const QString &unit)
+{
+ QString retval;
+
+ for (int i = 0; i < count; ++i) {
+ retval.append(unit);
+ retval.append(QLatin1Char(':'));
+ }
+
+ return retval;
+}
+
+void tst_QStringList::join() const
+{
+ QFETCH(QStringList, input);
+ QFETCH(QString, separator);
+
+ QBENCHMARK {
+ input.join(separator);
+ }
+}
+
+void tst_QStringList::join_data() const
+{
+ QTest::addColumn<QStringList>("input");
+ QTest::addColumn<QString>("separator");
+
+ QTest::newRow("")
+ << populateList(100, QLatin1String("unit"))
+ << QString();
+
+ QTest::newRow("")
+ << populateList(1000, QLatin1String("unit"))
+ << QString();
+
+ QTest::newRow("")
+ << populateList(10000, QLatin1String("unit"))
+ << QString();
+
+ QTest::newRow("")
+ << populateList(100000, QLatin1String("unit"))
+ << QString();
+}
+
+void tst_QStringList::split_data() const
+{
+ QTest::addColumn<QString>("input");
+ QString unit = QLatin1String("unit") + QString(100, QLatin1Char('s'));
+ //QTest::newRow("") << populateString(10, unit);
+ QTest::newRow("") << populateString(100, unit);
+ //QTest::newRow("") << populateString(100, unit);
+ //QTest::newRow("") << populateString(1000, unit);
+ //QTest::newRow("") << populateString(10000, unit);
+}
+
+void tst_QStringList::split_qlist_qbytearray() const
+{
+ QFETCH(QString, input);
+ const char splitChar = ':';
+ QByteArray ba = input.toLatin1();
+
+ QBENCHMARK {
+ ba.split(splitChar);
+ }
+}
+
+void tst_QStringList::split_qlist_qstring() const
+{
+ QFETCH(QString, input);
+ const QChar splitChar = ':';
+
+ QBENCHMARK {
+ input.split(splitChar);
+ }
+}
+
+void tst_QStringList::split_stdvector_stdstring() const
+{
+#ifndef QT_NO_STL
+ QFETCH(QString, input);
+ const char split_char = ':';
+ std::string stdinput = input.toStdString();
+
+ QBENCHMARK {
+ std::istringstream split(stdinput);
+ std::vector<std::string> token;
+ for (std::string each;
+ std::getline(split, each, split_char);
+ token.push_back(each))
+ ;
+ }
+#endif
+}
+
+void tst_QStringList::split_stdvector_stdwstring() const
+{
+#ifndef QT_NO_STL
+ QFETCH(QString, input);
+ const wchar_t split_char = ':';
+ std::wstring stdinput = input.toStdWString();
+
+ QBENCHMARK {
+ std::wistringstream split(stdinput);
+ std::vector<std::wstring> token;
+ for (std::wstring each;
+ std::getline(split, each, split_char);
+ token.push_back(each))
+ ;
+ }
+#endif
+}
+
+void tst_QStringList::split_stdlist_stdstring() const
+{
+ QFETCH(QString, input);
+ const char split_char = ':';
+ std::string stdinput = input.toStdString();
+
+ QBENCHMARK {
+ std::istringstream split(stdinput);
+ std::list<std::string> token;
+ for (std::string each;
+ std::getline(split, each, split_char);
+ token.push_back(each))
+ ;
+ }
+}
+
+QTEST_MAIN(tst_QStringList)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qstringlist/qstringlist.pro b/tests/benchmarks/corelib/tools/qstringlist/qstringlist.pro
new file mode 100644
index 0000000000..06a5836aa1
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qstringlist/qstringlist.pro
@@ -0,0 +1,8 @@
+load(qttest_p4)
+TARGET = tst_bench_qstringlist
+CONFIG -= debug
+CONFIG += release
+QT -= gui
+SOURCES += main.cpp
+
+symbian: LIBS += -llibpthread
diff --git a/tests/benchmarks/corelib/tools/qvector/main.cpp b/tests/benchmarks/corelib/tools/qvector/main.cpp
new file mode 100644
index 0000000000..98a6bb2b2f
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qvector/main.cpp
@@ -0,0 +1,390 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QVector>
+#include <QDebug>
+#include <QtTest>
+
+#include "qrawvector.h"
+
+#include <vector>
+
+/*
+
+Code generated by g++ 4.3.3. The lines marked with '!' are the ones that get
+executed inside the loop. Using the external 's' causes some load making the
+loop resembling a 'simple inner loop' in 'real' applications.
+
+
+qvector_mutable_read_access:
+
+.L166:
+! movl -16(%ebp), %edx
+! movl (%edx), %eax
+! subl $1, %eax
+! je .L165
+ movl 4(%edx), %eax
+ movl %eax, 8(%esp)
+ movl 8(%edx), %eax
+ movl %esi, (%esp)
+ movl %eax, 4(%esp)
+ call _ZN4myns7QVectorIdE7reallocEii
+.L165:
+! movl -16(%ebp), %eax
+! fldl s
+! faddl 16(%eax,%ebx,8)
+! addl $1, %ebx
+! cmpl $10000, %ebx
+! fstpl s
+! jne .L166
+
+
+qvector_const_read_access:
+
+ movl -16(%ebp), %edx
+ xorl %eax, %eax
+.L183:
+! fldl s
+! faddl 16(%edx,%eax,8)
+! addl $1, %eax
+! cmpl $10000, %eax
+! fstpl s
+! jne .L183
+
+
+stdvector_const_read_access and stdvector_mutable_read_access and
+qrawvector_const_read_access and qrawvector_mutable_read_access:
+
+ xorl %eax, %eax
+.L64:
+! fldl s
+! faddl (%ebx,%eax,8)
+! addl $1, %eax
+! cmpl $10000, %eax
+! fstpl s
+! jne .L64
+
+
+
+Behaviour varies with small modifications, but total is more or
+less stable:
+
+qrawvector_mutable_read_access, using size() instead of N:
+
+.L145:
+! faddl (%edx,%eax,8)
+! addl $1, %eax
+! cmpl %ecx, %eax
+! fstl s
+! jne .L145
+! fstp %st(0)
+
+
+qrawvector_mutable_read_access, counting backward:
+
+.L145:
+! faddl (%edx,%eax,8)
+! subl $1, %eax
+! cmpl $-1, %eax
+! fstl s
+! jne .L145
+
+
+qrawvector_mutable_read_access, counting backward, using size():
+
+.L146:
+! faddl (%edx)
+! addl $1, %eax
+! subl $8, %edx
+! cmpl %ecx, %eax
+! fstl s
+! jne .L146
+
+
+
+*/
+
+
+/*
+
+////////////////////////////////////////////////////////////////////
+
+time ./tst_vector qvector_const_read_access
+real 0m12.912s
+user 0m12.401s
+sys 0m0.016s
+
+time ./tst_vector qvector_mutable_read_access
+real 0m38.566s
+user 0m36.754s
+sys 0m0.008s
+
+
+time ./tst_vector stdvector_mutable_read_access
+real 0m12.736s
+user 0m12.665s
+sys 0m0.004s
+
+
+////////////////////////////////////////////////////////////////////
+
+time ./tst_vector qvector_fill_and_return
+real 0m28.778s
+user 0m28.522s
+sys 0m0.012s
+
+time ./tst_vector stdvector_fill_and_return
+real 0m26.675s
+user 0m26.558s
+sys 0m0.012s
+
+time ./tst_vector qrawvector_fill_and_return
+real 0m23.370s
+user 0m23.269s
+sys 0m0.008s
+
+
+
+*/
+
+
+
+#define TEST_RETURN 1
+
+// For some reason, both 'plain' and '-callgrind' create strange results
+// (like varying instruction count for the same assembly code)
+// So replace it by a plain loop and measure wall clock time.
+//#undef QBENCHMARK
+//#define QBENCHMARK for (int j = 0; j != 10000; ++j)
+
+class tst_QVector: public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void calibration();
+
+ // Pure Qt solution
+ void qvector_separator() { qWarning() << "QVector results: "; }
+ void qvector_const_read_access();
+ void qvector_mutable_read_access();
+ #ifdef TEST_RETURN
+ void qvector_fill_and_return();
+ #endif
+
+ // Purre Standard solution
+ void stdvector() { qWarning() << "std::vector results: "; }
+ void stdvector_const_read_access();
+ void stdvector_mutable_read_access();
+ #ifdef TEST_RETURN
+ void stdvector_fill_and_return();
+ #endif
+
+ // Build using std, pass as QVector
+ void mixedvector() { qWarning() << "mixed results: "; }
+ #ifdef TEST_RETURN
+ void mixedvector_fill_and_return();
+ #endif
+
+ // Alternative implementation
+ void qrawvector_separator() { qWarning() << "QRawVector results: "; }
+ void qrawvector_const_read_access();
+ void qrawvector_mutable_read_access();
+ #ifdef TEST_RETURN
+ void qrawvector_fill_and_return();
+ #endif
+};
+
+const int N = 1000000;
+extern double s;
+
+void tst_QVector::calibration()
+{
+ QVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+ QBENCHMARK {
+ for (int i = 0; i != N; ++i)
+ s += i;
+ }
+}
+
+///////////////////// QVector /////////////////////
+
+void tst_QVector::qvector_const_read_access()
+{
+ QVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+
+ const QVector<double> &vc = v;
+ QBENCHMARK {
+ for (int i = 0; i != N; ++i)
+ s += vc[i];
+ }
+}
+
+void tst_QVector::qvector_mutable_read_access()
+{
+ QVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+
+ QBENCHMARK {
+ for (int i = 0; i != N; ++i)
+ s += v[i];
+ }
+}
+
+#ifdef TEST_RETURN
+extern QVector<double> qvector_fill_and_return_helper();
+
+void tst_QVector::qvector_fill_and_return()
+{
+ QBENCHMARK {
+ QVector<double> v = qvector_fill_and_return_helper();
+ s += v[1];
+ }
+}
+
+#endif
+
+
+///////////////////// QRawVector /////////////////////
+
+void tst_QVector::qrawvector_const_read_access()
+{
+ QRawVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+
+ const QRawVector<double> &vc = v;
+ QBENCHMARK {
+ for (int i = vc.size(); --i >= 0;)
+ s += vc[i];
+ }
+}
+
+void tst_QVector::qrawvector_mutable_read_access()
+{
+ QRawVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+
+ QBENCHMARK {
+ for (int i = 0; i != N; ++i)
+ s += v[i];
+ }
+}
+
+#ifdef TEST_RETURN
+extern QVector<double> qrawvector_fill_and_return_helper();
+
+void tst_QVector::qrawvector_fill_and_return()
+{
+ QBENCHMARK {
+ QVector<double> v = qrawvector_fill_and_return_helper();
+ s += v[1];
+ }
+}
+
+#endif
+
+
+///////////////////// std::vector /////////////////////
+
+void tst_QVector::stdvector_const_read_access()
+{
+ std::vector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+
+ const std::vector<double> &vc = v;
+ QBENCHMARK {
+ for (int i = 0; i != N; ++i)
+ s += vc[i];
+ }
+}
+
+void tst_QVector::stdvector_mutable_read_access()
+{
+ std::vector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+
+ QBENCHMARK {
+ for (int i = 0; i != N; ++i)
+ s += v[i];
+ }
+}
+
+#ifdef TEST_RETURN
+extern std::vector<double> stdvector_fill_and_return_helper();
+
+void tst_QVector::stdvector_fill_and_return()
+{
+ QBENCHMARK {
+ std::vector<double> v = stdvector_fill_and_return_helper();
+ s += v[1];
+ }
+}
+
+#endif
+
+///////////////////// mixed vector /////////////////////
+
+
+#ifdef TEST_RETURN
+extern QVector<double> mixedvector_fill_and_return_helper();
+
+void tst_QVector::mixedvector_fill_and_return()
+{
+ QBENCHMARK {
+ std::vector<double> v = stdvector_fill_and_return_helper();
+ s += v[1];
+ }
+}
+
+#endif
+
+QTEST_MAIN(tst_QVector)
+
+#include "main.moc"
diff --git a/tests/benchmarks/corelib/tools/qvector/outofline.cpp b/tests/benchmarks/corelib/tools/qvector/outofline.cpp
new file mode 100644
index 0000000000..9d5bcd7b90
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qvector/outofline.cpp
@@ -0,0 +1,81 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtTest module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QVector>
+#include <vector>
+#include "qrawvector.h"
+
+const int N = 1000000;
+double s = 0;
+
+QVector<double> qvector_fill_and_return_helper()
+{
+ QVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+ return v;
+}
+
+QVector<double> qrawvector_fill_and_return_helper()
+{
+ QRawVector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+ return v.mutateToVector();
+}
+
+QVector<double> mixedvector_fill_and_return_helper()
+{
+ std::vector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+ return QVector<double>::fromStdVector(v);
+}
+
+
+std::vector<double> stdvector_fill_and_return_helper()
+{
+ std::vector<double> v(N);
+ for (int i = 0; i != N; ++i)
+ v[i] = i;
+ return v;
+}
+
diff --git a/tests/benchmarks/corelib/tools/qvector/qrawvector.h b/tests/benchmarks/corelib/tools/qvector/qrawvector.h
new file mode 100644
index 0000000000..ec3df92cd3
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qvector/qrawvector.h
@@ -0,0 +1,742 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtCore module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QRAWVECTOR_H
+#define QRAWVECTOR_H
+
+#include <QtCore/qiterator.h>
+#include <QtCore/qdebug.h>
+#include <QtCore/qatomic.h>
+#include <QtCore/qalgorithms.h>
+#include <QtCore/qlist.h>
+
+#ifndef QT_NO_STL
+#include <iterator>
+#include <vector>
+#endif
+#include <stddef.h>
+#include <stdlib.h>
+#include <string.h>
+
+QT_BEGIN_HEADER
+
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Core)
+
+
+
+template <typename T>
+class QRawVector
+{
+ struct Data : QVectorData { T array[1]; };
+
+ T *m_begin;
+ int m_size;
+ int m_alloc;
+
+public:
+ //static Data dummy;
+ //int headerOffset() { return (char*)&dummy.array - (char*)&dummy; }
+ inline int headerOffset() const {
+ // gcc complains about: return offsetof(Data, array); and also
+ // does not like '0' in the expression below.
+ return (char *)&(((Data *)(1))->array) - (char *)1;
+ }
+ inline Data *toBase(T *begin) const
+ { return (Data*)((char*)begin - headerOffset()); }
+ inline T *fromBase(void *d) const
+ { return (T*)((char*)d + headerOffset()); }
+ inline QRawVector()
+ { m_begin = fromBase(0); m_alloc = m_size = 0; realloc(m_size, m_alloc, true); }
+ explicit QRawVector(int size);
+ QRawVector(int size, const T &t);
+ inline QRawVector(const QRawVector<T> &v)
+ { m_begin = v.m_begin; m_alloc = v.m_alloc; m_size = v.m_size; realloc(m_size, m_alloc, true); }
+ inline ~QRawVector() { free(m_begin, m_size); }
+ QRawVector<T> &operator=(const QRawVector<T> &v);
+ bool operator==(const QRawVector<T> &v) const;
+ inline bool operator!=(const QRawVector<T> &v) const { return !(*this == v); }
+
+ inline int size() const { return m_size; }
+
+ inline bool isEmpty() const { return m_size == 0; }
+
+ void resize(int size);
+
+ inline int capacity() const { return m_alloc; }
+ void reserve(int size);
+ inline void squeeze() { realloc(m_size, m_size, false); }
+
+ inline T *data() { return m_begin; }
+ inline const T *data() const { return m_begin; }
+ inline const T *constData() const { return m_begin; }
+ void clear();
+
+ const T &at(int i) const;
+ T &operator[](int i);
+ const T &operator[](int i) const;
+ void append(const T &t);
+ void prepend(const T &t);
+ void insert(int i, const T &t);
+ void insert(int i, int n, const T &t);
+ void replace(int i, const T &t);
+ void remove(int i);
+ void remove(int i, int n);
+
+ QRawVector<T> &fill(const T &t, int size = -1);
+
+ int indexOf(const T &t, int from = 0) const;
+ int lastIndexOf(const T &t, int from = -1) const;
+ bool contains(const T &t) const;
+ int count(const T &t) const;
+
+#ifdef QT_STRICT_ITERATORS
+ class iterator {
+ public:
+ T *i;
+ typedef std::random_access_iterator_tag iterator_category;
+ typedef ptrdiff_t difference_type;
+ typedef T value_type;
+ typedef T *pointer;
+ typedef T &reference;
+
+ inline iterator() : i(0) {}
+ inline iterator(T *n) : i(n) {}
+ inline iterator(const iterator &o): i(o.i){}
+ inline T &operator*() const { return *i; }
+ inline T *operator->() const { return i; }
+ inline T &operator[](int j) const { return *(i + j); }
+ inline bool operator==(const iterator &o) const { return i == o.i; }
+ inline bool operator!=(const iterator &o) const { return i != o.i; }
+ inline bool operator<(const iterator& other) const { return i < other.i; }
+ inline bool operator<=(const iterator& other) const { return i <= other.i; }
+ inline bool operator>(const iterator& other) const { return i > other.i; }
+ inline bool operator>=(const iterator& other) const { return i >= other.i; }
+ inline iterator &operator++() { ++i; return *this; }
+ inline iterator operator++(int) { T *n = i; ++i; return n; }
+ inline iterator &operator--() { i--; return *this; }
+ inline iterator operator--(int) { T *n = i; i--; return n; }
+ inline iterator &operator+=(int j) { i+=j; return *this; }
+ inline iterator &operator-=(int j) { i-=j; return *this; }
+ inline iterator operator+(int j) const { return iterator(i+j); }
+ inline iterator operator-(int j) const { return iterator(i-j); }
+ inline int operator-(iterator j) const { return i - j.i; }
+ };
+ friend class iterator;
+
+ class const_iterator {
+ public:
+ T *i;
+ typedef std::random_access_iterator_tag iterator_category;
+ typedef ptrdiff_t difference_type;
+ typedef T value_type;
+ typedef const T *pointer;
+ typedef const T &reference;
+
+ inline const_iterator() : i(0) {}
+ inline const_iterator(T *n) : i(n) {}
+ inline const_iterator(const const_iterator &o): i(o.i) {}
+ inline explicit const_iterator(const iterator &o): i(o.i) {}
+ inline const T &operator*() const { return *i; }
+ inline const T *operator->() const { return i; }
+ inline const T &operator[](int j) const { return *(i + j); }
+ inline bool operator==(const const_iterator &o) const { return i == o.i; }
+ inline bool operator!=(const const_iterator &o) const { return i != o.i; }
+ inline bool operator<(const const_iterator& other) const { return i < other.i; }
+ inline bool operator<=(const const_iterator& other) const { return i <= other.i; }
+ inline bool operator>(const const_iterator& other) const { return i > other.i; }
+ inline bool operator>=(const const_iterator& other) const { return i >= other.i; }
+ inline const_iterator &operator++() { ++i; return *this; }
+ inline const_iterator operator++(int) { T *n = i; ++i; return n; }
+ inline const_iterator &operator--() { i--; return *this; }
+ inline const_iterator operator--(int) { T *n = i; i--; return n; }
+ inline const_iterator &operator+=(int j) { i+=j; return *this; }
+ inline const_iterator &operator-=(int j) { i+=j; return *this; }
+ inline const_iterator operator+(int j) const { return const_iterator(i+j); }
+ inline const_iterator operator-(int j) const { return const_iterator(i-j); }
+ inline int operator-(const_iterator j) const { return i - j.i; }
+ };
+ friend class const_iterator;
+#else
+ // STL-style
+ typedef T *iterator;
+ typedef const T *const_iterator;
+#endif
+ inline iterator begin() { return m_begin; }
+ inline const_iterator begin() const { return m_begin; }
+ inline const_iterator constBegin() const { return m_begin; }
+ inline iterator end() { return m_begin + m_size; }
+ inline const_iterator end() const { return m_begin + m_size; }
+ inline const_iterator constEnd() const { return m_begin + m_size; }
+ iterator insert(iterator before, int n, const T &x);
+ inline iterator insert(iterator before, const T &x) { return insert(before, 1, x); }
+ iterator erase(iterator begin, iterator end);
+ inline iterator erase(iterator pos) { return erase(pos, pos+1); }
+
+ // more Qt
+ inline int count() const { return m_size; }
+ inline T& first() { Q_ASSERT(!isEmpty()); return *begin(); }
+ inline const T &first() const { Q_ASSERT(!isEmpty()); return *begin(); }
+ inline T& last() { Q_ASSERT(!isEmpty()); return *(end()-1); }
+ inline const T &last() const { Q_ASSERT(!isEmpty()); return *(end()-1); }
+ inline bool startsWith(const T &t) const { return !isEmpty() && first() == t; }
+ inline bool endsWith(const T &t) const { return !isEmpty() && last() == t; }
+ QRawVector<T> mid(int pos, int length = -1) const;
+
+ T value(int i) const;
+ T value(int i, const T &defaultValue) const;
+
+ // STL compatibility
+ typedef T value_type;
+ typedef value_type *pointer;
+ typedef const value_type *const_pointer;
+ typedef value_type &reference;
+ typedef const value_type &const_reference;
+ typedef ptrdiff_t difference_type;
+ typedef iterator Iterator;
+ typedef const_iterator ConstIterator;
+ typedef int size_type;
+ inline void push_back(const T &t) { append(t); }
+ inline void push_front(const T &t) { prepend(t); }
+ void pop_back() { Q_ASSERT(!isEmpty()); erase(end()-1); }
+ void pop_front() { Q_ASSERT(!isEmpty()); erase(begin()); }
+ inline bool empty() const { return m_size == 0; }
+ inline T &front() { return first(); }
+ inline const_reference front() const { return first(); }
+ inline reference back() { return last(); }
+ inline const_reference back() const { return last(); }
+
+ // comfort
+ QRawVector<T> &operator+=(const QRawVector<T> &l);
+ inline QRawVector<T> operator+(const QRawVector<T> &l) const
+ { QRawVector n = *this; n += l; return n; }
+ inline QRawVector<T> &operator+=(const T &t)
+ { append(t); return *this; }
+ inline QRawVector<T> &operator<< (const T &t)
+ { append(t); return *this; }
+ inline QRawVector<T> &operator<<(const QRawVector<T> &l)
+ { *this += l; return *this; }
+
+ QList<T> toList() const;
+
+ //static QRawVector<T> fromList(const QList<T> &list);
+
+#ifndef QT_NO_STL
+ static inline QRawVector<T> fromStdVector(const std::vector<T> &vector)
+ { QRawVector<T> tmp; qCopy(vector.begin(), vector.end(), std::back_inserter(tmp)); return tmp; }
+ inline std::vector<T> toStdVector() const
+ { std::vector<T> tmp; qCopy(constBegin(), constEnd(), std::back_inserter(tmp)); return tmp; }
+#endif
+
+private:
+ T *allocate(int alloc);
+ void realloc(int size, int alloc, bool ref);
+ void free(T *begin, int size);
+ int sizeOfTypedData() {
+ // this is more or less the same as sizeof(Data), except that it doesn't
+ // count the padding at the end
+ return reinterpret_cast<const char *>(&(reinterpret_cast<const Data *>(this))->array[1]) - reinterpret_cast<const char *>(this);
+ }
+ static inline int alignOfTypedData()
+ {
+#ifdef Q_ALIGNOF
+ return qMax<int>(sizeof(void*), Q_ALIGNOF(Data));
+#else
+ return 0;
+#endif
+ }
+
+public:
+ QVector<T> mutateToVector()
+ {
+ Data *d = toBase(m_begin);
+ d->ref = 1;
+ d->alloc = m_alloc;
+ d->size = m_size;
+ d->sharable = 0;
+ d->capacity = 0;
+
+ QVector<T> v;
+ *reinterpret_cast<QVectorData **>(&v) = d;
+ m_begin = fromBase(0);
+ m_size = m_alloc = 0;
+ return v;
+ }
+};
+
+
+template <typename T>
+void QRawVector<T>::reserve(int asize)
+{ if (asize > m_alloc) realloc(m_size, asize, false); }
+template <typename T>
+void QRawVector<T>::resize(int asize)
+{ realloc(asize, (asize > m_alloc || (asize < m_size && asize < (m_alloc >> 1)))
+ ? QVectorData::grow(sizeOfTypedData(), asize, sizeof(T), QTypeInfo<T>::isStatic)
+ : m_alloc, false); }
+template <typename T>
+inline void QRawVector<T>::clear()
+{ *this = QRawVector<T>(); }
+template <typename T>
+inline const T &QRawVector<T>::at(int i) const
+{ Q_ASSERT_X(i >= 0 && i < m_size, "QRawVector<T>::at", "index out of range");
+ return m_begin[i]; }
+template <typename T>
+inline const T &QRawVector<T>::operator[](int i) const
+{ Q_ASSERT_X(i >= 0 && i < m_size, "QRawVector<T>::operator[]", "index out of range");
+ return m_begin[i]; }
+template <typename T>
+inline T &QRawVector<T>::operator[](int i)
+{ Q_ASSERT_X(i >= 0 && i < m_size, "QRawVector<T>::operator[]", "index out of range");
+ return data()[i]; }
+template <typename T>
+inline void QRawVector<T>::insert(int i, const T &t)
+{ Q_ASSERT_X(i >= 0 && i <= m_size, "QRawVector<T>::insert", "index out of range");
+ insert(begin() + i, 1, t); }
+template <typename T>
+inline void QRawVector<T>::insert(int i, int n, const T &t)
+{ Q_ASSERT_X(i >= 0 && i <= m_size, "QRawVector<T>::insert", "index out of range");
+ insert(begin() + i, n, t); }
+template <typename T>
+inline void QRawVector<T>::remove(int i, int n)
+{ Q_ASSERT_X(i >= 0 && n >= 0 && i + n <= m_size, "QRawVector<T>::remove", "index out of range");
+ erase(begin() + i, begin() + i + n); }
+template <typename T>
+inline void QRawVector<T>::remove(int i)
+{ Q_ASSERT_X(i >= 0 && i < m_size, "QRawVector<T>::remove", "index out of range");
+ erase(begin() + i, begin() + i + 1); }
+template <typename T>
+inline void QRawVector<T>::prepend(const T &t)
+{ insert(begin(), 1, t); }
+
+template <typename T>
+inline void QRawVector<T>::replace(int i, const T &t)
+{
+ Q_ASSERT_X(i >= 0 && i < m_size, "QRawVector<T>::replace", "index out of range");
+ const T copy(t);
+ data()[i] = copy;
+}
+
+template <typename T>
+QRawVector<T> &QRawVector<T>::operator=(const QRawVector<T> &v)
+{
+ if (this != &v) {
+ free(m_begin, m_size);
+ m_alloc = v.m_alloc;
+ m_size = v.m_size;
+ m_begin = v.m_begin;
+ realloc(m_size, m_alloc, true);
+ }
+ return *this;
+}
+
+template <typename T>
+inline T *QRawVector<T>::allocate(int aalloc)
+{
+ QVectorData *d = QVectorData::allocate(sizeOfTypedData() + (aalloc - 1) * sizeof(T), alignOfTypedData());
+ Q_CHECK_PTR(d);
+ return fromBase(d);
+}
+
+template <typename T>
+QRawVector<T>::QRawVector(int asize)
+{
+ m_size = m_alloc = asize;
+ m_begin = allocate(asize);
+ if (QTypeInfo<T>::isComplex) {
+ T *b = m_begin;
+ T *i = m_begin + m_size;
+ while (i != b)
+ new (--i) T;
+ } else {
+ qMemSet(m_begin, 0, asize * sizeof(T));
+ }
+}
+
+template <typename T>
+QRawVector<T>::QRawVector(int asize, const T &t)
+{
+ m_size = m_alloc = asize;
+ m_begin = allocate(asize);
+ T *i = m_begin + m_size;
+ while (i != m_begin)
+ new (--i) T(t);
+}
+
+template <typename T>
+void QRawVector<T>::free(T *begin, int size)
+{
+ if (QTypeInfo<T>::isComplex) {
+ T *i = begin + size;
+ while (i-- != begin)
+ i->~T();
+ }
+ Data *x = toBase(begin);
+ x->free(x, alignOfTypedData());
+}
+
+template <typename T>
+void QRawVector<T>::realloc(int asize, int aalloc, bool ref)
+{
+ if (QTypeInfo<T>::isComplex && asize < m_size && !ref) {
+ // call the destructor on all objects that need to be
+ // destroyed when shrinking
+ T *pOld = m_begin + m_size;
+ while (asize < m_size) {
+ (--pOld)->~T();
+ --m_size;
+ }
+ }
+
+ int xalloc = m_alloc;
+ int xsize = m_size;
+ bool changed = false;
+ T *xbegin = m_begin;
+ if (aalloc != xalloc || ref) {
+ // (re)allocate memory
+ if (QTypeInfo<T>::isStatic) {
+ xbegin = allocate(aalloc);
+ xsize = 0;
+ changed = true;
+ } else if (ref) {
+ xbegin = allocate(aalloc);
+ if (QTypeInfo<T>::isComplex) {
+ xsize = 0;
+ } else {
+ ::memcpy(xbegin, m_begin, qMin(aalloc, xalloc) * sizeof(T));
+ xsize = m_size;
+ }
+ changed = true;
+ } else {
+ QT_TRY {
+ QVectorData *mem = QVectorData::reallocate(
+ toBase(m_begin), sizeOfTypedData() + (aalloc - 1) * sizeof(T),
+ sizeOfTypedData()
++ (xalloc - 1) * sizeof(T), alignOfTypedData());
+ Q_CHECK_PTR(mem);
+ xbegin = fromBase(mem);
+ xsize = m_size;
+ } QT_CATCH (const std::bad_alloc &) {
+ if (aalloc > xalloc) // ignore the error in case we are just shrinking.
+ QT_RETHROW;
+ }
+ }
+ xalloc = aalloc;
+ }
+
+ if (QTypeInfo<T>::isComplex) {
+ QT_TRY {
+ T *pOld = m_begin + xsize;
+ T *pNew = xbegin + xsize;
+ // copy objects from the old array into the new array
+ while (xsize < qMin(asize, m_size)) {
+ new (pNew++) T(*pOld++);
+ ++xsize;
+ }
+ // construct all new objects when growing
+ while (xsize < asize) {
+ new (pNew++) T;
+ ++xsize;
+ }
+ } QT_CATCH (...) {
+ free(xbegin, xsize);
+ QT_RETHROW;
+ }
+
+ } else if (asize > xsize) {
+ // initialize newly allocated memory to 0
+ qMemSet(xbegin + xsize, 0, (asize - xsize) * sizeof(T));
+ }
+ xsize = asize;
+
+ if (changed) {
+ if (!ref)
+ free(m_begin, m_size);
+ }
+ m_alloc = xalloc;
+ m_size = xsize;
+ m_begin = xbegin;
+}
+
+template<typename T>
+Q_OUTOFLINE_TEMPLATE T QRawVector<T>::value(int i) const
+{
+ return (i < 0 || i >= m_size) ? T() : m_begin[i];
+}
+template<typename T>
+Q_OUTOFLINE_TEMPLATE T QRawVector<T>::value(int i, const T &defaultValue) const
+{
+ return (i < 0 || i >= m_size) ? defaultValue : m_begin[i];
+}
+
+template <typename T>
+void QRawVector<T>::append(const T &t)
+{
+ if (m_size + 1 > m_alloc) {
+ const T copy(t);
+ realloc(m_size, QVectorData::grow(sizeOfTypedData(), m_size + 1, sizeof(T),
+ QTypeInfo<T>::isStatic), false);
+ if (QTypeInfo<T>::isComplex)
+ new (m_begin + m_size) T(copy);
+ else
+ m_begin[m_size] = copy;
+ } else {
+ if (QTypeInfo<T>::isComplex)
+ new (m_begin + m_size) T(t);
+ else
+ m_begin[m_size] = t;
+ }
+ ++m_size;
+}
+
+template <typename T>
+Q_TYPENAME QRawVector<T>::iterator QRawVector<T>::insert(iterator before, size_type n, const T &t)
+{
+ int offset = int(before - m_begin);
+ if (n != 0) {
+ const T copy(t);
+ if (m_size + n > m_alloc)
+ realloc(m_size, QVectorData::grow(sizeOfTypedData(), m_size + n, sizeof(T),
+ QTypeInfo<T>::isStatic), false);
+ if (QTypeInfo<T>::isStatic) {
+ T *b = m_begin + m_size;
+ T *i = m_begin + m_size + n;
+ while (i != b)
+ new (--i) T;
+ i = m_begin + m_size;
+ T *j = i + n;
+ b = m_begin + offset;
+ while (i != b)
+ *--j = *--i;
+ i = b+n;
+ while (i != b)
+ *--i = copy;
+ } else {
+ T *b = m_begin + offset;
+ T *i = b + n;
+ memmove(i, b, (m_size - offset) * sizeof(T));
+ while (i != b)
+ new (--i) T(copy);
+ }
+ m_size += n;
+ }
+ return m_begin + offset;
+}
+
+template <typename T>
+Q_TYPENAME QRawVector<T>::iterator QRawVector<T>::erase(iterator abegin, iterator aend)
+{
+ int f = int(abegin - m_begin);
+ int l = int(aend - m_begin);
+ int n = l - f;
+ if (QTypeInfo<T>::isComplex) {
+ qCopy(m_begin + l, m_begin + m_size, m_begin + f);
+ T *i = m_begin + m_size;
+ T *b = m_begin + m_size - n;
+ while (i != b) {
+ --i;
+ i->~T();
+ }
+ } else {
+ memmove(m_begin + f, m_begin + l, (m_size - l) * sizeof(T));
+ }
+ m_size -= n;
+ return m_begin + f;
+}
+
+template <typename T>
+bool QRawVector<T>::operator==(const QRawVector<T> &v) const
+{
+ if (m_size != v.m_size)
+ return false;
+ T* b = m_begin;
+ T* i = b + m_size;
+ T* j = v.m_begin + m_size;
+ while (i != b)
+ if (!(*--i == *--j))
+ return false;
+ return true;
+}
+
+template <typename T>
+QRawVector<T> &QRawVector<T>::fill(const T &from, int asize)
+{
+ const T copy(from);
+ resize(asize < 0 ? m_size : asize);
+ if (m_size) {
+ T *i = m_begin + m_size;
+ T *b = m_begin;
+ while (i != b)
+ *--i = copy;
+ }
+ return *this;
+}
+
+template <typename T>
+QRawVector<T> &QRawVector<T>::operator+=(const QRawVector &l)
+{
+ int newSize = m_size + l.m_size;
+ realloc(m_size, newSize, false);
+
+ T *w = m_begin + newSize;
+ T *i = l.m_begin + l.m_size;
+ T *b = l.m_begin;
+ while (i != b) {
+ if (QTypeInfo<T>::isComplex)
+ new (--w) T(*--i);
+ else
+ *--w = *--i;
+ }
+ m_size = newSize;
+ return *this;
+}
+
+template <typename T>
+int QRawVector<T>::indexOf(const T &t, int from) const
+{
+ if (from < 0)
+ from = qMax(from + m_size, 0);
+ if (from < m_size) {
+ T* n = m_begin + from - 1;
+ T* e = m_begin + m_size;
+ while (++n != e)
+ if (*n == t)
+ return n - m_begin;
+ }
+ return -1;
+}
+
+template <typename T>
+int QRawVector<T>::lastIndexOf(const T &t, int from) const
+{
+ if (from < 0)
+ from += m_size;
+ else if (from >= m_size)
+ from = m_size-1;
+ if (from >= 0) {
+ T* b = m_begin;
+ T* n = m_begin + from + 1;
+ while (n != b) {
+ if (*--n == t)
+ return n - b;
+ }
+ }
+ return -1;
+}
+
+template <typename T>
+bool QRawVector<T>::contains(const T &t) const
+{
+ T* b = m_begin;
+ T* i = m_begin + m_size;
+ while (i != b)
+ if (*--i == t)
+ return true;
+ return false;
+}
+
+template <typename T>
+int QRawVector<T>::count(const T &t) const
+{
+ int c = 0;
+ T* b = m_begin;
+ T* i = m_begin + m_size;
+ while (i != b)
+ if (*--i == t)
+ ++c;
+ return c;
+}
+
+template <typename T>
+Q_OUTOFLINE_TEMPLATE QRawVector<T> QRawVector<T>::mid(int pos, int length) const
+{
+ if (length < 0)
+ length = size() - pos;
+ if (pos == 0 && length == size())
+ return *this;
+ QRawVector<T> copy;
+ if (pos + length > size())
+ length = size() - pos;
+ for (int i = pos; i < pos + length; ++i)
+ copy += at(i);
+ return copy;
+}
+
+template <typename T>
+Q_OUTOFLINE_TEMPLATE QList<T> QRawVector<T>::toList() const
+{
+ QList<T> result;
+ for (int i = 0; i < size(); ++i)
+ result.append(at(i));
+ return result;
+}
+
+
+/*template <typename T>
+Q_OUTOFLINE_TEMPLATE QRawVector<T> QList<T>::toVector() const
+{
+ QRawVector<T> result(size());
+ for (int i = 0; i < size(); ++i)
+ result[i] = at(i);
+ return result;
+}
+
+template <typename T>
+QRawVector<T> QRawVector<T>::fromList(const QList<T> &list)
+{
+ return list.toVector();
+}
+
+template <typename T>
+QList<T> QList<T>::fromVector(const QRawVector<T> &vector)
+{
+ return vector.toList();
+}
+*/
+
+Q_DECLARE_SEQUENTIAL_ITERATOR(RawVector)
+Q_DECLARE_MUTABLE_SEQUENTIAL_ITERATOR(RawVector)
+
+QT_END_NAMESPACE
+
+QT_END_HEADER
+
+#endif // QRAWVECTOR_H
diff --git a/tests/benchmarks/corelib/tools/qvector/qvector.pro b/tests/benchmarks/corelib/tools/qvector/qvector.pro
new file mode 100644
index 0000000000..ccab83a05b
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/qvector/qvector.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TARGET = tst_vector
+QT = core
+INCLUDEPATH += .
+SOURCES += main.cpp outofline.cpp
+CONFIG += release
diff --git a/tests/benchmarks/corelib/tools/tools.pro b/tests/benchmarks/corelib/tools/tools.pro
new file mode 100644
index 0000000000..681a6c6e74
--- /dev/null
+++ b/tests/benchmarks/corelib/tools/tools.pro
@@ -0,0 +1,11 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ containers-associative \
+ containers-sequential \
+ qbytearray \
+ qrect \
+ qregexp \
+ qstring \
+ qstringbuilder \
+ qstringlist \
+ qvector
diff --git a/tests/benchmarks/dbus/dbus.pro b/tests/benchmarks/dbus/dbus.pro
new file mode 100644
index 0000000000..989a0db2d4
--- /dev/null
+++ b/tests/benchmarks/dbus/dbus.pro
@@ -0,0 +1,4 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qdbusperformance \
+ qdbustype
diff --git a/tests/benchmarks/dbus/qdbusperformance/.gitignore b/tests/benchmarks/dbus/qdbusperformance/.gitignore
new file mode 100644
index 0000000000..4cd83993de
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/.gitignore
@@ -0,0 +1,2 @@
+tst_qdbusperformance
+server/server
diff --git a/tests/benchmarks/dbus/qdbusperformance/qdbusperformance.pro b/tests/benchmarks/dbus/qdbusperformance/qdbusperformance.pro
new file mode 100644
index 0000000000..90f88a70ec
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/qdbusperformance.pro
@@ -0,0 +1,4 @@
+load(qttest_p4)
+TEMPLATE = subdirs
+CONFIG += ordered
+SUBDIRS = server test
diff --git a/tests/benchmarks/dbus/qdbusperformance/server/server.cpp b/tests/benchmarks/dbus/qdbusperformance/server/server.cpp
new file mode 100644
index 0000000000..3bd5efc108
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/server/server.cpp
@@ -0,0 +1,64 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtCore/QtCore>
+#include <QtDBus/QtDBus>
+
+#include "../serverobject.h"
+
+static const char serviceName[] = "com.trolltech.autotests.performance";
+static const char objectPath[] = "/";
+
+int main(int argc, char *argv[])
+{
+ QCoreApplication app(argc, argv);
+
+ QDBusConnection con = QDBusConnection::sessionBus();
+ if (!con.isConnected())
+ exit(1);
+
+ if (!con.registerService(serviceName))
+ exit(2);
+
+ ServerObject obj(objectPath, con);
+ printf("ready.\n");
+ return app.exec();
+}
+
diff --git a/tests/benchmarks/dbus/qdbusperformance/server/server.pro b/tests/benchmarks/dbus/qdbusperformance/server/server.pro
new file mode 100644
index 0000000000..30f81dd19f
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/server/server.pro
@@ -0,0 +1,5 @@
+SOURCES = server.cpp
+HEADERS = ../serverobject.h
+TARGET = server
+CONFIG += qdbus
+QT -= gui
diff --git a/tests/benchmarks/dbus/qdbusperformance/serverobject.h b/tests/benchmarks/dbus/qdbusperformance/serverobject.h
new file mode 100644
index 0000000000..6f85bb4e50
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/serverobject.h
@@ -0,0 +1,115 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+
+#ifndef SERVEROBJECT_H
+#define SERVEROBJECT_H
+
+#include <QObject>
+#include <QtDBus/QtDBus>
+
+class ServerObject: public QObject
+{
+ Q_OBJECT
+ Q_CLASSINFO("D-Bus Interface", "com.trolltech.autotests.Performance")
+public:
+ ServerObject(const QString &objectPath, QDBusConnection conn, QObject *parent = 0)
+ : QObject(parent)
+ {
+ conn.registerObject(objectPath, this, QDBusConnection::ExportAllSlots);
+ }
+
+public slots:
+ Q_NOREPLY void noReply(const QByteArray &)
+ {
+ // black hole
+ }
+ Q_NOREPLY void noReply(const QString &)
+ {
+ // black hole
+ }
+ Q_NOREPLY void noReply(const QDBusVariant &)
+ {
+ // black hole
+ }
+
+ int size(const QByteArray &data)
+ {
+ return data.size();
+ }
+ int size(const QString &data)
+ {
+ return data.size();
+ }
+ int size(const QDBusVariant &data)
+ {
+ QVariant v = data.variant();
+ switch (v.type())
+ {
+ case QVariant::ByteArray:
+ return v.toByteArray().size();
+ case QVariant::StringList:
+ return v.toStringList().size();
+ case QVariant::String:
+ default:
+ return v.toString().size();
+ }
+ }
+
+ QByteArray echo(const QByteArray &data)
+ {
+ return data;
+ }
+ QString echo(const QString &data)
+ {
+ return data;
+ }
+ QDBusVariant echo(const QDBusVariant &data)
+ {
+ return data;
+ }
+
+ void nothing()
+ {
+ }
+};
+
+#endif
diff --git a/tests/benchmarks/dbus/qdbusperformance/test/test.pro b/tests/benchmarks/dbus/qdbusperformance/test/test.pro
new file mode 100644
index 0000000000..9f5712e9e2
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/test/test.pro
@@ -0,0 +1,7 @@
+load(qttest_p4)
+SOURCES += ../tst_qdbusperformance.cpp
+HEADERS += ../serverobject.h
+TARGET = ../tst_qdbusperformance
+
+QT = core
+CONFIG += qdbus
diff --git a/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp b/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp
new file mode 100644
index 0000000000..a5b4b98ad1
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbusperformance/tst_qdbusperformance.cpp
@@ -0,0 +1,230 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtCore/QtCore>
+#include <QtTest/QtTest>
+#include <QtDBus/QtDBus>
+
+#include "./serverobject.h"
+
+static const char serviceName[] = "com.trolltech.autotests.performance";
+static const int runTime = 500;
+
+class tst_QDBusPerformance: public QObject
+{
+ Q_OBJECT
+ QProcess proc;
+ QDBusInterface *target;
+
+ QDBusInterface *remote;
+ QDBusInterface *local;
+
+ bool executeTest(const char *funcname, int size, const QVariant &data);
+
+public slots:
+ void initTestCase_data();
+ void initTestCase();
+ void init();
+
+private slots:
+ void callSpeed();
+
+ void oneWay_data();
+ void oneWay();
+ void oneWayVariant_data();
+ void oneWayVariant();
+
+ void roundTrip_data();
+ void roundTrip();
+ void roundTripVariant_data();
+ void roundTripVariant();
+};
+Q_DECLARE_METATYPE(QVariant)
+
+void tst_QDBusPerformance::initTestCase()
+{
+ QDBusConnection con = QDBusConnection::sessionBus();
+ QVERIFY(con.isConnected());
+
+ QDBusServiceWatcher watcher(serviceName, con,
+ QDBusServiceWatcher::WatchForRegistration);
+ connect(&watcher, SIGNAL(serviceRegistered(QString)),
+ &QTestEventLoop::instance(), SLOT(exitLoop()));
+
+#ifdef Q_OS_WIN
+ proc.start("server");
+#else
+ proc.start("./server/server");
+#endif
+ QVERIFY(proc.waitForStarted());
+
+ QTestEventLoop::instance().enterLoop(5);
+ QVERIFY(con.interface()->isServiceRegistered(serviceName));
+
+ remote = new QDBusInterface(serviceName, "/", "com.trolltech.autotests.Performance", con, this);
+ QVERIFY(remote->isValid());
+
+ new ServerObject("/", con, this);
+ local = new QDBusInterface(con.baseService(), "/", "com.trolltech.autotests.Performance", con, this);
+ QVERIFY(local->isValid());
+}
+
+void tst_QDBusPerformance::initTestCase_data()
+{
+ QTest::addColumn<bool>("loopback");
+
+ QTest::newRow("normal") << false;
+ QTest::newRow("loopback") << true;
+}
+
+void tst_QDBusPerformance::init()
+{
+ QFETCH_GLOBAL(bool, loopback);
+ if (loopback)
+ target = local;
+ else
+ target = remote;
+}
+
+void tst_QDBusPerformance::callSpeed()
+{
+ QElapsedTimer timer;
+
+ int callCount = 0;
+ timer.start();
+ while (timer.elapsed() < runTime) {
+ QDBusReply<void> reply = target->call("nothing");
+ QVERIFY(reply.isValid());
+
+ ++callCount;
+ }
+ qDebug() << callCount << "calls in" << timer.elapsed() << "ms:"
+ << (callCount * 1000.0 / timer.elapsed()) << "calls/sec";
+}
+
+bool tst_QDBusPerformance::executeTest(const char *funcname, int size, const QVariant &data)
+{
+ QElapsedTimer timer;
+
+ int callCount = 0;
+ qint64 transferred = 0;
+ timer.start();
+ while (timer.elapsed() < runTime) {
+ QDBusMessage reply = target->call(funcname, data);
+ if (reply.type() != QDBusMessage::ReplyMessage)
+ return false;
+
+ transferred += size;
+ ++callCount;
+ }
+ qDebug() << transferred << "bytes in" << timer.elapsed() << "ms"
+ << "(in" << callCount << "calls):"
+ << (transferred * 1000.0 / timer.elapsed() / 1024 / 1024) << "MB/s";
+
+ return true;
+}
+
+void tst_QDBusPerformance::oneWay_data()
+{
+ QTest::addColumn<QVariant>("data");
+ QTest::addColumn<int>("size");
+
+ QByteArray ba(256, 'a');
+ while (ba.size() < 8193) {
+ QTest::newRow(QString("%1-byteArray").arg(ba.size()).toAscii()) << qVariantFromValue(ba) << ba.size();
+ ba += ba;
+ }
+
+ QString s(256, QLatin1Char('a'));
+ while (s.size() < 8193) {
+ QTest::newRow(QString("%1-string").arg(s.size()).toAscii()) << qVariantFromValue(s) << s.size();
+ s += s;
+ }
+}
+
+void tst_QDBusPerformance::oneWay()
+{
+ QFETCH(QVariant, data);
+ QFETCH(int, size);
+
+ QVERIFY(executeTest("size", size, data));
+}
+
+void tst_QDBusPerformance::oneWayVariant_data()
+{
+ oneWay_data();
+}
+
+void tst_QDBusPerformance::oneWayVariant()
+{
+ QFETCH(QVariant, data);
+ QFETCH(int, size);
+
+ QVERIFY(executeTest("size", size, qVariantFromValue(QDBusVariant(data))));
+}
+
+void tst_QDBusPerformance::roundTrip_data()
+{
+ oneWay_data();
+}
+
+void tst_QDBusPerformance::roundTrip()
+{
+ QFETCH(QVariant, data);
+ QFETCH(int, size);
+
+ QVERIFY(executeTest("echo", size, data));
+}
+
+void tst_QDBusPerformance::roundTripVariant_data()
+{
+ oneWay_data();
+}
+
+void tst_QDBusPerformance::roundTripVariant()
+{
+ QFETCH(QVariant, data);
+ QFETCH(int, size);
+
+ QVERIFY(executeTest("echo", size, qVariantFromValue(QDBusVariant(data))));
+}
+
+QTEST_MAIN(tst_QDBusPerformance)
+#include "tst_qdbusperformance.moc"
diff --git a/tests/benchmarks/dbus/qdbustype/main.cpp b/tests/benchmarks/dbus/qdbustype/main.cpp
new file mode 100644
index 0000000000..abaae7eedc
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbustype/main.cpp
@@ -0,0 +1,115 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QtTest>
+#include <QtCore/QCoreApplication>
+
+#include <QtDBus/private/qdbusutil_p.h>
+
+#include <dbus/dbus.h>
+
+class tst_QDBusType: public QObject
+{
+ Q_OBJECT
+private Q_SLOTS:
+ void benchmarkSignature_data();
+ void benchmarkSignature();
+};
+
+static inline void benchmarkAddRow(const char *name, const char *data)
+{
+ QTest::newRow(QByteArray("native-") + name) << data << true;
+ QTest::newRow(name) << data << false;
+}
+
+void tst_QDBusType::benchmarkSignature_data()
+{
+ QTest::addColumn<QString>("data");
+ QTest::addColumn<bool>("useNative");
+
+ for (int loopCount = 0; loopCount < 2; ++loopCount) {
+ bool useNative = loopCount;
+ QByteArray prefix = useNative ? "native-" : "";
+
+ benchmarkAddRow("single-invalid", "~");
+ benchmarkAddRow("single-invalid-array", "a~");
+ benchmarkAddRow("single-invalid-struct", "(.)");
+
+ benchmarkAddRow("single-char", "b");
+ benchmarkAddRow("single-array", "as");
+ benchmarkAddRow("single-simplestruct", "(y)");
+ benchmarkAddRow("single-simpledict", "a{sv}");
+ benchmarkAddRow("single-complexdict", "a{s(aya{io})}");
+
+ benchmarkAddRow("multiple-char", "ssg");
+ benchmarkAddRow("multiple-arrays", "asasay");
+
+ benchmarkAddRow("struct-missingclose", "(ayyyy");
+ benchmarkAddRow("longstruct", "(yyyyyyayasy)");
+ benchmarkAddRow("invalid-longstruct", "(yyyyyyayas.y)");
+ benchmarkAddRow("complexstruct", "(y(aasay)oga{sv})");
+ benchmarkAddRow("multiple-simple-structs", "(y)(y)(y)");
+ }
+}
+
+void tst_QDBusType::benchmarkSignature()
+{
+ QFETCH(QString, data);
+ QFETCH(bool, useNative);
+
+ bool result;
+ if (useNative) {
+ dbus_signature_validate(data.toLatin1(), 0);
+ QBENCHMARK {
+ result = dbus_signature_validate(data.toLatin1(), 0);
+ }
+ } else {
+ QDBusUtil::isValidSignature(data);
+ QBENCHMARK {
+ result = QDBusUtil::isValidSignature(data);
+ }
+ }
+ Q_UNUSED(result);
+}
+
+QTEST_MAIN(tst_QDBusType)
+
+#include "main.moc"
diff --git a/tests/benchmarks/dbus/qdbustype/qdbustype.pro b/tests/benchmarks/dbus/qdbustype/qdbustype.pro
new file mode 100644
index 0000000000..d480a05f38
--- /dev/null
+++ b/tests/benchmarks/dbus/qdbustype/qdbustype.pro
@@ -0,0 +1,8 @@
+load(qttest_p4)
+TARGET = tst_bench_qdbustype
+QT -= gui
+QT += dbus
+QMAKE_CXXFLAGS += $$QT_CFLAGS_DBUS
+LIBS_PRIVATE += $$QT_LIBS_DBUS
+
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/animation/animation.pro b/tests/benchmarks/gui/animation/animation.pro
new file mode 100644
index 0000000000..a4ba273fec
--- /dev/null
+++ b/tests/benchmarks/gui/animation/animation.pro
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = qanimation
diff --git a/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp b/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp
new file mode 100644
index 0000000000..138ec45df9
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/dummyanimation.cpp
@@ -0,0 +1,61 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "dummyanimation.h"
+#include "dummyobject.h"
+
+
+DummyAnimation::DummyAnimation(DummyObject *d) : m_dummy(d)
+{
+}
+
+void DummyAnimation::updateCurrentValue(const QVariant &value)
+{
+ if (state() == Stopped)
+ return;
+ if (m_dummy)
+ m_dummy->setRect(value.toRect());
+}
+
+void DummyAnimation::updateState(State state)
+{
+ Q_UNUSED(state);
+}
diff --git a/tests/benchmarks/gui/animation/qanimation/dummyanimation.h b/tests/benchmarks/gui/animation/qanimation/dummyanimation.h
new file mode 100644
index 0000000000..73f491bcb7
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/dummyanimation.h
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+
+#ifndef _DUMMYANIMATION_H__
+
+class DummyObject;
+
+class DummyAnimation : public QVariantAnimation
+{
+public:
+ DummyAnimation(DummyObject *d);
+
+ void updateCurrentValue(const QVariant &value);
+ void updateState(State state);
+
+private:
+ DummyObject *m_dummy;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp b/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp
new file mode 100644
index 0000000000..9178ceff6c
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/dummyobject.cpp
@@ -0,0 +1,66 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "dummyobject.h"
+
+DummyObject::DummyObject()
+{
+}
+
+QRect DummyObject::rect() const
+{
+ return m_rect;
+}
+
+void DummyObject::setRect(const QRect &r)
+{
+ m_rect = r;
+}
+
+float DummyObject::opacity() const
+{
+ return m_opacity;
+}
+
+void DummyObject::setOpacity(float o)
+{
+ m_opacity = o;
+}
diff --git a/tests/benchmarks/gui/animation/qanimation/dummyobject.h b/tests/benchmarks/gui/animation/qanimation/dummyobject.h
new file mode 100644
index 0000000000..81f6b8ef82
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/dummyobject.h
@@ -0,0 +1,64 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+
+#ifndef _DUMMYOBJECT_H__
+
+class DummyObject : public QObject
+{
+ Q_OBJECT
+ Q_PROPERTY(QRect rect READ rect WRITE setRect)
+ Q_PROPERTY(float opacity READ opacity WRITE setOpacity)
+public:
+ DummyObject();
+ QRect rect() const;
+ void setRect(const QRect &r);
+ float opacity() const;
+ void setOpacity(float);
+
+private:
+ QRect m_rect;
+ float m_opacity;
+};
+
+
+#endif
diff --git a/tests/benchmarks/gui/animation/qanimation/main.cpp b/tests/benchmarks/gui/animation/qanimation/main.cpp
new file mode 100644
index 0000000000..b203949ed5
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/main.cpp
@@ -0,0 +1,191 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+#include <qtest.h>
+
+#include "dummyobject.h"
+#include "dummyanimation.h"
+#include "rectanimation.h"
+
+#define ITERATION_COUNT 10e3
+
+class tst_qanimation : public QObject
+{
+ Q_OBJECT
+private slots:
+ void itemPropertyAnimation();
+ void itemPropertyAnimation_data() { data();}
+ void dummyAnimation();
+ void dummyAnimation_data() { data();}
+ void dummyPropertyAnimation();
+ void dummyPropertyAnimation_data() { data();}
+ void rectAnimation();
+ void rectAnimation_data() { data();}
+
+ void floatAnimation_data() { data(); }
+ void floatAnimation();
+
+private:
+ void data();
+};
+
+
+void tst_qanimation::data()
+{
+ QTest::addColumn<bool>("started");
+ QTest::newRow("NotRunning") << false;
+ QTest::newRow("Running") << true;
+}
+
+void tst_qanimation::itemPropertyAnimation()
+{
+ QFETCH(bool, started);
+ QGraphicsWidget item;
+
+ //then the property animation
+ {
+ QPropertyAnimation anim(&item, "pos");
+ anim.setDuration(ITERATION_COUNT);
+ anim.setStartValue(QPointF(0,0));
+ anim.setEndValue(QPointF(ITERATION_COUNT,ITERATION_COUNT));
+ if (started)
+ anim.start();
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ anim.setCurrentTime(i);
+ }
+ }
+ }
+
+}
+
+void tst_qanimation::dummyAnimation()
+{
+ QFETCH(bool, started);
+ DummyObject dummy;
+
+ //first the dummy animation
+ {
+ DummyAnimation anim(&dummy);
+ anim.setDuration(ITERATION_COUNT);
+ anim.setStartValue(QRect(0, 0, 0, 0));
+ anim.setEndValue(QRect(0, 0, ITERATION_COUNT,ITERATION_COUNT));
+ if (started)
+ anim.start();
+ QBENCHMARK {
+ for(int i = 0; i < anim.duration(); ++i) {
+ anim.setCurrentTime(i);
+ }
+ }
+ }
+}
+
+void tst_qanimation::dummyPropertyAnimation()
+{
+ QFETCH(bool, started);
+ DummyObject dummy;
+
+ //then the property animation
+ {
+ QPropertyAnimation anim(&dummy, "rect");
+ anim.setDuration(ITERATION_COUNT);
+ anim.setStartValue(QRect(0, 0, 0, 0));
+ anim.setEndValue(QRect(0, 0, ITERATION_COUNT,ITERATION_COUNT));
+ if (started)
+ anim.start();
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ anim.setCurrentTime(i);
+ }
+ }
+ }
+}
+
+void tst_qanimation::rectAnimation()
+{
+ //this is the simplest animation you can do
+ QFETCH(bool, started);
+ DummyObject dummy;
+
+ //then the property animation
+ {
+ RectAnimation anim(&dummy);
+ anim.setDuration(ITERATION_COUNT);
+ anim.setStartValue(QRect(0, 0, 0, 0));
+ anim.setEndValue(QRect(0, 0, ITERATION_COUNT,ITERATION_COUNT));
+ if (started)
+ anim.start();
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ anim.setCurrentTime(i);
+ }
+ }
+ }
+}
+
+void tst_qanimation::floatAnimation()
+{
+ //this is the simplest animation you can do
+ QFETCH(bool, started);
+ DummyObject dummy;
+
+ //then the property animation
+ {
+ QPropertyAnimation anim(&dummy, "opacity");
+ anim.setDuration(ITERATION_COUNT);
+ anim.setStartValue(0.f);
+ anim.setEndValue(1.f);
+ if (started)
+ anim.start();
+ QBENCHMARK {
+ for(int i = 0; i < ITERATION_COUNT; ++i) {
+ anim.setCurrentTime(i);
+ }
+ }
+ }
+}
+
+
+
+QTEST_MAIN(tst_qanimation)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/animation/qanimation/qanimation.pro b/tests/benchmarks/gui/animation/qanimation/qanimation.pro
new file mode 100644
index 0000000000..53a139a660
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/qanimation.pro
@@ -0,0 +1,18 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qanimation
+DEPENDPATH += .
+INCLUDEPATH += .
+
+CONFIG += release
+#CONFIG += debug
+
+
+SOURCES += main.cpp \
+ dummyobject.cpp \
+ dummyanimation.cpp \
+ rectanimation.cpp
+
+HEADERS += dummyobject.h \
+ dummyanimation.h \
+ rectanimation.h
diff --git a/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp b/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp
new file mode 100644
index 0000000000..b8082cda33
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/rectanimation.cpp
@@ -0,0 +1,94 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "rectanimation.h"
+#include "dummyobject.h"
+
+static inline int interpolateInteger(int from, int to, qreal progress)
+{
+ return from + (to - from) * progress;
+}
+
+
+RectAnimation::RectAnimation(DummyObject *obj) : m_object(obj), m_dura(250)
+{
+}
+
+void RectAnimation::setEndValue(const QRect &rect)
+{
+ m_end = rect;
+}
+
+void RectAnimation::setStartValue(const QRect &rect)
+{
+ m_start = rect;
+}
+
+void RectAnimation::setDuration(int d)
+{
+ m_dura = d;
+}
+
+int RectAnimation::duration() const
+{
+ return m_dura;
+}
+
+
+void RectAnimation::updateCurrentTime(int currentTime)
+{
+ qreal progress = m_easing.valueForProgress( currentTime / qreal(m_dura) );
+ QRect now;
+ now.setCoords(interpolateInteger(m_start.left(), m_end.left(), progress),
+ interpolateInteger(m_start.top(), m_end.top(), progress),
+ interpolateInteger(m_start.right(), m_end.right(), progress),
+ interpolateInteger(m_start.bottom(), m_end.bottom(), progress));
+
+ bool changed = (now != m_current);
+ if (changed)
+ m_current = now;
+
+ if (state() == Stopped)
+ return;
+
+ if (m_object)
+ m_object->setRect(m_current);
+}
diff --git a/tests/benchmarks/gui/animation/qanimation/rectanimation.h b/tests/benchmarks/gui/animation/qanimation/rectanimation.h
new file mode 100644
index 0000000000..9efb91b274
--- /dev/null
+++ b/tests/benchmarks/gui/animation/qanimation/rectanimation.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+
+#ifndef _RECTANIMATION_H__
+
+class DummyObject;
+
+//this class is even simpler than the dummy
+//and uses no QVariant at all
+class RectAnimation : public QAbstractAnimation
+{
+public:
+ RectAnimation(DummyObject *obj);
+
+ void setEndValue(const QRect &rect);
+ void setStartValue(const QRect &rect);
+
+ void setDuration(int d);
+ int duration() const;
+
+ virtual void updateCurrentTime(int currentTime);
+
+private:
+ DummyObject *m_object;
+ QEasingCurve m_easing;
+ QRect m_start, m_end, m_current;
+ int m_dura;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.pro b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.pro
new file mode 100644
index 0000000000..131ec128be
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.pro
@@ -0,0 +1,71 @@
+load(qttest_p4)
+TEMPLATE = app
+
+QT += svg
+contains(QT_CONFIG, opengl):QT += opengl
+
+HEADERS += widgets/gvbwidget.h \
+ widgets/abstractscrollarea.h \
+ widgets/mainview.h \
+ widgets/iconitem.h \
+ widgets/label.h \
+ widgets/listitem.h \
+ widgets/scrollbar.h \
+ widgets/simplelistview.h \
+ widgets/scroller.h \
+ widgets/scroller_p.h \
+ widgets/button.h \
+ widgets/menu.h \
+ widgets/themeevent.h \
+ widgets/theme.h \
+ widgets/backgrounditem.h \
+ widgets/topbar.h \
+ widgets/commandline.h \
+ widgets/dummydatagen.h \
+ widgets/settings.h \
+ widgets/listitemcache.h \
+ widgets/listwidget.h \
+ widgets/simplelist.h \
+ widgets/itemrecyclinglist.h \
+ widgets/itemrecyclinglistview.h \
+ widgets/abstractitemview.h \
+ widgets/abstractviewitem.h \
+ widgets/recycledlistitem.h \
+ widgets/listitemcontainer.h \
+ widgets/abstractitemcontainer.h \
+ widgets/listmodel.h
+
+SOURCES += main.cpp \
+ widgets/gvbwidget.cpp \
+ widgets/abstractscrollarea.cpp \
+ widgets/mainview.cpp \
+ widgets/iconitem.cpp \
+ widgets/label.cpp \
+ widgets/listitem.cpp \
+ widgets/scrollbar.cpp \
+ widgets/simplelistview.cpp \
+ widgets/scroller.cpp \
+ widgets/button.cpp \
+ widgets/menu.cpp \
+ widgets/themeevent.cpp \
+ widgets/theme.cpp \
+ widgets/backgrounditem.cpp \
+ widgets/topbar.cpp \
+ widgets/commandline.cpp \
+ widgets/dummydatagen.cpp \
+ widgets/settings.cpp \
+ widgets/listitemcache.cpp \
+ widgets/listwidget.cpp \
+ widgets/simplelist.cpp \
+ widgets/itemrecyclinglist.cpp \
+ widgets/itemrecyclinglistview.cpp \
+ widgets/abstractitemview.cpp \
+ widgets/abstractviewitem.cpp \
+ widgets/recycledlistitem.cpp \
+ widgets/listitemcontainer.cpp \
+ widgets/abstractitemcontainer.cpp \
+ widgets/listmodel.cpp
+
+TARGET = tst_GraphicsViewBenchmark
+RESOURCES += GraphicsViewBenchmark.qrc
+INCLUDEPATH += widgets
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.qrc b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.qrc
new file mode 100644
index 0000000000..18ae04dd69
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/GraphicsViewBenchmark.qrc
@@ -0,0 +1,85 @@
+<RCC>
+ <qresource prefix="/themes/blue">
+ <file alias="background.svg">resources/blue_SVG/blue_background_360x640px.svg</file>
+ <file alias="background_horisontal.svg">resources/blue_SVG/blue_background_horisontal_640x360px.svg</file>
+ <file alias="contact_default_icon.svg">resources/blue_SVG/blue_contact_default_icon_52x52px.svg</file>
+ <file alias="contact_list_divider.svg">resources/blue_SVG/blue_contact_list_divider_360x76px.svg</file>
+ <file alias="contact_list_highlighter.svg">resources/blue_SVG/blue_contact_list_highlighter_360x76px.svg</file>
+ <file alias="contact_status_idle.svg">resources/blue_SVG/blue_contact_status_idle_33x33px.svg</file>
+ <file alias="contact_status_offline.svg">resources/blue_SVG/blue_contact_status_offline_33x33px.svg</file>
+ <file alias="contact_status_online.svg">resources/blue_SVG/blue_contact_status_online_33x33px.svg</file>
+ <file alias="scrollbar.svg">resources/blue_SVG/blue_scrollbar_7x14px.svg</file>
+ <file alias="scroll.svg">resources/blue_SVG/blue_scroll_16x80px.svg</file>
+ <file alias="status_field_left.svg">resources/blue_SVG/blue_status_field_left_14x24px.svg</file>
+ <file alias="status_field_middle.svg">resources/blue_SVG/blue_status_field_middle_14x24px.svg</file>
+ <file alias="status_field_right.svg">resources/blue_SVG/blue_status_field_right_14x24px.svg</file>
+ <file alias="topbar.svg">resources/blue_SVG/blue_topbar_356x96px.svg</file>
+ <file alias="topbar_horisontal.svg">resources/blue_SVG/blue_topbar_horisontal_636x96px.svg</file>
+ <file alias="user_default_icon.svg">resources/blue_SVG/blue_user_default_icon_68x68px.svg</file>
+ <file alias="user_status_idle.svg">resources/blue_SVG/blue_user_status_idle_38x38px.svg</file>
+ <file alias="user_status_offline.svg">resources/blue_SVG/blue_user_status_offline_38x38px.svg</file>
+ <file alias="user_status_online.svg">resources/blue_SVG/blue_user_status_online_38x38px.svg</file>
+ </qresource>
+
+ <qresource prefix="/themes/lime">
+ <file alias="background.svg">resources/lime_SVG/lime_background_360x640px.svg</file>
+ <file alias="background_horisontal.svg">resources/lime_SVG/lime_background_horisontal_640x360px.svg</file>
+ <file alias="contact_default_icon.svg">resources/lime_SVG/lime_contact_default_icon_53x53px.svg</file>
+ <file alias="contact_default_icon_highlight.svg">resources/lime_SVG/lime_contact_default_icon_highlight_53x53px.svg</file>
+ <file alias="contact_list_divider.svg">resources/lime_SVG/lime_contact_list_divider_360x76px.svg</file>
+ <file alias="contact_list_highlighter.svg">resources/lime_SVG/lime_contact_list_highlighter_357x80px.svg</file>
+ <file alias="contact_status_idle.svg">resources/blue_SVG/blue_contact_status_idle_33x33px.svg</file>
+ <file alias="contact_status_offline.svg">resources/blue_SVG/blue_contact_status_offline_33x33px.svg</file>
+ <file alias="contact_status_online.svg">resources/blue_SVG/blue_contact_status_online_33x33px.svg</file>
+ <file alias="scrollbar.svg">resources/lime_SVG/lime_scrollbar_5x14px.svg</file>
+ <file alias="scroll.svg">resources/lime_SVG/lime_scroll_5x80px.svg</file>
+ <file alias="status_field_left.svg">resources/lime_SVG/lime_status_field_left_14x24px.svg</file>
+ <file alias="status_field_middle.svg">resources/lime_SVG/lime_status_field_middle_10x24px.svg</file>
+ <file alias="status_field_right.svg">resources/lime_SVG/lime_status_field_right_14x24px.svg</file>
+ <file alias="topbar.svg">resources/lime_SVG/lime_topbar_356x96px.svg</file>
+ <file alias="topbar_horisontal.svg">resources/lime_SVG/lime_topbar_horisontal_636x96px.svg</file>
+ <file alias="user_default_icon.svg">resources/lime_SVG/lime_user_default_icon_84x68px.svg</file>
+ <file alias="user_status_idle.svg">resources/lime_SVG/lime_user_status_idle_24x24px.svg</file>
+ <file alias="user_status_offline.svg">resources/lime_SVG/lime_user_status_offline_24x24px.svg</file>
+ <file alias="user_status_online.svg">resources/lime_SVG/lime_user_status_online_24x24px.svg</file>
+ </qresource>
+
+ <qresource prefix="/avatars">
+ <file alias="avatar_001.png">resources/avatars/avatar_man_001_58x58.png</file>
+ <file alias="avatar_002.png">resources/avatars/avatar_man_002_58x58.png</file>
+ <file alias="avatar_003.png">resources/avatars/avatar_man_003_58x58.png</file>
+ <file alias="avatar_004.png">resources/avatars/avatar_man_004_58x58.png</file>
+ <file alias="avatar_005.png">resources/avatars/avatar_man_005_58x58.png</file>
+ <file alias="avatar_006.png">resources/avatars/avatar_man_006_58x58.png</file>
+ <file alias="avatar_007.png">resources/avatars/avatar_man_007_58x58.png</file>
+ <file alias="avatar_008.png">resources/avatars/avatar_man_008_58x58.png</file>
+ <file alias="avatar_009.png">resources/avatars/avatar_man_009_58x58.png</file>
+ <file alias="avatar_010.png">resources/avatars/avatar_man_010_58x58.png</file>
+
+ <file alias="avatar_011.png">resources/avatars/avatar_picture_001_58x58.png</file>
+ <file alias="avatar_012.png">resources/avatars/avatar_picture_002_58x58.png</file>
+ <file alias="avatar_013.png">resources/avatars/avatar_picture_003_58x58.png</file>
+ <file alias="avatar_014.png">resources/avatars/avatar_picture_004_58x58.png</file>
+ <file alias="avatar_015.png">resources/avatars/avatar_picture_005_58x58.png</file>
+
+ <file alias="avatar_016.png">resources/avatars/avatar_woman_001_58x58.png</file>
+ <file alias="avatar_017.png">resources/avatars/avatar_woman_002_58x58.png</file>
+ <file alias="avatar_018.png">resources/avatars/avatar_woman_003_58x58.png</file>
+ <file alias="avatar_019.png">resources/avatars/avatar_woman_004_58x58.png</file>
+ <file alias="avatar_020.png">resources/avatars/avatar_woman_005_58x58.png</file>
+ <file alias="avatar_021.png">resources/avatars/avatar_woman_006_58x58.png</file>
+ <file alias="avatar_022.png">resources/avatars/avatar_woman_007_58x58.png</file>
+ <file alias="avatar_023.png">resources/avatars/avatar_woman_008_58x58.png</file>
+ <file alias="avatar_024.png">resources/avatars/avatar_woman_009_58x58.png</file>
+ <file alias="avatar_025.png">resources/avatars/avatar_woman_010_58x58.png</file>
+ </qresource>
+
+ <qresource prefix="/contact">
+ <file alias="areacodes.txt">resources/contacts/areacodes.txt</file>
+ <file alias="firstnamesF.txt">resources/contacts/firstnamesF.txt</file>
+ <file alias="firstnamesM.txt">resources/contacts/firstnamesM.txt</file>
+ <file alias="lastnames.txt">resources/contacts/lastnames.txt</file>
+ </qresource>
+
+</RCC>
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp
new file mode 100644
index 0000000000..fa4b2802de
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/main.cpp
@@ -0,0 +1,805 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+
+#include <QtTest/QtTest>
+#include <QtGui/qgraphicsview.h>
+#include <QtGui/qpixmapcache.h>
+#include <QtGui/qdesktopwidget.h>
+
+#include "mainview.h"
+#include "dummydatagen.h"
+#include "simplelist.h"
+#include "itemrecyclinglist.h"
+#include "simplelist.h"
+#include "theme.h"
+#include "commandline.h"
+
+class tst_GraphicsViewBenchmark : public QObject
+{
+ Q_OBJECT
+public:
+ enum ListType {
+ Simple,
+ Recycling,
+ None
+ };
+
+ enum ScrollStep {
+ Slow = 2,
+ Normal = 8,
+ Fast = 64
+ };
+
+ tst_GraphicsViewBenchmark(Settings *settings)
+ : mSettings(settings), mMainView(0), currentListSize(-1), currentListType(None) {}
+ ~tst_GraphicsViewBenchmark() {}
+
+public slots:
+ void initTestCase();
+ void cleanupTestCase();
+ void init();
+
+private slots:
+ // Benchmarks:
+ void createAndFillList_data();
+ void createAndFillList();
+ void add100ItemsToBeginningOfList_data();
+ void add100ItemsToBeginningOfList();
+ void remove100ItemsFromBeginningOfList_data();
+ void remove100ItemsFromBeginningOfList();
+ void deleteList_data();
+ void deleteList();
+ void themeChange_data();
+ void themeChange();
+ void update_data();
+ void update();
+ void scroll_data();
+ void scroll();
+
+private:
+ Settings *mSettings;
+ MainView *mMainView;
+ DummyDataGenerator mDataGenerator;
+ int currentListSize;
+ ListType currentListType;
+
+ void resetView();
+ void ensureListSizeAndType(int listSize, ListType listType);
+ void ensureTheme(Theme::Themes theme);
+ void ensureRotationAngle(int rotation);
+ void ensureSubtreeCache(bool enable);
+ void ensureImageBasedRendering(bool enable);
+ void insertListData();
+ inline void setTestWidget(QGraphicsWidget *widget, int listSize, ListType listType)
+ {
+ currentListSize = listSize;
+ currentListType = listType;
+ mMainView->setTestWidget(widget);
+ }
+};
+
+Q_DECLARE_METATYPE(tst_GraphicsViewBenchmark::ListType)
+Q_DECLARE_METATYPE(Theme::Themes)
+Q_DECLARE_METATYPE(tst_GraphicsViewBenchmark::ScrollStep)
+
+const int AddRemoveCount = 100;
+
+static ListItem *newSimpleListItem(DummyDataGenerator &dataGenerator, const int id)
+{
+ ListItem *item = new ListItem();
+ item->setText(dataGenerator.randomName(), ListItem::FirstPos );
+ item->setText(dataGenerator.randomPhoneNumber(QString("%1").arg(id)), ListItem::SecondPos );
+ item->setIcon(new IconItem(dataGenerator.randomIconItem(), item), ListItem::LeftIcon );
+ item->setIcon(new IconItem(dataGenerator.randomStatusItem(), item), ListItem::RightIcon);
+ item->setFont(Theme::p()->font(Theme::ContactName), ListItem::FirstPos);
+ item->setFont(Theme::p()->font(Theme::ContactNumber), ListItem::SecondPos);
+ item->setBorderPen(Theme::p()->listItemBorderPen());
+ item->setRounding(Theme::p()->listItemRounding());
+ item->icon(ListItem::LeftIcon)->setRotation(Theme::p()->iconRotation(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setRotation(Theme::p()->iconRotation(ListItem::RightIcon));
+ item->icon(ListItem::LeftIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::RightIcon));
+ item->icon(ListItem::LeftIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::RightIcon));
+ return item;
+}
+
+static RecycledListItem *newRecyclingListItem(DummyDataGenerator &dataGenerator, const int id)
+{
+ RecycledListItem *item = new RecycledListItem();
+ item->item()->setText(dataGenerator.randomName(), ListItem::FirstPos );
+ item->item()->setText(dataGenerator.randomPhoneNumber(QString("%1").arg(id)), ListItem::SecondPos );
+ item->item()->setIcon(new IconItem(dataGenerator.randomIconItem()), ListItem::LeftIcon );
+ item->item()->setIcon(new IconItem(dataGenerator.randomStatusItem()), ListItem::RightIcon);
+ item->item()->setFont(Theme::p()->font(Theme::ContactName), ListItem::FirstPos);
+ item->item()->setFont(Theme::p()->font(Theme::ContactNumber), ListItem::SecondPos);
+ item->item()->setBorderPen(Theme::p()->listItemBorderPen());
+ item->item()->setRounding(Theme::p()->listItemRounding());
+ item->item()->icon(ListItem::LeftIcon)->setRotation(Theme::p()->iconRotation(ListItem::LeftIcon));
+ item->item()->icon(ListItem::RightIcon)->setRotation(Theme::p()->iconRotation(ListItem::RightIcon));
+ item->item()->icon(ListItem::LeftIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::LeftIcon));
+ item->item()->icon(ListItem::RightIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::RightIcon));
+ item->item()->icon(ListItem::LeftIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::LeftIcon));
+ item->item()->icon(ListItem::RightIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::RightIcon));
+ return item;
+}
+
+static void fillList(DummyDataGenerator &dataGenerator, int itemCount, QGraphicsWidget *list)
+{
+ if (SimpleList *simpleList = qobject_cast<SimpleList *>(list)) {
+ for (int i = 0; i < itemCount; ++i)
+ simpleList->addItem(newSimpleListItem(dataGenerator, i));
+ } else if (ItemRecyclingList *recyclingList = qobject_cast<ItemRecyclingList *>(list)) {
+ for (int i = 0; i < itemCount; ++i)
+ recyclingList->addItem(newRecyclingListItem(dataGenerator, i));
+ } else {
+ qFatal("fillList: internal error");
+ }
+}
+
+void tst_GraphicsViewBenchmark::resetView()
+{
+ if (QGraphicsWidget *widget = mMainView->takeTestWidget()) {
+ delete widget;
+ currentListSize = -1;
+ currentListType = None;
+ QTest::qWait(50);
+ } else {
+ if (currentListSize != -1)
+ qFatal("tst_GraphicsViewBenchmark::resetView: internal error: wrong list size");
+ if (currentListType != None)
+ qFatal("tst_GraphicsViewBenchmark::resetView: internal error: wrong list type");
+ }
+ ensureTheme(Theme::Blue);
+ ensureRotationAngle(0);
+ ensureSubtreeCache(false);
+ ensureImageBasedRendering(false);
+}
+
+void tst_GraphicsViewBenchmark::ensureListSizeAndType(int listSize, ListType listType)
+{
+ if (currentListSize != listSize || currentListType != listType) {
+ resetView();
+ if (listType == Simple) {
+ SimpleList *list = new SimpleList;
+ fillList(mDataGenerator, listSize, list);
+ setTestWidget(list, listSize, listType);
+ } else if (listType == Recycling) {
+ ItemRecyclingList *list = new ItemRecyclingList;
+ fillList(mDataGenerator, listSize, list);
+ setTestWidget(list, listSize, listType);
+ }
+ QTest::qWait(50);
+ return;
+ }
+
+ // Okay, we're supposed to have the right list type and size. Make sure we actually have it.
+ QGraphicsWidget *widget = mMainView->testWidget();
+ if (!widget) {
+ if (currentListType != None || currentListSize != -1)
+ qFatal("tst_GraphicsViewBenchmark::ensureListSizeAndType: internal error: no test widget");
+ return;
+ }
+
+ if (listType == Simple) {
+ SimpleList *list = qobject_cast<SimpleList *>(widget);
+ if (!list)
+ qFatal("tst_GraphicsViewBenchmark::ensureListSizeAndType: internal error: wrong list type");
+ if (list->itemCount() != listSize)
+ qFatal("tst_GraphicsViewBenchmark::ensureListSizeAndType: internal error: wrong list size");
+ } else if (listType == Recycling){
+ ItemRecyclingList *list = qobject_cast<ItemRecyclingList *>(widget);
+ if (!list)
+ qFatal("tst_GraphicsViewBenchmark::ensureListSizeAndType: internal error: wrong list type");
+ if (list->rows() != listSize)
+ qFatal("tst_GraphicsViewBenchmark::ensureListSizeAndType: internal error: wrong list size");
+ }
+}
+
+void tst_GraphicsViewBenchmark::ensureTheme(Theme::Themes theme)
+{
+ if (Theme::p()->theme() != theme) {
+ Theme::p()->setTheme(theme);
+ // The theme change itself can take a lot of time, so make
+ // sure we give it a little bit time to stabilize *after*
+ // the changes, hence sendPostedEvents(); qWait();
+ QApplication::sendPostedEvents();
+ QTest::qWait(50);
+ }
+}
+
+void tst_GraphicsViewBenchmark::ensureRotationAngle(int angle)
+{
+ const bool useTwoColumns = angle != 0;
+ bool wait = false;
+ if (mMainView->rotationAngle() != angle) {
+ mMainView->rotateContent(-mMainView->rotationAngle() + angle);
+ wait = true;
+ }
+ if (QGraphicsWidget *widget = mMainView->testWidget()) {
+ if (SimpleList *list = qobject_cast<SimpleList *>(widget)) {
+ if (list->twoColumns() != useTwoColumns) {
+ list->setTwoColumns(useTwoColumns);
+ wait = true;
+ }
+ } else if (ItemRecyclingList *list = qobject_cast<ItemRecyclingList *>(widget)) {
+ if (list->twoColumns() != useTwoColumns) {
+ list->setTwoColumns(useTwoColumns);
+ wait = true;
+ }
+ }
+ }
+ if (wait)
+ QTest::qWait(50);
+}
+
+void tst_GraphicsViewBenchmark::ensureSubtreeCache(bool enable)
+{
+ QGraphicsWidget *widget = mMainView->testWidget();
+ if (!widget)
+ return;
+
+ if (SimpleList *list = qobject_cast<SimpleList *>(widget)) {
+ if (list->listItemCaching() != enable) {
+ list->setListItemCaching(enable);
+ QTest::qWait(50);
+ }
+ } else if (ItemRecyclingList *list = qobject_cast<ItemRecyclingList *>(widget)) {
+ if (list->listItemCaching() != enable) {
+ list->setListItemCaching(enable);
+ QTest::qWait(50);
+ }
+ }
+ QPixmapCache::clear();
+}
+
+void tst_GraphicsViewBenchmark::ensureImageBasedRendering(bool enable)
+{
+ if (mMainView->imageBasedRendering() != enable) {
+ mMainView->setImageBasedRendering(enable);
+ QTest::qWait(50);
+ }
+}
+
+void tst_GraphicsViewBenchmark::insertListData()
+{
+ QTest::addColumn<int>("listSize");
+ QTest::addColumn<ListType>("listType");
+
+ QTest::newRow("Simple list containing 10 items") << 10 << Simple;
+ QTest::newRow("Recycling list containing 10 items") << 10 << Recycling;
+ QTest::newRow("Simple list containing 50 items") << 50 << Simple;
+ QTest::newRow("Recycling list containing 50 items") << 50 << Recycling;
+ QTest::newRow("Simple list containing 500 items") << 500 << Simple;
+ QTest::newRow("Recycling list containing 500 items") << 500 << Recycling;
+}
+
+void tst_GraphicsViewBenchmark::initTestCase()
+{
+ mMainView = new MainView(mSettings->options() & Settings::UseOpenGL,
+ mSettings->options() & Settings::OutputFps);
+
+ if (mSettings->size().width() > 0 && mSettings->size().height() > 0) {
+ mMainView->resize(mSettings->size().width(), mSettings->size().height());
+ mMainView->show();
+ } else {
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5)
+ mMainView->showFullScreen();
+#else
+ if (QApplication::desktop()->width() < 360 || QApplication::desktop()->height() < 640) {
+ mMainView->showFullScreen();
+ } else {
+ mMainView->resize(360, 640);
+ mMainView->show();
+ }
+#endif
+ }
+
+ mDataGenerator.Reset();
+ SimpleList *list = new SimpleList;
+ list->setListItemCaching(false);
+ mMainView->setTestWidget(list);
+ fillList(mDataGenerator, 5, list);
+ mMainView->takeTestWidget();
+ delete list;
+
+ currentListSize = -1;
+ currentListType = None;
+
+ QTest::qWaitForWindowShown(mMainView);
+}
+
+void tst_GraphicsViewBenchmark::cleanupTestCase()
+{
+ delete mMainView;
+ mMainView = 0;
+}
+
+void tst_GraphicsViewBenchmark::init()
+{
+ // Make sure we don't have pending events in the queue.
+ // Yes, each test run takes a little bit longer, but the results are more stable.
+ QTest::qWait(150);
+}
+
+void tst_GraphicsViewBenchmark::createAndFillList_data()
+{
+ insertListData();
+}
+
+void tst_GraphicsViewBenchmark::createAndFillList()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+
+ resetView();
+
+ if (listType == Simple) {
+ QBENCHMARK {
+ SimpleList *list = new SimpleList;
+ setTestWidget(list, listSize, listType);
+ fillList(mDataGenerator, listSize, list);
+ }
+ } else {
+ QBENCHMARK {
+ ItemRecyclingList *list = new ItemRecyclingList;
+ setTestWidget(list, listSize, listType);
+ fillList(mDataGenerator, listSize, list);
+ }
+ }
+
+ resetView();
+}
+
+void tst_GraphicsViewBenchmark::add100ItemsToBeginningOfList_data()
+{
+ insertListData();
+}
+
+void tst_GraphicsViewBenchmark::add100ItemsToBeginningOfList()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+
+ resetView();
+
+ if (listType == Simple) {
+ SimpleList *list = new SimpleList;
+ fillList(mDataGenerator, listSize, list);
+ setTestWidget(list, listSize, listType);
+ QTest::qWait(50);
+ QBENCHMARK {
+ for (int i = 0; i < AddRemoveCount; ++i)
+ list->insertItem(0, newSimpleListItem(mDataGenerator, i));
+ }
+ } else {
+ ItemRecyclingList *list = new ItemRecyclingList;
+ fillList(mDataGenerator, listSize, list);
+ setTestWidget(list, listSize, listType);
+ QTest::qWait(50);
+ QBENCHMARK {
+ for (int i = 0; i < AddRemoveCount; ++i)
+ list->insertItem(0, newRecyclingListItem(mDataGenerator, i));
+ }
+ }
+
+ resetView();
+}
+
+void tst_GraphicsViewBenchmark::remove100ItemsFromBeginningOfList_data()
+{
+ insertListData();
+}
+
+void tst_GraphicsViewBenchmark::remove100ItemsFromBeginningOfList()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+
+ resetView();
+
+ if (listType == Simple) {
+ SimpleList *list = new SimpleList;
+ fillList(mDataGenerator, listSize, list);
+ setTestWidget(list, listSize, listType);
+ QTest::qWait(50);
+ QBENCHMARK {
+ for (int i = 0; i < AddRemoveCount; ++i)
+ delete list->takeItem(0);
+ }
+ } else {
+ ItemRecyclingList *list = new ItemRecyclingList;
+ fillList(mDataGenerator, listSize, list);
+ setTestWidget(list, listSize, listType);
+ QTest::qWait(50);
+ QBENCHMARK {
+ for (int i = 0; i < AddRemoveCount; ++i)
+ delete list->takeItem(0);
+ }
+ }
+
+ resetView();
+}
+
+void tst_GraphicsViewBenchmark::deleteList_data()
+{
+ insertListData();
+ QTest::newRow("Simple list containing 1000 items") << 1000 << Simple;
+ QTest::newRow("Recycling list containing 1000 items") << 1000 << Recycling;
+}
+
+void tst_GraphicsViewBenchmark::deleteList()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+
+ if (listSize < 500)
+ return; // Too small to measure.
+
+ QGraphicsWidget *list = 0;
+ if (listType == Simple)
+ list = new SimpleList;
+ else
+ list = new ItemRecyclingList;
+ fillList(mDataGenerator, listSize, list);
+ QTest::qWait(20);
+
+ QBENCHMARK_ONCE {
+ delete list;
+ }
+}
+
+void tst_GraphicsViewBenchmark::themeChange_data()
+{
+ QTest::addColumn<int>("listSize");
+ QTest::addColumn<ListType>("listType");
+ QTest::addColumn<Theme::Themes>("fromTheme");
+ QTest::addColumn<Theme::Themes>("toTheme");
+
+ QTest::newRow("From Blue to Lime, simple list containing 10 items") << 10 << Simple << Theme::Blue << Theme::Lime;
+ QTest::newRow("From Lime to Blue, simple list containing 10 items") << 10 << Simple << Theme::Lime << Theme::Blue;
+
+ QTest::newRow("From Blue to Lime, recycling list containing 10 items") << 10 << Recycling << Theme::Blue << Theme::Lime;
+ QTest::newRow("From Lime to Blue, recycling list containing 10 items") << 10 << Recycling << Theme::Lime << Theme::Blue;
+
+ QTest::newRow("From Blue to Lime, simple list containing 50 items") << 50 << Simple << Theme::Blue << Theme::Lime;
+ QTest::newRow("From Lime to Blue, simple list containing 50 items") << 50 << Simple << Theme::Lime << Theme::Blue;
+
+ QTest::newRow("From Blue to Lime, recycling list containing 50 items") << 50 << Recycling << Theme::Blue << Theme::Lime;
+ QTest::newRow("From Lime to Blue, recycling list containing 50 items") << 50 << Recycling << Theme::Lime << Theme::Blue;
+
+ QTest::newRow("From Blue to Lime, simple list containing 500 items") << 500 << Simple << Theme::Blue << Theme::Lime;
+ QTest::newRow("From Lime to Blue, simple list containing 500 items") << 500 << Simple << Theme::Lime << Theme::Blue;
+
+ QTest::newRow("From Blue to Lime, recycling list containing 500 items") << 500 << Recycling << Theme::Blue << Theme::Lime;
+ QTest::newRow("From Lime to Blue, recycling list containing 500 items") << 500 << Recycling << Theme::Lime << Theme::Blue;
+}
+
+void tst_GraphicsViewBenchmark::themeChange()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+ QFETCH(Theme::Themes, fromTheme);
+ QFETCH(Theme::Themes, toTheme);
+
+ if (fromTheme == toTheme)
+ qFatal("tst_GraphicsViewBenchmark::themeChange: to and from theme is the same");
+
+ ensureListSizeAndType(listSize, listType);
+ ensureTheme(fromTheme);
+
+ QBENCHMARK {
+ Theme::p()->setTheme(toTheme);
+ }
+}
+
+static inline QLatin1String stringForTheme(Theme::Themes theme)
+{
+ if (theme == Theme::Blue)
+ return QLatin1String("Blue");
+ return QLatin1String("Lime");
+}
+
+static inline QLatin1String stringForListType(tst_GraphicsViewBenchmark::ListType type)
+{
+ if (type == tst_GraphicsViewBenchmark::Simple)
+ return QLatin1String("Simple");
+ if (type == tst_GraphicsViewBenchmark::Recycling)
+ return QLatin1String("Recycling");
+ return QLatin1String("None");
+}
+
+static inline QLatin1String stringForScrollStep(tst_GraphicsViewBenchmark::ScrollStep step)
+{
+ if (step == tst_GraphicsViewBenchmark::Slow)
+ return QLatin1String("Slow");
+ if (step == tst_GraphicsViewBenchmark::Normal)
+ return QLatin1String("Normal");
+ return QLatin1String("Fast");
+}
+
+static inline QString rowString(int listSize, tst_GraphicsViewBenchmark::ListType listType,
+ Theme::Themes theme, int toImage, int cache, int angle)
+{
+ return QString("Items=%1, List=%2, Theme=%3, RenderToImage=%4, Cache=%5, RotAngle=%6")
+ .arg(QString::number(listSize)).arg(stringForListType(listType))
+ .arg(stringForTheme(theme)).arg(QString::number(toImage))
+ .arg(QString::number(cache)).arg(QString::number(angle));
+}
+
+static inline QString rowString(int listSize, tst_GraphicsViewBenchmark::ListType listType,
+ Theme::Themes theme, int cache, int angle,
+ tst_GraphicsViewBenchmark::ScrollStep step)
+{
+ return QString("Items=%1, List=%2, Theme=%3, Cache=%4, RotAngle=%5, Speed=%6")
+ .arg(QString::number(listSize)).arg(stringForListType(listType))
+ .arg(stringForTheme(theme)).arg(QString::number(cache))
+ .arg(QString::number(angle)).arg(stringForScrollStep(step));
+}
+
+void tst_GraphicsViewBenchmark::update_data()
+{
+ QTest::addColumn<int>("listSize");
+ QTest::addColumn<ListType>("listType");
+ QTest::addColumn<Theme::Themes>("theme");
+ QTest::addColumn<bool>("renderToImage");
+ QTest::addColumn<bool>("subtreeCache");
+ QTest::addColumn<int>("rotationAngle");
+
+ QList<ListType> listTypes;
+ listTypes << Simple << Recycling;
+
+ QList<int> listSizes;
+ listSizes << 10 << 50 << 500;
+
+ QList<Theme::Themes> themes;
+ themes << Theme::Blue << Theme::Lime;
+
+ QList<int> rotationAngles;
+ rotationAngles << 0 << 90;
+
+ // Generate rows:
+ foreach (ListType listType, listTypes) {
+ foreach (int listSize, listSizes) {
+ foreach (int angle, rotationAngles) {
+ foreach (Theme::Themes theme, themes) {
+ for (int toImage = 0; toImage < 2; ++toImage) {
+ for (int cache = 0; cache < 2; ++cache) {
+ QString string = rowString(listSize, listType, theme, toImage, cache, angle);
+ QTest::newRow(string.toLatin1()) << listSize << listType << theme << bool(toImage)
+ << bool(cache) << angle;
+ }
+ }
+ }
+ }
+ }
+ }
+}
+
+void tst_GraphicsViewBenchmark::update()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+ QFETCH(Theme::Themes, theme);
+ QFETCH(bool, renderToImage);
+ QFETCH(bool, subtreeCache);
+ QFETCH(int, rotationAngle);
+
+ mMainView->viewport()->setUpdatesEnabled(false);
+
+ ensureListSizeAndType(listSize, listType);
+ ensureTheme(theme);
+ ensureRotationAngle(rotationAngle);
+ ensureSubtreeCache(subtreeCache);
+ ensureImageBasedRendering(renderToImage);
+
+ QEventLoop loop;
+ QObject::connect(mMainView, SIGNAL(repainted()), &loop, SLOT(quit()));
+ QTimer::singleShot(4000, &loop, SLOT(quit()));
+ // Dry run (especially important when cache is enabled).
+ // NB! setUpdatesEnabled triggers an update().
+ mMainView->viewport()->setUpdatesEnabled(true);
+ loop.exec(QEventLoop::AllEvents | QEventLoop::ExcludeUserInputEvents| QEventLoop::ExcludeSocketNotifiers);
+ QTest::qWait(50);
+
+ QTimer::singleShot(4000, &loop, SLOT(quit()));
+ QBENCHMARK {
+ mMainView->viewport()->update();
+ loop.exec(QEventLoop::AllEvents | QEventLoop::ExcludeUserInputEvents| QEventLoop::ExcludeSocketNotifiers);
+ }
+}
+
+void tst_GraphicsViewBenchmark::scroll_data()
+{
+ QTest::addColumn<int>("listSize");
+ QTest::addColumn<ListType>("listType");
+ QTest::addColumn<Theme::Themes>("theme");
+ QTest::addColumn<bool>("subtreeCache");
+ QTest::addColumn<int>("rotationAngle");
+ QTest::addColumn<ScrollStep>("scrollStep");
+
+ QList<ListType> listTypes;
+ listTypes << Simple << Recycling;
+
+ QList<int> listSizes;
+ listSizes << 10 << 50 << 500;
+
+ QList<Theme::Themes> themes;
+ themes << Theme::Blue << Theme::Lime;
+
+ QList<int> rotationAngles;
+ rotationAngles << 0 << 90;
+
+ QList<ScrollStep> scrollSteps;
+ scrollSteps << Slow << Normal << Fast;
+
+ // Generate rows:
+ foreach (ListType listType, listTypes) {
+ foreach (int listSize, listSizes) {
+ foreach (int angle, rotationAngles) {
+ foreach (ScrollStep step, scrollSteps) {
+ foreach (Theme::Themes theme, themes) {
+ for (int cache = 0; cache < 2; ++cache) {
+ QString string = rowString(listSize, listType, theme, cache, angle, step);
+ QTest::newRow(string.toLatin1()) << listSize << listType << theme
+ << bool(cache) << angle << step;
+ }
+ }
+ }
+ }
+ }
+ }
+}
+
+void tst_GraphicsViewBenchmark::scroll()
+{
+ QFETCH(int, listSize);
+ QFETCH(ListType, listType);
+ QFETCH(Theme::Themes, theme);
+ QFETCH(bool, subtreeCache);
+ QFETCH(int, rotationAngle);
+ QFETCH(ScrollStep, scrollStep);
+
+ mMainView->viewport()->setUpdatesEnabled(false);
+
+ ensureListSizeAndType(listSize, listType);
+ ensureTheme(theme);
+ ensureRotationAngle(rotationAngle);
+ ensureSubtreeCache(subtreeCache);
+ ensureImageBasedRendering(false);
+
+ ScrollBar *sb = 0;
+ if (listType == Simple)
+ sb = static_cast<SimpleList *>(mMainView->testWidget())->verticalScrollBar();
+ else
+ sb = static_cast<ItemRecyclingList *>(mMainView->testWidget())->verticalScrollBar();
+ const qreal sliderStart = sb->sliderSize() / qreal(2.0);
+ const qreal sliderTarget = sliderStart + qreal(scrollStep);
+ sb->setSliderPosition(sliderStart);
+
+ QEventLoop loop;
+ QObject::connect(mMainView, SIGNAL(repainted()), &loop, SLOT(quit()));
+ QTimer::singleShot(4000, &loop, SLOT(quit()));
+ // Dry run (especially important when cache is enabled).
+ // NB! setUpdatesEnabled triggers an update().
+ mMainView->viewport()->setUpdatesEnabled(true);
+ loop.exec(QEventLoop::AllEvents | QEventLoop::ExcludeUserInputEvents| QEventLoop::ExcludeSocketNotifiers);
+ QTest::qWait(50);
+
+ QTimer::singleShot(4000, &loop, SLOT(quit()));
+ QBENCHMARK {
+ sb->setSliderPosition(sliderTarget);
+ loop.exec(QEventLoop::AllEvents | QEventLoop::ExcludeUserInputEvents| QEventLoop::ExcludeSocketNotifiers);
+ }
+}
+
+int main(int argc, char *argv[])
+{
+ Settings settings;
+ if (!readSettingsFromCommandLine(argc, argv, settings))
+ return 1;
+
+ // Eat command line arguments.
+ int aargc = 0;
+ for (int i = 0; i < argc; ++i) {
+ if (argv[i])
+ ++aargc;
+ }
+ char **aargv = new char*[aargc];
+ aargc = 0;
+ for (int i = 0; i < argc; ++i) {
+ if (argv[i])
+ aargv[aargc++] = argv[i];
+ }
+
+ QApplication app(aargc, aargv);
+
+ int returnValue = 0;
+ if (settings.options() & Settings::ManualTest) {
+ MainView view(settings.options() & Settings::UseOpenGL, settings.options() & Settings::OutputFps);
+
+ DummyDataGenerator dataGenerator;
+ dataGenerator.Reset();
+
+ SimpleList *list = new SimpleList;
+ if (settings.options() & Settings::UseListItemCache)
+ list->setListItemCaching(true);
+ else
+ list->setListItemCaching(false);
+
+ if (settings.listItemCount())
+ fillList(dataGenerator, settings.listItemCount(), list);
+ else
+ fillList(dataGenerator, 500, list);
+
+ view.setTestWidget(list);
+
+ if ((settings.angle() % 360) != 0)
+ view.rotateContent(settings.angle());
+
+ if (settings.size().width() > 0 && settings.size().height() > 0) {
+ view.resize(settings.size().width(), settings.size().height());
+ view.show();
+ } else {
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5)
+ view.showFullScreen();
+#else
+ if (QApplication::desktop()->width() < 360 || QApplication::desktop()->height() < 640) {
+ view.showFullScreen();
+ } else {
+ view.resize(360, 640);
+ view.show();
+ }
+#endif
+ }
+ returnValue = app.exec();
+ } else {
+ QTEST_DISABLE_KEYPAD_NAVIGATION
+ tst_GraphicsViewBenchmark tc(&settings);
+ returnValue = QTest::qExec(&tc, aargc, aargv);
+ }
+
+ delete [] aargv;
+ return returnValue;
+}
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_001_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_001_58x58.png
new file mode 100644
index 0000000000..525b5559a0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_001_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_002_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_002_58x58.png
new file mode 100644
index 0000000000..3d932985a6
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_002_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_003_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_003_58x58.png
new file mode 100644
index 0000000000..556cfcba6a
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_003_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_004_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_004_58x58.png
new file mode 100644
index 0000000000..94acf9e669
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_004_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_005_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_005_58x58.png
new file mode 100644
index 0000000000..ed0c7c42f0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_005_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_006_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_006_58x58.png
new file mode 100644
index 0000000000..d4b4dc3a8e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_006_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_007_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_007_58x58.png
new file mode 100644
index 0000000000..0e45d18e4d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_007_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_008_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_008_58x58.png
new file mode 100644
index 0000000000..0c25540ac9
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_008_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_009_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_009_58x58.png
new file mode 100644
index 0000000000..ce435ea537
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_009_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_010_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_010_58x58.png
new file mode 100644
index 0000000000..021db25882
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_man_010_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_001_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_001_58x58.png
new file mode 100644
index 0000000000..0051da326f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_001_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_002_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_002_58x58.png
new file mode 100644
index 0000000000..e8a946a8ba
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_002_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_003_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_003_58x58.png
new file mode 100644
index 0000000000..b2bb851f69
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_003_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_004_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_004_58x58.png
new file mode 100644
index 0000000000..871c075d05
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_004_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_005_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_005_58x58.png
new file mode 100644
index 0000000000..d4c18b8bb0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_picture_005_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_001_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_001_58x58.png
new file mode 100644
index 0000000000..10a5947234
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_001_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_002_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_002_58x58.png
new file mode 100644
index 0000000000..65b4e03c5b
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_002_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_003_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_003_58x58.png
new file mode 100644
index 0000000000..935ec07171
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_003_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_004_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_004_58x58.png
new file mode 100644
index 0000000000..fbc1a937fd
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_004_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_005_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_005_58x58.png
new file mode 100644
index 0000000000..af96d3e149
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_005_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_006_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_006_58x58.png
new file mode 100644
index 0000000000..fb4192d35f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_006_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_007_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_007_58x58.png
new file mode 100644
index 0000000000..f5d6dea0b0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_007_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_008_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_008_58x58.png
new file mode 100644
index 0000000000..d08b8dc364
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_008_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_009_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_009_58x58.png
new file mode 100644
index 0000000000..768b97de6e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_009_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_010_58x58.png b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_010_58x58.png
new file mode 100644
index 0000000000..d1fe28e61e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/avatars/avatar_woman_010_58x58.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_360x640px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_360x640px.svg
new file mode 100644
index 0000000000..1552bafa17
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_360x640px.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="360px" height="640px" viewBox="0 0 360 640" enable-background="new 0 0 360 640" xml:space="preserve">
+<g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-3.5137" y1="2.1079" x2="363.6142" y2="637.9921">
+ <stop offset="0.1538" style="stop-color:#2BD5FF"/>
+ <stop offset="0.4396" style="stop-color:#80E6FF"/>
+ <stop offset="0.7253" style="stop-color:#29CAF2"/>
+ </linearGradient>
+ <rect x="0.05" y="0.05" fill="url(#SVGID_1_)" width="360" height="640"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_horisontal_640x360px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_horisontal_640x360px.svg
new file mode 100644
index 0000000000..5589110950
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_background_horisontal_640x360px.svg
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="640px" height="360px" viewBox="0 0 640 360" enable-background="new 0 0 640 360" xml:space="preserve">
+<g>
+ <rect x="-0.5" y="-0.5" fill="#FFFFFF" width="640" height="360"/>
+
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="1580.5244" y1="-287.7886" x2="1038.1285" y2="-600.9408" gradientTransform="matrix(0 -1 -1 0 -124.8652 1488.8262)">
+ <stop offset="0.2527" style="stop-color:#2BD5FF"/>
+ <stop offset="0.5989" style="stop-color:#80E6FF"/>
+ <stop offset="0.9396" style="stop-color:#29CAF2"/>
+ </linearGradient>
+ <rect x="1.5" y="1.5" fill="url(#SVGID_1_)" width="636" height="356"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_default_icon_52x52px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_default_icon_52x52px.svg
new file mode 100644
index 0000000000..665675b1e8
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_default_icon_52x52px.svg
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="52px" height="52px" viewBox="0 0 52 52" enable-background="new 0 0 52 52" xml:space="preserve">
+<g>
+ <path fill="#29CAF2" d="M52.07,48.77c0,1.79-1.46,3.25-3.25,3.25H3.32c-1.79,0-3.25-1.46-3.25-3.25V3.27
+ c0-1.79,1.46-3.25,3.25-3.25h45.5c1.79,0,3.25,1.46,3.25,3.25V48.77z"/>
+ <g>
+ <rect x="3.37" y="3.69" fill="#2BD5FF" width="44.69" height="44.69"/>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="6.8594" y1="27.8086" x2="48.0244" y2="27.8086">
+ <stop offset="0.1538" style="stop-color:#27C0E6"/>
+ <stop offset="0.4396" style="stop-color:#25B7DB"/>
+ <stop offset="0.7253" style="stop-color:#22A5C4"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M47.95,48.31c0.12-3.35,0.15-8.17-0.43-9.12c-2.87-4.64-11.55-3.61-14.02-3.22
+ c0-1.17-0.01-2.19-0.01-2.96c0.5-0.52,0.96-1.11,1.39-1.76l0.06,0.19c3.57,0.51,4.02-11.16,4.02-11.16
+ C39.21,3.66,28.83,7.47,27.18,8.18c-3.05-0.78-10.3-1.3-10.09,11.2c0,0-0.53,11.06,3.52,11.38c0.5,0.85,1.07,1.6,1.69,2.25
+ c-0.01,0.72-0.04,1.65-0.08,2.71c-5.32-0.36-14.73-0.08-15.35,6.39c-0.06,0.62,0.12,3.69,0.28,6.2L47.95,48.31z"/>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_divider_360x76px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_divider_360x76px.svg
new file mode 100644
index 0000000000..db9fc7af33
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_divider_360x76px.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="360px" height="76px" viewBox="0 0 360 76" enable-background="new 0 0 360 76" xml:space="preserve">
+<rect x="0.01" y="0.35" opacity="0.2" fill="#FFFFFF" width="360" height="76"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_highlighter_360x76px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_highlighter_360x76px.svg
new file mode 100644
index 0000000000..dae2bd4842
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_list_highlighter_360x76px.svg
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="360px" height="76px" viewBox="0 0 360 76" enable-background="new 0 0 360 76" xml:space="preserve">
+<rect x="0.02" y="0.05" opacity="0.4" fill="#FFFFFF" fill-opacity="0.8" width="360" height="76"/>
+<g>
+ <path fill="#FFFFFF" d="M360.02,0.05v76h-360v-76H360.02 M359.02,1.05h-358v74h358V1.05L359.02,1.05z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_idle_33x33px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_idle_33x33px.svg
new file mode 100644
index 0000000000..fe12e782a6
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_idle_33x33px.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="33px" height="33px" viewBox="0 0 33 33" enable-background="new 0 0 33 33" xml:space="preserve">
+<g>
+ <path fill="#29CAF2" d="M33.03,16.58c0,9.11-7.39,16.5-16.5,16.5c-9.12,0-16.5-7.39-16.5-16.5c0-9.11,7.38-16.5,16.5-16.5
+ C25.63,0.08,33.03,7.47,33.03,16.58z"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="16.5249" y1="29.1172" x2="16.5249" y2="4.0435">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M16.52,29.12c-6.91,0-12.54-5.62-12.54-12.54c0-6.91,5.62-12.54,12.54-12.54
+ s12.54,5.62,12.54,12.54C29.06,23.49,23.44,29.12,16.52,29.12L16.52,29.12z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="6.875" y1="9.8242" x2="26.1715" y2="23.3358">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="16.52" cy="16.58" r="11.78"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="8.6343" y1="11.1309" x2="24.2014" y2="22.0311">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M16.42,26.08c-5.24,0-9.51-4.26-9.51-9.5c0-5.24,4.26-9.51,9.51-9.51c5.24,0,9.5,4.26,9.5,9.51
+ C25.92,21.82,21.66,26.08,16.42,26.08L16.42,26.08z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="23.0186" y1="22.1201" x2="9.8155" y2="11.0414">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="16.42" cy="16.58" r="8.62"/>
+ <path fill="#FF901F" d="M16.42,24.06c-4.12,0-7.48-3.35-7.48-7.47c0-4.12,3.36-7.48,7.48-7.48c4.12,0,7.47,3.36,7.47,7.48
+ C23.89,20.7,20.54,24.06,16.42,24.06L16.42,24.06z"/>
+ <g>
+ <path fill="#FFD06B" d="M14.09,14.25c2.1-2.1,5.31-2.41,7.75-0.94c-0.26-0.43-0.57-0.84-0.94-1.21c-2.47-2.47-6.49-2.47-8.96,0
+ c-2.47,2.47-2.47,6.49,0,8.96c0.37,0.37,0.78,0.68,1.21,0.94C11.68,19.56,11.99,16.35,14.09,14.25z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-122.4058" y1="66.873" x2="-127.2734" y2="58.442" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#FF901F"/>
+ <stop offset="1" style="stop-color:#FFB81F"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M20.9,21.06c2.1-2.1,2.41-5.31,0.94-7.75c-2.43-1.47-5.65-1.16-7.75,0.94
+ c-2.1,2.1-2.41,5.31-0.94,7.75C15.58,23.47,18.8,23.16,20.9,21.06z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_offline_33x33px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_offline_33x33px.svg
new file mode 100644
index 0000000000..0c973f1bc9
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_offline_33x33px.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="33px" height="33px" viewBox="0 0 33 33" enable-background="new 0 0 33 33" xml:space="preserve">
+<g>
+ <circle fill="#29CAF2" cx="16.46" cy="16.52" r="16.5"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="16.4624" y1="29.0566" x2="16.4624" y2="3.9829">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M16.46,29.06c-6.91,0-12.54-5.62-12.54-12.54c0-6.91,5.62-12.54,12.54-12.54S29,9.61,29,16.52
+ C29,23.43,23.37,29.06,16.46,29.06L16.46,29.06z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="6.814" y1="9.7637" x2="26.1096" y2="23.2746">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M28.24,16.52c0,6.51-5.27,11.78-11.78,11.78c-6.5,0-11.78-5.27-11.78-11.78
+ c0-6.5,5.27-11.78,11.78-11.78C22.97,4.74,28.24,10.02,28.24,16.52z"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="8.5713" y1="11.0693" x2="24.1392" y2="21.9701">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M16.36,26.02c-5.24,0-9.51-4.26-9.51-9.5c0-5.24,4.26-9.51,9.51-9.51c5.24,0,9.5,4.27,9.5,9.51
+ C25.86,21.76,21.6,26.02,16.36,26.02L16.36,26.02z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="22.9561" y1="22.0576" x2="9.7545" y2="10.9802">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="16.36" cy="16.52" r="8.62"/>
+ <path fill="#BD0700" d="M16.36,24c-4.12,0-7.48-3.35-7.48-7.48c0-4.12,3.36-7.48,7.48-7.48c4.12,0,7.47,3.36,7.47,7.48
+ C23.83,20.64,20.48,24,16.36,24L16.36,24z"/>
+ <g>
+ <path fill="#F25757" d="M14.03,14.19c2.1-2.1,5.31-2.41,7.75-0.94c-0.26-0.43-0.57-0.84-0.94-1.21c-2.47-2.47-6.49-2.47-8.96,0
+ c-2.47,2.47-2.47,6.49,0,8.96c0.37,0.37,0.78,0.68,1.21,0.94C11.62,19.5,11.93,16.29,14.03,14.19z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-122.4668" y1="66.8125" x2="-127.3345" y2="58.3814" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#BD0700"/>
+ <stop offset="1" style="stop-color:#E35D58"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M20.83,21c2.1-2.1,2.41-5.31,0.94-7.75c-2.43-1.47-5.65-1.16-7.75,0.94
+ c-2.1,2.1-2.41,5.31-0.94,7.75C15.52,23.4,18.74,23.1,20.83,21z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_online_33x33px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_online_33x33px.svg
new file mode 100644
index 0000000000..fcb434afda
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_contact_status_online_33x33px.svg
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="33px" height="33px" viewBox="0 0 33 33" enable-background="new 0 0 33 33" xml:space="preserve">
+<g>
+ <path fill="#29CAF2" d="M32.96,16.59c0,9.11-7.39,16.5-16.5,16.5c-9.12,0-16.5-7.39-16.5-16.5c0-9.11,7.38-16.5,16.5-16.5
+ C25.57,0.09,32.96,7.47,32.96,16.59z"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="16.4624" y1="29.123" x2="16.4624" y2="4.0493">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M16.46,29.12c-6.91,0-12.54-5.62-12.54-12.54c0-6.91,5.62-12.54,12.54-12.54S29,9.67,29,16.58
+ C29,23.5,23.37,29.12,16.46,29.12L16.46,29.12z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="6.813" y1="9.8301" x2="26.1095" y2="23.3416">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M28.24,16.58c0,6.51-5.27,11.78-11.78,11.78S4.68,23.09,4.68,16.58c0-6.5,5.27-11.78,11.78-11.78
+ S28.24,10.08,28.24,16.58z"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="8.5723" y1="11.1362" x2="24.1386" y2="22.0359">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M16.36,26.09c-5.24,0-9.51-4.26-9.51-9.5c0-5.24,4.26-9.51,9.51-9.51c5.24,0,9.5,4.27,9.5,9.51
+ C25.86,21.83,21.6,26.09,16.36,26.09L16.36,26.09z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="22.9561" y1="22.125" x2="9.753" y2="11.0463">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="16.35" cy="16.58" r="8.62"/>
+ <path fill="#09B300" d="M16.36,24.06c-4.12,0-7.48-3.35-7.48-7.48c0-4.12,3.36-7.48,7.48-7.48c4.12,0,7.47,3.36,7.47,7.48
+ C23.83,20.71,20.48,24.06,16.36,24.06L16.36,24.06z"/>
+ <g>
+ <path fill="#57EB51" d="M14.03,14.25c2.1-2.1,5.31-2.41,7.75-0.94c-0.26-0.43-0.57-0.84-0.94-1.21c-2.47-2.47-6.49-2.47-8.96,0
+ c-2.47,2.47-2.47,6.49,0,8.96c0.37,0.37,0.78,0.68,1.21,0.94C11.62,19.57,11.93,16.35,14.03,14.25z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-122.4678" y1="66.8789" x2="-127.3354" y2="58.4478" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#09AA00"/>
+ <stop offset="1" style="stop-color:#4DCC46"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M20.83,21.06c2.1-2.1,2.41-5.31,0.94-7.75c-2.43-1.47-5.65-1.16-7.75,0.94
+ c-2.1,2.1-2.41,5.31-0.94,7.75C15.52,23.47,18.73,23.16,20.83,21.06z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scroll_16x80px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scroll_16x80px.svg
new file mode 100644
index 0000000000..897be81dc5
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scroll_16x80px.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="80px" viewBox="0 0 16 80" enable-background="new 0 0 16 80" xml:space="preserve">
+<g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="0.1045" y1="40.0293" x2="16.1045" y2="40.0293">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M12.22,80.03c2.15,0,3.89-1.74,3.89-3.88V3.91c0-2.14-1.74-3.88-3.89-3.88H3.99
+ c-2.15,0-3.88,1.74-3.88,3.88c0,0,1.94,16.34,1.94,36.4c0,20.06-1.94,35.84-1.94,35.84c0,2.14,1.74,3.88,3.88,3.88H12.22z"/>
+ <path fill="#29CAF2" d="M12.22,78.09H3.99c-1.04,0-1.89-0.82-1.94-1.84c0.19-1.62,1.94-16.98,1.94-35.94
+ c0-18.96-1.75-34.84-1.94-36.49c0.05-1.03,0.9-1.85,1.94-1.85h8.23c1.04,0,1.89,0.82,1.94,1.84c-0.19,1.62-0.19,70.78,0,72.42
+ C14.11,77.27,13.26,78.09,12.22,78.09L12.22,78.09z"/>
+ <g>
+ <g>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="10.7334" y1="51.3867" x2="7.417" y2="45.6425">
+ <stop offset="0" style="stop-color:#E6E6E6"/>
+ <stop offset="0.6978" style="stop-color:#BFBFBF"/>
+ <stop offset="1" style="stop-color:#F2F2F2"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_2_)" points="7.42,51.39 5.76,48.52 7.42,45.64 10.73,45.64 12.39,48.52 10.73,51.39 "/>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="10.7344" y1="42.9014" x2="7.4175" y2="37.1563">
+ <stop offset="0" style="stop-color:#E6E6E6"/>
+ <stop offset="0.6978" style="stop-color:#BFBFBF"/>
+ <stop offset="1" style="stop-color:#F2F2F2"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_3_)" points="7.42,42.9 5.76,40.03 7.42,37.16 10.73,37.16 12.39,40.03 10.73,42.9 "/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="10.7334" y1="34.4131" x2="7.4175" y2="28.6697">
+ <stop offset="0" style="stop-color:#E6E6E6"/>
+ <stop offset="0.6978" style="stop-color:#BFBFBF"/>
+ <stop offset="1" style="stop-color:#F2F2F2"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_4_)" points="7.42,34.41 5.76,31.54 7.42,28.67 10.73,28.67 12.39,31.54 10.73,34.41 "/>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scrollbar_7x14px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scrollbar_7x14px.svg
new file mode 100644
index 0000000000..3baec2f4b6
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_scrollbar_7x14px.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="7px" height="14px" viewBox="0 0 7 14" enable-background="new 0 0 7 14" xml:space="preserve">
+<rect x="0.01" y="0.01" fill="#2BD5FF" width="7" height="14"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_left_14x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_left_14x24px.svg
new file mode 100644
index 0000000000..dd6fb70a8d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_left_14x24px.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="14px" height="24px" viewBox="0 0 14 24" enable-background="new 0 0 14 24" xml:space="preserve">
+<g>
+ <path fill="none" d="M4.92,21.95c-0.28-0.33-0.53-0.67-0.77-1.03C4.39,21.28,4.64,21.63,4.92,21.95z"/>
+ <path fill="none" d="M2.11,15.42c-0.05-0.46-0.09-0.92-0.09-1.39C2.02,14.5,2.06,14.97,2.11,15.42z"/>
+ <path fill="none" d="M4.08,20.82c-0.23-0.35-0.45-0.71-0.64-1.08C3,18.9,2.65,18.01,2.41,17.07C2.76,18.43,3.33,19.7,4.08,20.82z"
+ />
+ <path fill="none" d="M2.37,16.92c-0.09-0.38-0.16-0.77-0.22-1.17C2.21,16.14,2.28,16.54,2.37,16.92z"/>
+ <path fill="#29CAF2" d="M4.13,20.82c-0.74-1.13-1.3-2.39-1.64-3.75c-0.01-0.05-0.02-0.1-0.04-0.16c-0.09-0.38-0.16-0.77-0.22-1.17
+ c-0.01-0.11-0.03-0.22-0.04-0.33c-0.05-0.46-0.08-0.92-0.08-1.39c0-6.63,5.57-12,11.86-12l0,0v-2h-2.61
+ c-6.29,0-11.39,5.37-11.39,12c0,4.13,1.98,7.76,4.99,9.92c-0.27-0.33-0.52-0.67-0.76-1.03C4.17,20.89,4.15,20.86,4.13,20.82z"/>
+ <path fill="#80E6FF" d="M10.17,22.03c-2.5,0-4.8-0.86-6.68-2.29c0.19,0.37,0.41,0.73,0.63,1.08c0.02,0.03,0.04,0.07,0.07,0.1
+ c0.24,0.36,0.49,0.7,0.76,1.03c1.82,1.31,4.03,2.08,6.4,2.08h2.61v-2H10.17z"/>
+ <path fill="#80E6FF" d="M4.08,20.82c0.02,0.04,0.04,0.07,0.07,0.1C4.12,20.89,4.1,20.86,4.08,20.82z"/>
+ <path fill="#2BD5FF" d="M13.97,2.03c-6.29,0-11.86,5.37-11.86,12c0,0.47,0.03,0.93,0.08,1.39c0.01,0.11,0.03,0.22,0.04,0.33
+ c0.06,0.4,0.12,0.79,0.22,1.17c0.01,0.05,0.02,0.1,0.04,0.16c0.24,0.94,0.58,1.83,1.01,2.67c1.88,1.44,4.18,2.29,6.68,2.29h3.8
+ V2.03L13.97,2.03z"/>
+ <path fill="#2BD5FF" d="M2.41,17.07c-0.01-0.05-0.02-0.1-0.04-0.16C2.39,16.97,2.4,17.02,2.41,17.07z"/>
+ <path fill="#2BD5FF" d="M2.15,15.75c-0.01-0.11-0.03-0.22-0.04-0.33C2.12,15.53,2.14,15.64,2.15,15.75z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_middle_14x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_middle_14x24px.svg
new file mode 100644
index 0000000000..cabf9285a7
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_middle_14x24px.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="10px" height="24px" viewBox="0 0 10 24" enable-background="new 0 0 10 24" xml:space="preserve">
+<g>
+ <rect y="1" fill="#2BD5FF" width="10" height="22"/>
+ <rect fill="#29CAF2" width="10" height="2"/>
+ <rect y="22" fill="#80E6FF" width="10" height="2"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_right_14x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_right_14x24px.svg
new file mode 100644
index 0000000000..f3a795b88d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_status_field_right_14x24px.svg
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="14px" height="24px" viewBox="0 0 14 24" enable-background="new 0 0 14 24" xml:space="preserve">
+<g>
+ <path fill="#29CAF2" d="M4.59,2C7,2,9.25,2.77,11.1,4.08C8.98,1.58,5.88,0,2.42,0H0v2H4.59z"/>
+ <path fill="#80E6FF" d="M11.6,4.71c0.76,1.6,1.2,3.39,1.2,5.29c0,6.63-5.19,12-11.59,12H0v2h2.41C8.82,24,14,18.63,14,12
+ C14,9.25,13.1,6.73,11.6,4.71z"/>
+ <path fill="#2BD5FF" d="M0,2v20h1.21c6.4,0,11.59-5.37,11.59-12c0-1.9-0.44-3.69-1.2-5.29c-0.16-0.22-0.32-0.43-0.5-0.64
+ C9.25,2.77,7,2,4.59,2H0z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_356x96px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_356x96px.svg
new file mode 100644
index 0000000000..a0efd347fb
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_356x96px.svg
@@ -0,0 +1,2007 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="356px" height="96px" viewBox="0 0 356 96" enable-background="new 0 0 356 96" xml:space="preserve">
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-182.1821" y1="-52.7012" x2="-115.6673" y2="130.047" gradientTransform="matrix(-1 0 0 1 29.2188 0)">
+ <stop offset="0" style="stop-color:#2BD5FF"/>
+ <stop offset="0.3516" style="stop-color:#80E6FF"/>
+ <stop offset="0.9176" style="stop-color:#28C4EB"/>
+</linearGradient>
+<path fill="url(#SVGID_1_)" d="M356.19,76.95V0H0.24v77.4c0,0,82.53,12.07,184.11,12.07C184.34,89.46,277.67,90.39,356.19,76.95z"/>
+<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-327.1934" y1="86.1738" x2="28.8057" y2="86.1738" gradientTransform="matrix(-1 0 0 1 29.2188 0)">
+ <stop offset="0" style="stop-color:#2BD5FF"/>
+ <stop offset="0.9176" style="stop-color:#28C6ED"/>
+</linearGradient>
+<path fill="url(#SVGID_2_)" d="M184.54,89.13C82.96,89.13,0.43,77.06,0.43,77.06l-0.02,4.56c0,0,82.53,14.04,184.11,14.04h171.39
+ l0.1-18.98C277.57,90.05,184.54,89.13,184.54,89.13z"/>
+<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-365.623" y1="-266.3726" x2="-362.1982" y2="-260.4406" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_3_)" d="M353.52,73.18c-0.71-1-1.42-2.02-2.14-3.03c-1.43,0.19-2.85,0.38-4.27,0.56
+ c-0.71,1.21-1.42,2.43-2.13,3.65C347.82,73.98,350.67,73.58,353.52,73.18z"/>
+<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-365.6025" y1="-276.23" x2="-361.4175" y2="-268.9812" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_4_)" d="M351.38,66.97c0.71-1.2,1.42-2.4,2.14-3.59c-0.71-1.02-1.42-2.04-2.14-3.07
+ c-1.42,0.16-2.85,0.32-4.28,0.48c-0.71,1.2-1.42,2.4-2.14,3.61c0.71,1.04,1.43,2.08,2.14,3.11
+ C348.53,67.33,349.95,67.15,351.38,66.97z"/>
+<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-365.5835" y1="-286.0889" x2="-361.4316" y2="-278.8976" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_5_)" d="M351.38,57.12c0.71-1.19,1.43-2.37,2.14-3.55c-0.71-1.03-1.43-2.07-2.14-3.11
+ c-1.43,0.14-2.85,0.27-4.28,0.4c-0.71,1.18-1.43,2.37-2.14,3.57c0.71,1.05,1.43,2.1,2.14,3.15
+ C348.53,57.43,349.95,57.27,351.38,57.12z"/>
+<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="-365.5649" y1="-295.9473" x2="-361.4463" y2="-288.8135" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_6_)" d="M351.38,47.27c0.71-1.17,1.42-2.34,2.14-3.51c-0.71-1.04-1.43-2.1-2.14-3.15
+ c-1.43,0.11-2.85,0.22-4.28,0.33c-0.71,1.17-1.43,2.35-2.14,3.53c0.71,1.07,1.43,2.13,2.14,3.18
+ C348.52,47.52,349.95,47.4,351.38,47.27z"/>
+<linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-365.5439" y1="-305.8047" x2="-361.4585" y2="-298.7285" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_7_)" d="M351.37,37.43c0.71-1.16,1.43-2.32,2.14-3.47c-0.71-1.06-1.43-2.12-2.14-3.19
+ c-1.43,0.08-2.86,0.17-4.29,0.25c-0.71,1.16-1.43,2.32-2.14,3.49c0.72,1.08,1.43,2.16,2.14,3.23
+ C348.52,37.63,349.95,37.52,351.37,37.43z"/>
+<linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="-365.5264" y1="-315.6636" x2="-361.4736" y2="-308.644" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_8_)" d="M351.37,27.58c0.71-1.15,1.43-2.29,2.14-3.43c-0.71-1.07-1.43-2.15-2.14-3.23
+ c-1.43,0.06-2.86,0.11-4.29,0.17c-0.71,1.15-1.43,2.3-2.14,3.45c0.72,1.09,1.43,2.18,2.15,3.26
+ C348.51,27.72,349.94,27.65,351.37,27.58z"/>
+<linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="-365.5044" y1="-325.519" x2="-361.4858" y2="-318.5587" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_9_)" d="M351.37,17.73c0.71-1.14,1.43-2.27,2.14-3.39c-0.72-1.08-1.43-2.18-2.15-3.27
+ c-1.43,0.03-2.86,0.06-4.29,0.09c-0.71,1.13-1.43,2.27-2.14,3.41c0.72,1.11,1.43,2.21,2.15,3.3
+ C348.51,17.82,349.94,17.78,351.37,17.73z"/>
+<linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="-365.4863" y1="-335.3774" x2="-361.501" y2="-328.4746" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_10_)" d="M351.37,7.88c0.72-1.12,1.43-2.23,2.15-3.35c-0.72-1.1-1.43-2.2-2.15-3.31
+ c-1.43,0-2.86,0.01-4.3,0.01c-0.71,1.12-1.43,2.25-2.15,3.37c0.72,1.12,1.43,2.23,2.15,3.34C348.51,7.92,349.94,7.9,351.37,7.88z"/>
+<linearGradient id="SVGID_11_" gradientUnits="userSpaceOnUse" x1="-354.4824" y1="-269.5742" x2="-350.2368" y2="-262.2206" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_11_)" d="M340.23,73.74c0.71-1.22,1.42-2.45,2.13-3.66c-0.72-1.04-1.43-2.09-2.14-3.14
+ c-1.42,0.17-2.85,0.33-4.28,0.49c-0.71,1.22-1.42,2.45-2.13,3.68c0.71,1.06,1.43,2.12,2.14,3.17
+ C337.38,74.1,338.8,73.92,340.23,73.74z"/>
+<linearGradient id="SVGID_12_" gradientUnits="userSpaceOnUse" x1="-354.4536" y1="-279.6323" x2="-350.2397" y2="-272.3337" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_12_)" d="M340.22,63.69c0.71-1.21,1.42-2.42,2.13-3.62c-0.71-1.05-1.43-2.11-2.14-3.17
+ c-1.43,0.14-2.85,0.28-4.28,0.42c-0.71,1.21-1.43,2.42-2.14,3.64c0.71,1.07,1.43,2.14,2.14,3.21C337.37,64,338.8,63.85,340.22,63.69
+ z"/>
+<linearGradient id="SVGID_13_" gradientUnits="userSpaceOnUse" x1="-354.4287" y1="-289.6929" x2="-350.2451" y2="-282.4467" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_13_)" d="M340.21,53.64c0.71-1.2,1.43-2.39,2.14-3.59c-0.71-1.06-1.43-2.14-2.14-3.21
+ c-1.43,0.12-2.86,0.23-4.29,0.34c-0.71,1.2-1.42,2.4-2.14,3.6c0.71,1.08,1.43,2.17,2.15,3.24
+ C337.36,53.91,338.78,53.78,340.21,53.64z"/>
+<linearGradient id="SVGID_14_" gradientUnits="userSpaceOnUse" x1="-354.4023" y1="-299.7485" x2="-350.2505" y2="-292.5573" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_14_)" d="M340.2,43.59c0.71-1.19,1.43-2.37,2.14-3.55c-0.72-1.08-1.43-2.16-2.15-3.25
+ c-1.43,0.09-2.86,0.18-4.29,0.27c-0.71,1.19-1.43,2.37-2.14,3.57c0.71,1.1,1.43,2.19,2.15,3.28
+ C337.34,43.81,338.77,43.7,340.2,43.59z"/>
+<linearGradient id="SVGID_15_" gradientUnits="userSpaceOnUse" x1="-354.376" y1="-309.8076" x2="-350.2554" y2="-302.6705" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_15_)" d="M340.19,33.54c0.71-1.17,1.43-2.34,2.14-3.51c-0.72-1.09-1.43-2.19-2.15-3.29
+ c-1.43,0.07-2.86,0.13-4.29,0.2c-0.71,1.17-1.43,2.35-2.14,3.53c0.72,1.11,1.43,2.21,2.15,3.31
+ C337.33,33.71,338.76,33.63,340.19,33.54z"/>
+<linearGradient id="SVGID_16_" gradientUnits="userSpaceOnUse" x1="-354.3486" y1="-319.8672" x2="-350.2593" y2="-312.7842" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_16_)" d="M340.18,23.5c0.71-1.16,1.43-2.32,2.14-3.47c-0.71-1.1-1.43-2.21-2.15-3.32
+ c-1.43,0.04-2.86,0.08-4.29,0.12c-0.71,1.16-1.43,2.33-2.14,3.5c0.72,1.12,1.43,2.24,2.15,3.35
+ C337.32,23.61,338.75,23.55,340.18,23.5z"/>
+<linearGradient id="SVGID_17_" gradientUnits="userSpaceOnUse" x1="-354.3242" y1="-329.9253" x2="-350.2656" y2="-322.8956" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_17_)" d="M340.17,13.45c0.71-1.15,1.43-2.29,2.15-3.43c-0.72-1.12-1.44-2.24-2.15-3.36
+ c-1.43,0.02-2.86,0.03-4.29,0.05c-0.71,1.15-1.43,2.3-2.14,3.46c0.72,1.13,1.43,2.26,2.15,3.39
+ C337.31,13.51,338.74,13.48,340.17,13.45z"/>
+<linearGradient id="SVGID_18_" gradientUnits="userSpaceOnUse" x1="-353.3623" y1="-338.3662" x2="-350.2695" y2="-333.0094" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_18_)" d="M333.71,0c0.72,1.15,1.43,2.29,2.15,3.42c1.43-0.01,2.86-0.01,4.3-0.02
+ c0.71-1.14,1.43-2.27,2.15-3.4C339.44,0,336.58,0,333.71,0z"/>
+<linearGradient id="SVGID_19_" gradientUnits="userSpaceOnUse" x1="-343.7051" y1="-263.6235" x2="-340.2715" y2="-257.6764" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_19_)" d="M331.57,76.08c-0.71-1.06-1.43-2.13-2.14-3.2c-1.43,0.17-2.86,0.33-4.28,0.49
+ c-0.71,1.24-1.42,2.49-2.13,3.73C325.87,76.78,328.72,76.43,331.57,76.08z"/>
+<linearGradient id="SVGID_20_" gradientUnits="userSpaceOnUse" x1="-343.6792" y1="-273.8569" x2="-339.4126" y2="-266.4669" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_20_)" d="M329.42,69.57c0.71-1.23,1.42-2.46,2.13-3.69c-0.71-1.07-1.43-2.15-2.15-3.23
+ c-1.43,0.14-2.86,0.28-4.28,0.42c-0.71,1.23-1.43,2.46-2.14,3.7c0.72,1.09,1.43,2.18,2.15,3.27C326.57,69.89,328,69.73,329.42,69.57
+ z"/>
+<linearGradient id="SVGID_21_" gradientUnits="userSpaceOnUse" x1="-343.6494" y1="-284.0972" x2="-339.4106" y2="-276.7554" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_21_)" d="M329.41,59.34c0.71-1.22,1.42-2.44,2.14-3.65c-0.72-1.09-1.43-2.18-2.15-3.27
+ c-1.43,0.12-2.86,0.24-4.29,0.35c-0.71,1.22-1.42,2.44-2.14,3.67c0.72,1.1,1.43,2.21,2.15,3.3
+ C326.55,59.61,327.98,59.48,329.41,59.34z"/>
+<linearGradient id="SVGID_22_" gradientUnits="userSpaceOnUse" x1="-343.6177" y1="-294.3369" x2="-339.4092" y2="-287.0476" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_22_)" d="M329.39,49.11c0.71-1.21,1.42-2.42,2.14-3.62c-0.72-1.1-1.43-2.2-2.15-3.3
+ c-1.43,0.1-2.86,0.19-4.29,0.28c-0.71,1.21-1.42,2.42-2.14,3.63c0.72,1.11,1.43,2.23,2.15,3.33
+ C326.53,49.33,327.96,49.22,329.39,49.11z"/>
+<linearGradient id="SVGID_23_" gradientUnits="userSpaceOnUse" x1="-343.5854" y1="-304.5762" x2="-339.4058" y2="-297.3367" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_23_)" d="M329.38,38.88c0.71-1.2,1.43-2.39,2.14-3.58c-0.72-1.11-1.43-2.22-2.15-3.34
+ c-1.43,0.07-2.86,0.14-4.29,0.21c-0.71,1.2-1.42,2.4-2.14,3.6c0.72,1.13,1.43,2.25,2.15,3.37
+ C326.52,39.06,327.95,38.97,329.38,38.88z"/>
+<linearGradient id="SVGID_24_" gradientUnits="userSpaceOnUse" x1="-343.5562" y1="-314.8164" x2="-339.4053" y2="-307.6269" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_24_)" d="M329.36,28.65c0.71-1.19,1.43-2.37,2.14-3.55c-0.72-1.12-1.43-2.24-2.15-3.37
+ c-1.43,0.05-2.86,0.1-4.29,0.15c-0.71,1.19-1.43,2.38-2.14,3.57c0.72,1.14,1.43,2.27,2.15,3.4
+ C326.5,28.78,327.93,28.71,329.36,28.65z"/>
+<linearGradient id="SVGID_25_" gradientUnits="userSpaceOnUse" x1="-343.5239" y1="-325.0557" x2="-339.4028" y2="-317.9177" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_25_)" d="M329.34,18.42c0.71-1.17,1.43-2.34,2.14-3.51c-0.72-1.13-1.44-2.27-2.15-3.41
+ c-1.43,0.03-2.86,0.05-4.29,0.08c-0.71,1.17-1.43,2.35-2.14,3.53c0.72,1.15,1.44,2.29,2.15,3.44
+ C326.48,18.5,327.91,18.46,329.34,18.42z"/>
+<linearGradient id="SVGID_26_" gradientUnits="userSpaceOnUse" x1="-343.4932" y1="-335.2979" x2="-339.4009" y2="-328.2098" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_26_)" d="M329.33,8.19c0.71-1.16,1.43-2.32,2.14-3.48c-0.72-1.14-1.44-2.29-2.15-3.45
+ c-1.43,0-2.87,0.01-4.3,0.01c-0.71,1.16-1.43,2.33-2.14,3.5c0.72,1.16,1.44,2.32,2.15,3.47C326.46,8.22,327.89,8.21,329.33,8.19z"/>
+<linearGradient id="SVGID_27_" gradientUnits="userSpaceOnUse" x1="-332.5376" y1="-267.1743" x2="-328.2202" y2="-259.6964" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_27_)" d="M318.26,76.36c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.09-1.43-2.19-2.15-3.29
+ c-1.43,0.14-2.86,0.28-4.29,0.42c-0.71,1.25-1.42,2.5-2.14,3.76c0.72,1.11,1.44,2.22,2.15,3.32
+ C315.4,76.67,316.83,76.52,318.26,76.36z"/>
+<linearGradient id="SVGID_28_" gradientUnits="userSpaceOnUse" x1="-332.502" y1="-277.5903" x2="-328.2109" y2="-270.1581" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_28_)" d="M318.24,65.96c0.71-1.24,1.42-2.48,2.14-3.71c-0.71-1.1-1.43-2.21-2.15-3.32
+ c-1.43,0.12-2.86,0.24-4.29,0.36c-0.71,1.24-1.42,2.48-2.14,3.73c0.72,1.12,1.44,2.24,2.15,3.36
+ C315.38,66.23,316.81,66.09,318.24,65.96z"/>
+<linearGradient id="SVGID_29_" gradientUnits="userSpaceOnUse" x1="-332.4697" y1="-288.0034" x2="-328.2061" y2="-280.6185" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_29_)" d="M318.22,55.55c0.71-1.23,1.42-2.46,2.14-3.68c-0.72-1.12-1.44-2.23-2.15-3.36
+ c-1.43,0.1-2.86,0.2-4.29,0.3c-0.71,1.23-1.43,2.46-2.14,3.7c0.72,1.13,1.44,2.26,2.15,3.39C315.36,55.78,316.79,55.66,318.22,55.55
+ z"/>
+<linearGradient id="SVGID_30_" gradientUnits="userSpaceOnUse" x1="-332.4331" y1="-298.416" x2="-328.1973" y2="-291.0793" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_30_)" d="M318.2,45.14c0.71-1.22,1.42-2.44,2.14-3.65c-0.72-1.13-1.43-2.26-2.15-3.39
+ c-1.43,0.08-2.86,0.16-4.29,0.23c-0.71,1.22-1.42,2.44-2.14,3.67c0.72,1.14,1.44,2.28,2.15,3.42
+ C315.34,45.33,316.77,45.24,318.2,45.14z"/>
+<linearGradient id="SVGID_31_" gradientUnits="userSpaceOnUse" x1="-332.3999" y1="-308.8311" x2="-328.1904" y2="-301.54" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_31_)" d="M318.18,34.74c0.71-1.21,1.43-2.42,2.14-3.62c-0.72-1.14-1.44-2.28-2.15-3.42
+ c-1.43,0.06-2.86,0.11-4.29,0.17c-0.71,1.21-1.43,2.42-2.14,3.63c0.72,1.16,1.44,2.3,2.15,3.45
+ C315.31,34.88,316.75,34.81,318.18,34.74z"/>
+<linearGradient id="SVGID_32_" gradientUnits="userSpaceOnUse" x1="-332.3647" y1="-319.2437" x2="-328.1831" y2="-312.0008" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_32_)" d="M318.15,24.33c0.71-1.2,1.43-2.39,2.14-3.58c-0.72-1.15-1.44-2.3-2.15-3.45
+ c-1.43,0.04-2.86,0.07-4.29,0.11c-0.71,1.2-1.43,2.4-2.14,3.6c0.72,1.16,1.44,2.32,2.15,3.48
+ C315.29,24.43,316.72,24.38,318.15,24.33z"/>
+<linearGradient id="SVGID_33_" gradientUnits="userSpaceOnUse" x1="-332.3286" y1="-329.6587" x2="-328.1729" y2="-322.4607" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_33_)" d="M318.13,13.92c0.72-1.19,1.43-2.37,2.14-3.55c-0.72-1.16-1.44-2.32-2.15-3.49
+ c-1.43,0.01-2.86,0.03-4.3,0.04c-0.71,1.19-1.43,2.38-2.14,3.57c0.72,1.18,1.44,2.34,2.15,3.51
+ C315.27,13.98,316.7,13.95,318.13,13.92z"/>
+<linearGradient id="SVGID_34_" gradientUnits="userSpaceOnUse" x1="-331.3086" y1="-338.3657" x2="-328.166" y2="-332.9226" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_34_)" d="M311.66,0c0.72,1.18,1.44,2.37,2.16,3.54c1.43-0.01,2.87-0.01,4.3-0.02
+ c0.71-1.18,1.42-2.35,2.14-3.52C317.39,0,314.53,0,311.66,0z"/>
+<linearGradient id="SVGID_35_" gradientUnits="userSpaceOnUse" x1="-321.7275" y1="-261.2515" x2="-318.2925" y2="-255.3018" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_35_)" d="M309.59,78.59c-0.72-1.11-1.43-2.23-2.15-3.35c-1.43,0.14-2.86,0.28-4.29,0.42
+ c-0.71,1.26-1.43,2.54-2.14,3.81C303.87,79.19,306.73,78.89,309.59,78.59z"/>
+<linearGradient id="SVGID_36_" gradientUnits="userSpaceOnUse" x1="-321.7114" y1="-271.8086" x2="-317.377" y2="-264.3011" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_36_)" d="M307.43,71.83c0.71-1.26,1.42-2.51,2.14-3.77c-0.72-1.12-1.44-2.25-2.15-3.38
+ c-1.43,0.12-2.86,0.24-4.29,0.36c-0.71,1.26-1.43,2.51-2.14,3.77c0.72,1.14,1.44,2.28,2.15,3.41C304.57,72.1,306,71.96,307.43,71.83
+ z"/>
+<linearGradient id="SVGID_37_" gradientUnits="userSpaceOnUse" x1="-321.6733" y1="-282.3789" x2="-317.3638" y2="-274.9145" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_37_)" d="M307.41,61.27c0.71-1.25,1.42-2.49,2.13-3.74c-0.72-1.13-1.44-2.27-2.15-3.41
+ c-1.43,0.1-2.86,0.2-4.29,0.3c-0.71,1.25-1.42,2.5-2.14,3.75c0.72,1.15,1.44,2.29,2.15,3.44C304.54,61.49,305.97,61.38,307.41,61.27
+ z"/>
+<linearGradient id="SVGID_38_" gradientUnits="userSpaceOnUse" x1="-321.6357" y1="-292.9482" x2="-317.3516" y2="-285.5278" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_38_)" d="M307.38,50.7c0.71-1.24,1.42-2.47,2.14-3.71c-0.72-1.14-1.44-2.29-2.15-3.44
+ c-1.43,0.08-2.86,0.16-4.29,0.24c-0.71,1.24-1.43,2.48-2.14,3.72c0.72,1.16,1.44,2.31,2.15,3.46
+ C304.52,50.89,305.95,50.8,307.38,50.7z"/>
+<linearGradient id="SVGID_39_" gradientUnits="userSpaceOnUse" x1="-321.6011" y1="-303.5161" x2="-317.3418" y2="-296.1388" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_39_)" d="M307.35,40.14c0.71-1.23,1.43-2.45,2.14-3.68c-0.72-1.15-1.44-2.31-2.16-3.47
+ c-1.43,0.06-2.86,0.12-4.29,0.18c-0.71,1.23-1.43,2.46-2.14,3.69c0.72,1.17,1.44,2.33,2.15,3.49
+ C304.49,40.29,305.92,40.22,307.35,40.14z"/>
+<linearGradient id="SVGID_40_" gradientUnits="userSpaceOnUse" x1="-321.5649" y1="-314.0874" x2="-317.3306" y2="-306.7532" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_40_)" d="M307.33,29.58c0.71-1.22,1.43-2.44,2.14-3.65c-0.72-1.16-1.44-2.33-2.15-3.5
+ c-1.43,0.04-2.86,0.08-4.3,0.12c-0.71,1.22-1.42,2.44-2.14,3.66c0.72,1.18,1.44,2.35,2.15,3.52
+ C304.47,29.69,305.9,29.63,307.33,29.58z"/>
+<linearGradient id="SVGID_41_" gradientUnits="userSpaceOnUse" x1="-321.5269" y1="-324.6572" x2="-317.3169" y2="-317.3654" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_41_)" d="M307.3,19.02c0.71-1.21,1.43-2.41,2.14-3.62c-0.72-1.17-1.44-2.35-2.16-3.53
+ c-1.43,0.02-2.86,0.04-4.3,0.07c-0.71,1.21-1.43,2.42-2.14,3.63c0.72,1.19,1.44,2.37,2.16,3.55
+ C304.44,19.09,305.87,19.05,307.3,19.02z"/>
+<linearGradient id="SVGID_42_" gradientUnits="userSpaceOnUse" x1="-321.4897" y1="-335.2251" x2="-317.3062" y2="-327.9789" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_42_)" d="M307.28,8.45c0.71-1.2,1.43-2.39,2.14-3.59c-0.72-1.18-1.44-2.37-2.16-3.56
+ c-1.43,0-2.86,0.01-4.3,0.01c-0.71,1.2-1.43,2.4-2.14,3.61c0.72,1.2,1.44,2.39,2.16,3.58C304.42,8.48,305.85,8.47,307.28,8.45z"/>
+<linearGradient id="SVGID_43_" gradientUnits="userSpaceOnUse" x1="-310.5508" y1="-265.1279" x2="-306.1753" y2="-257.5493" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_43_)" d="M296.25,78.6c0.71-1.27,1.43-2.54,2.14-3.81c-0.72-1.14-1.44-2.29-2.15-3.43
+ c-1.43,0.12-2.86,0.24-4.29,0.35c-0.71,1.27-1.43,2.55-2.14,3.82c0.72,1.16,1.44,2.31,2.16,3.46
+ C293.39,78.86,294.82,78.73,296.25,78.6z"/>
+<linearGradient id="SVGID_44_" gradientUnits="userSpaceOnUse" x1="-310.5122" y1="-275.8442" x2="-306.1597" y2="-268.3054" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_44_)" d="M296.22,67.89c0.71-1.26,1.42-2.53,2.14-3.79c-0.72-1.15-1.44-2.3-2.16-3.46
+ c-1.43,0.1-2.86,0.2-4.29,0.3c-0.71,1.26-1.42,2.53-2.14,3.79c0.72,1.17,1.44,2.33,2.15,3.49C293.36,68.12,294.79,68,296.22,67.89z"
+ />
+<linearGradient id="SVGID_45_" gradientUnits="userSpaceOnUse" x1="-310.4736" y1="-286.5635" x2="-306.144" y2="-279.0644" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_45_)" d="M296.2,57.18c0.71-1.25,1.43-2.51,2.14-3.76c-0.72-1.16-1.44-2.32-2.16-3.49
+ c-1.43,0.09-2.86,0.17-4.29,0.25c-0.71,1.25-1.42,2.51-2.14,3.77c0.72,1.17,1.44,2.34,2.16,3.51
+ C293.33,57.37,294.76,57.27,296.2,57.18z"/>
+<linearGradient id="SVGID_46_" gradientUnits="userSpaceOnUse" x1="-310.4351" y1="-297.2803" x2="-306.1279" y2="-289.8201" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_46_)" d="M296.17,46.46c0.71-1.25,1.42-2.49,2.14-3.73c-0.72-1.17-1.44-2.34-2.16-3.51
+ c-1.43,0.07-2.86,0.13-4.3,0.19c-0.71,1.25-1.42,2.49-2.14,3.74c0.72,1.18,1.44,2.36,2.16,3.54
+ C293.31,46.62,294.74,46.54,296.17,46.46z"/>
+<linearGradient id="SVGID_47_" gradientUnits="userSpaceOnUse" x1="-310.3955" y1="-307.9976" x2="-306.1123" y2="-300.5788" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_47_)" d="M296.14,35.75c0.71-1.24,1.43-2.47,2.14-3.71c-0.72-1.18-1.44-2.36-2.16-3.54
+ c-1.43,0.05-2.86,0.09-4.3,0.14c-0.71,1.24-1.42,2.48-2.14,3.72c0.72,1.19,1.44,2.38,2.16,3.56
+ C293.28,35.88,294.71,35.81,296.14,35.75z"/>
+<linearGradient id="SVGID_48_" gradientUnits="userSpaceOnUse" x1="-310.3628" y1="-318.7153" x2="-306.1011" y2="-311.3338" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_48_)" d="M296.12,25.04c0.71-1.23,1.43-2.46,2.14-3.68c-0.72-1.19-1.44-2.38-2.16-3.57
+ c-1.43,0.03-2.86,0.06-4.3,0.09c-0.71,1.23-1.42,2.46-2.14,3.69c0.72,1.2,1.44,2.4,2.16,3.59
+ C293.25,25.13,294.68,25.09,296.12,25.04z"/>
+<linearGradient id="SVGID_49_" gradientUnits="userSpaceOnUse" x1="-310.3232" y1="-329.4331" x2="-306.085" y2="-322.0922" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_49_)" d="M296.09,14.33c0.71-1.22,1.42-2.44,2.14-3.65c-0.72-1.19-1.44-2.39-2.16-3.6
+ c-1.43,0.01-2.86,0.02-4.3,0.04c-0.71,1.22-1.42,2.44-2.14,3.67c0.72,1.21,1.44,2.41,2.16,3.62
+ C293.22,14.38,294.66,14.36,296.09,14.33z"/>
+<linearGradient id="SVGID_50_" gradientUnits="userSpaceOnUse" x1="-309.2559" y1="-338.3657" x2="-306.0708" y2="-332.849" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_50_)" d="M289.61,0c0.72,1.22,1.44,2.43,2.16,3.64c1.43-0.01,2.87-0.01,4.3-0.02
+ c0.71-1.21,1.42-2.42,2.14-3.62C295.34,0,292.47,0,289.61,0z"/>
+<linearGradient id="SVGID_51_" gradientUnits="userSpaceOnUse" x1="-299.7114" y1="-259.2568" x2="-296.2817" y2="-253.3164" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_51_)" d="M287.56,80.72c-0.72-1.16-1.44-2.32-2.16-3.48c-1.43,0.12-2.87,0.23-4.3,0.35
+ c-0.71,1.28-1.42,2.57-2.14,3.86C281.84,81.21,284.7,80.97,287.56,80.72z"/>
+<linearGradient id="SVGID_52_" gradientUnits="userSpaceOnUse" x1="-299.7036" y1="-270.0845" x2="-295.3149" y2="-262.4831" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_52_)" d="M285.4,73.73c0.71-1.28,1.42-2.55,2.14-3.83c-0.72-1.16-1.44-2.33-2.16-3.5
+ c-1.43,0.1-2.87,0.2-4.3,0.3c-0.71,1.28-1.42,2.55-2.14,3.83c0.72,1.18,1.44,2.36,2.16,3.53C282.53,73.95,283.96,73.84,285.4,73.73z
+ "/>
+<linearGradient id="SVGID_53_" gradientUnits="userSpaceOnUse" x1="-299.6655" y1="-280.9321" x2="-295.2988" y2="-273.3688" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_53_)" d="M285.37,62.89c0.71-1.27,1.42-2.54,2.14-3.8c-0.72-1.17-1.44-2.35-2.16-3.53
+ c-1.43,0.08-2.87,0.17-4.3,0.25c-0.71,1.27-1.42,2.54-2.14,3.81c0.72,1.19,1.44,2.37,2.16,3.55
+ C282.51,63.07,283.94,62.98,285.37,62.89z"/>
+<linearGradient id="SVGID_54_" gradientUnits="userSpaceOnUse" x1="-299.627" y1="-291.7808" x2="-295.2812" y2="-284.2538" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_54_)" d="M285.34,52.04c0.71-1.26,1.42-2.52,2.14-3.78c-0.72-1.18-1.44-2.37-2.16-3.55
+ c-1.43,0.07-2.87,0.13-4.3,0.2c-0.71,1.26-1.42,2.52-2.14,3.79c0.72,1.2,1.44,2.39,2.16,3.58C282.48,52.2,283.91,52.12,285.34,52.04
+ z"/>
+<linearGradient id="SVGID_55_" gradientUnits="userSpaceOnUse" x1="-299.5894" y1="-302.6265" x2="-295.2642" y2="-295.135" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_55_)" d="M285.31,41.2c0.71-1.25,1.42-2.5,2.14-3.75c-0.72-1.19-1.44-2.38-2.16-3.58
+ c-1.43,0.05-2.87,0.1-4.3,0.15c-0.71,1.25-1.42,2.51-2.14,3.76c0.72,1.2,1.44,2.41,2.16,3.6C282.45,41.33,283.88,41.27,285.31,41.2z
+ "/>
+<linearGradient id="SVGID_56_" gradientUnits="userSpaceOnUse" x1="-299.5508" y1="-313.4751" x2="-295.2466" y2="-306.02" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_56_)" d="M285.29,30.36c0.71-1.24,1.42-2.49,2.14-3.73c-0.72-1.2-1.44-2.4-2.16-3.61
+ c-1.43,0.03-2.87,0.07-4.3,0.1c-0.71,1.25-1.42,2.49-2.14,3.74c0.72,1.21,1.44,2.42,2.16,3.63
+ C282.42,30.45,283.85,30.41,285.29,30.36z"/>
+<linearGradient id="SVGID_57_" gradientUnits="userSpaceOnUse" x1="-299.5132" y1="-324.3232" x2="-295.23" y2="-316.9045" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_57_)" d="M285.26,19.52c0.71-1.24,1.43-2.47,2.14-3.7c-0.72-1.21-1.44-2.42-2.16-3.63
+ c-1.43,0.02-2.87,0.04-4.3,0.05c-0.71,1.24-1.42,2.48-2.14,3.72c0.72,1.22,1.44,2.44,2.16,3.65
+ C282.39,19.58,283.83,19.55,285.26,19.52z"/>
+<linearGradient id="SVGID_58_" gradientUnits="userSpaceOnUse" x1="-299.4771" y1="-335.1685" x2="-295.2153" y2="-327.787" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_58_)" d="M285.23,8.68c0.71-1.23,1.43-2.45,2.14-3.68c-0.72-1.21-1.44-2.43-2.16-3.66
+ c-1.43,0-2.87,0-4.3,0.01c-0.71,1.23-1.42,2.46-2.14,3.69c0.72,1.23,1.44,2.45,2.16,3.67C282.36,8.7,283.8,8.69,285.23,8.68z"/>
+<linearGradient id="SVGID_59_" gradientUnits="userSpaceOnUse" x1="-288.5273" y1="-263.4331" x2="-284.1084" y2="-255.7793" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_59_)" d="M274.2,80.45c0.71-1.29,1.43-2.58,2.14-3.87c-0.72-1.18-1.44-2.37-2.16-3.55
+ c-1.43,0.1-2.87,0.19-4.3,0.29c-0.71,1.29-1.43,2.58-2.14,3.87c0.72,1.2,1.44,2.39,2.16,3.58C271.34,80.67,272.77,80.56,274.2,80.45
+ z"/>
+<linearGradient id="SVGID_60_" gradientUnits="userSpaceOnUse" x1="-288.4883" y1="-274.4014" x2="-284.0889" y2="-266.7814" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_60_)" d="M274.17,69.49c0.71-1.28,1.43-2.56,2.14-3.84c-0.72-1.19-1.44-2.38-2.16-3.57
+ c-1.43,0.08-2.87,0.17-4.3,0.25c-0.71,1.28-1.43,2.56-2.14,3.85c0.72,1.2,1.44,2.4,2.16,3.6C271.31,69.67,272.74,69.58,274.17,69.49
+ z"/>
+<linearGradient id="SVGID_61_" gradientUnits="userSpaceOnUse" x1="-288.4507" y1="-285.3701" x2="-284.0698" y2="-277.7823" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_61_)" d="M274.15,58.52c0.71-1.28,1.43-2.55,2.14-3.82c-0.72-1.2-1.44-2.39-2.16-3.6
+ c-1.43,0.07-2.86,0.14-4.3,0.2c-0.71,1.27-1.43,2.55-2.14,3.83c0.72,1.21,1.44,2.42,2.16,3.62
+ C271.28,58.68,272.71,58.6,274.15,58.52z"/>
+<linearGradient id="SVGID_62_" gradientUnits="userSpaceOnUse" x1="-288.4146" y1="-296.3384" x2="-284.0527" y2="-288.7835" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_62_)" d="M274.12,47.56c0.71-1.27,1.43-2.53,2.14-3.8c-0.72-1.21-1.44-2.41-2.16-3.62
+ c-1.43,0.05-2.86,0.11-4.3,0.16c-0.71,1.27-1.43,2.53-2.14,3.8c0.72,1.22,1.44,2.43,2.16,3.64
+ C271.25,47.69,272.69,47.63,274.12,47.56z"/>
+<linearGradient id="SVGID_63_" gradientUnits="userSpaceOnUse" x1="-288.3774" y1="-307.3091" x2="-284.0327" y2="-299.7838" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_63_)" d="M274.09,36.6c0.71-1.26,1.43-2.52,2.14-3.78c-0.72-1.21-1.44-2.42-2.16-3.64
+ c-1.43,0.04-2.87,0.08-4.3,0.12c-0.71,1.26-1.43,2.52-2.14,3.78c0.72,1.22,1.44,2.44,2.16,3.66
+ C271.23,36.7,272.66,36.65,274.09,36.6z"/>
+<linearGradient id="SVGID_64_" gradientUnits="userSpaceOnUse" x1="-288.3389" y1="-318.2759" x2="-284.0146" y2="-310.7861" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_64_)" d="M274.06,25.63c0.71-1.25,1.43-2.5,2.14-3.75c-0.72-1.22-1.44-2.44-2.16-3.66
+ c-1.43,0.02-2.87,0.05-4.3,0.07c-0.71,1.25-1.42,2.51-2.14,3.76c0.72,1.23,1.44,2.46,2.16,3.68
+ C271.2,25.7,272.63,25.67,274.06,25.63z"/>
+<linearGradient id="SVGID_65_" gradientUnits="userSpaceOnUse" x1="-288.3022" y1="-329.2456" x2="-283.9971" y2="-321.7888" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_65_)" d="M274.04,14.67c0.71-1.25,1.43-2.49,2.14-3.73c-0.72-1.23-1.44-2.46-2.16-3.69
+ c-1.43,0.01-2.86,0.02-4.3,0.03c-0.71,1.24-1.42,2.49-2.14,3.74c0.72,1.24,1.44,2.47,2.16,3.7
+ C271.17,14.71,272.61,14.69,274.04,14.67z"/>
+<linearGradient id="SVGID_66_" gradientUnits="userSpaceOnUse" x1="-287.2036" y1="-338.3652" x2="-283.9824" y2="-332.786" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_66_)" d="M267.55,0c0.72,1.24,1.44,2.48,2.16,3.72c1.43-0.01,2.86-0.01,4.3-0.01
+ c0.71-1.24,1.43-2.48,2.14-3.71C273.28,0,270.42,0,267.55,0z"/>
+<linearGradient id="SVGID_67_" gradientUnits="userSpaceOnUse" x1="-277.6582" y1="-257.6323" x2="-274.2441" y2="-251.719" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_67_)" d="M265.5,82.45c-0.72-1.2-1.44-2.4-2.16-3.6c-1.43,0.09-2.87,0.18-4.3,0.27
+ c-0.71,1.29-1.43,2.59-2.14,3.89C259.77,82.84,262.64,82.65,265.5,82.45z"/>
+<linearGradient id="SVGID_68_" gradientUnits="userSpaceOnUse" x1="-277.6636" y1="-268.6836" x2="-273.2383" y2="-261.0188" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_68_)" d="M263.34,75.27c0.71-1.29,1.43-2.58,2.14-3.87c-0.72-1.2-1.44-2.41-2.16-3.62
+ c-1.43,0.08-2.87,0.16-4.3,0.23c-0.71,1.29-1.43,2.58-2.14,3.87c0.72,1.22,1.44,2.43,2.16,3.64
+ C260.47,75.45,261.91,75.36,263.34,75.27z"/>
+<linearGradient id="SVGID_69_" gradientUnits="userSpaceOnUse" x1="-277.6289" y1="-279.7568" x2="-273.2192" y2="-272.1191" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_69_)" d="M263.31,64.2c0.71-1.29,1.43-2.57,2.14-3.85c-0.72-1.21-1.44-2.42-2.16-3.64
+ c-1.43,0.07-2.87,0.13-4.3,0.2c-0.71,1.28-1.43,2.57-2.14,3.86c0.72,1.22,1.44,2.44,2.16,3.66
+ C260.44,64.35,261.88,64.28,263.31,64.2z"/>
+<linearGradient id="SVGID_70_" gradientUnits="userSpaceOnUse" x1="-277.5923" y1="-290.8296" x2="-273.2012" y2="-283.224" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_70_)" d="M263.28,53.13c0.71-1.28,1.43-2.56,2.14-3.83c-0.72-1.22-1.44-2.43-2.16-3.66
+ c-1.43,0.05-2.87,0.11-4.3,0.16c-0.71,1.28-1.43,2.56-2.14,3.84c0.72,1.23,1.44,2.45,2.16,3.67
+ C260.42,53.26,261.85,53.2,263.28,53.13z"/>
+<linearGradient id="SVGID_71_" gradientUnits="userSpaceOnUse" x1="-277.5586" y1="-301.9033" x2="-273.1826" y2="-294.3239" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_71_)" d="M263.26,42.06c0.71-1.27,1.43-2.54,2.14-3.81c-0.72-1.22-1.44-2.45-2.16-3.68
+ c-1.43,0.04-2.87,0.08-4.3,0.12c-0.71,1.27-1.43,2.54-2.14,3.82c0.72,1.23,1.44,2.47,2.16,3.69
+ C260.39,42.16,261.82,42.11,263.26,42.06z"/>
+<linearGradient id="SVGID_72_" gradientUnits="userSpaceOnUse" x1="-277.5239" y1="-312.9766" x2="-273.1646" y2="-305.4259" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_72_)" d="M263.23,31c0.71-1.27,1.43-2.53,2.14-3.79c-0.72-1.23-1.44-2.46-2.16-3.69
+ c-1.43,0.03-2.87,0.05-4.3,0.08c-0.71,1.27-1.43,2.53-2.14,3.8c0.72,1.24,1.44,2.48,2.16,3.71C260.36,31.07,261.8,31.03,263.23,31z"
+ />
+<linearGradient id="SVGID_73_" gradientUnits="userSpaceOnUse" x1="-277.4893" y1="-324.0508" x2="-273.1465" y2="-316.5289" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_73_)" d="M263.2,19.93c0.71-1.26,1.43-2.52,2.14-3.77c-0.72-1.24-1.44-2.47-2.16-3.71
+ c-1.43,0.01-2.87,0.03-4.3,0.04c-0.71,1.26-1.43,2.52-2.14,3.78c0.72,1.25,1.44,2.49,2.16,3.73
+ C260.34,19.97,261.77,19.95,263.2,19.93z"/>
+<linearGradient id="SVGID_74_" gradientUnits="userSpaceOnUse" x1="-277.4536" y1="-335.1245" x2="-273.1274" y2="-327.6313" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_74_)" d="M263.18,8.86c0.71-1.25,1.43-2.5,2.14-3.75c-0.72-1.24-1.44-2.49-2.16-3.74c-1.43,0-2.87,0-4.3,0.01
+ c-0.71,1.25-1.43,2.51-2.14,3.76c0.72,1.25,1.44,2.5,2.16,3.75C260.31,8.88,261.74,8.87,263.18,8.86z"/>
+<linearGradient id="SVGID_75_" gradientUnits="userSpaceOnUse" x1="-266.4678" y1="-262.0903" x2="-262.0205" y2="-254.3874" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_75_)" d="M252.13,81.92c0.71-1.3,1.43-2.6,2.14-3.9c-0.72-1.22-1.44-2.44-2.16-3.66
+ c-1.44,0.08-2.87,0.15-4.3,0.22c-0.71,1.3-1.43,2.6-2.14,3.9c0.72,1.23,1.44,2.45,2.16,3.68C249.26,82.09,250.7,82.01,252.13,81.92z
+ "/>
+<linearGradient id="SVGID_76_" gradientUnits="userSpaceOnUse" x1="-266.4355" y1="-273.2568" x2="-262.0034" y2="-265.5802" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_76_)" d="M252.11,70.76c0.71-1.29,1.43-2.59,2.14-3.88c-0.72-1.22-1.44-2.44-2.16-3.67
+ c-1.43,0.06-2.87,0.12-4.3,0.19c-0.71,1.29-1.43,2.58-2.14,3.88c0.72,1.23,1.44,2.46,2.16,3.69
+ C249.24,70.9,250.67,70.83,252.11,70.76z"/>
+<linearGradient id="SVGID_77_" gradientUnits="userSpaceOnUse" x1="-266.4038" y1="-284.4263" x2="-261.9854" y2="-276.7733" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_77_)" d="M252.08,59.59c0.71-1.29,1.43-2.58,2.14-3.86c-0.72-1.23-1.44-2.46-2.16-3.69
+ c-1.43,0.05-2.87,0.1-4.3,0.15c-0.71,1.29-1.43,2.58-2.14,3.87c0.72,1.24,1.44,2.47,2.16,3.71
+ C249.21,59.71,250.65,59.66,252.08,59.59z"/>
+<linearGradient id="SVGID_78_" gradientUnits="userSpaceOnUse" x1="-266.3706" y1="-295.5933" x2="-261.9673" y2="-287.9665" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_78_)" d="M252.05,48.43c0.71-1.28,1.43-2.56,2.14-3.84c-0.72-1.23-1.44-2.47-2.16-3.71
+ c-1.43,0.04-2.87,0.08-4.3,0.12c-0.71,1.28-1.43,2.56-2.14,3.85c0.72,1.24,1.44,2.49,2.16,3.72
+ C249.19,48.53,250.62,48.48,252.05,48.43z"/>
+<linearGradient id="SVGID_79_" gradientUnits="userSpaceOnUse" x1="-266.3398" y1="-306.7612" x2="-261.9517" y2="-299.1607" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_79_)" d="M252.03,37.27c0.71-1.28,1.43-2.55,2.14-3.83c-0.72-1.24-1.44-2.48-2.16-3.73
+ c-1.43,0.03-2.87,0.06-4.3,0.09c-0.71,1.28-1.43,2.56-2.14,3.83c0.72,1.25,1.44,2.5,2.16,3.74
+ C249.17,37.34,250.6,37.31,252.03,37.27z"/>
+<linearGradient id="SVGID_80_" gradientUnits="userSpaceOnUse" x1="-266.3076" y1="-317.9287" x2="-261.9336" y2="-310.3527" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_80_)" d="M252,26.1c0.71-1.27,1.43-2.54,2.14-3.81c-0.72-1.25-1.44-2.49-2.16-3.74
+ c-1.43,0.02-2.87,0.04-4.3,0.06c-0.71,1.27-1.43,2.54-2.14,3.82c0.72,1.25,1.44,2.51,2.16,3.76C249.14,26.16,250.57,26.13,252,26.1z
+ "/>
+<linearGradient id="SVGID_81_" gradientUnits="userSpaceOnUse" x1="-266.2759" y1="-329.0972" x2="-261.9165" y2="-321.5465" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_81_)" d="M251.98,14.94c0.71-1.27,1.43-2.53,2.14-3.79c-0.72-1.25-1.44-2.5-2.16-3.76
+ c-1.43,0.01-2.86,0.02-4.3,0.02c-0.71,1.26-1.43,2.53-2.14,3.8c0.72,1.26,1.44,2.52,2.16,3.77
+ C249.11,14.97,250.55,14.96,251.98,14.94z"/>
+<linearGradient id="SVGID_82_" gradientUnits="userSpaceOnUse" x1="-265.1641" y1="-338.3574" x2="-261.9146" y2="-332.7291" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_82_)" d="M245.5,0c0.72,1.26,1.44,2.53,2.16,3.79c1.43,0,2.87-0.01,4.3-0.01c0.71-1.26,1.43-2.52,2.14-3.78
+ C251.23,0,248.37,0,245.5,0z"/>
+<linearGradient id="SVGID_83_" gradientUnits="userSpaceOnUse" x1="-255.5791" y1="-256.3857" x2="-252.186" y2="-250.5088" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_83_)" d="M243.42,83.79c-0.72-1.23-1.44-2.46-2.16-3.69c-1.43,0.07-2.87,0.14-4.31,0.2
+ c-0.71,1.3-1.43,2.61-2.14,3.91C237.68,84.08,240.55,83.94,243.42,83.79z"/>
+<linearGradient id="SVGID_84_" gradientUnits="userSpaceOnUse" x1="-255.5938" y1="-267.6055" x2="-251.1465" y2="-259.9026" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_84_)" d="M241.26,76.46c0.71-1.3,1.43-2.6,2.14-3.9c-0.72-1.23-1.44-2.47-2.16-3.71
+ c-1.43,0.06-2.87,0.12-4.3,0.17c-0.71,1.3-1.43,2.6-2.14,3.9c0.72,1.24,1.44,2.49,2.16,3.73C238.39,76.59,239.82,76.53,241.26,76.46
+ z"/>
+<linearGradient id="SVGID_85_" gradientUnits="userSpaceOnUse" x1="-255.5659" y1="-278.8545" x2="-251.1294" y2="-271.1702" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_85_)" d="M241.23,65.22c0.72-1.3,1.43-2.59,2.14-3.88c-0.72-1.24-1.44-2.48-2.16-3.72
+ c-1.43,0.05-2.87,0.1-4.3,0.14c-0.71,1.29-1.43,2.59-2.14,3.89c0.72,1.25,1.44,2.49,2.16,3.74
+ C238.36,65.33,239.8,65.27,241.23,65.22z"/>
+<linearGradient id="SVGID_86_" gradientUnits="userSpaceOnUse" x1="-255.5381" y1="-290.1001" x2="-251.1147" y2="-282.4387" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_86_)" d="M241.21,53.97c0.71-1.29,1.43-2.58,2.14-3.87c-0.72-1.24-1.44-2.49-2.16-3.74
+ c-1.43,0.04-2.87,0.08-4.3,0.12c-0.71,1.29-1.43,2.58-2.15,3.87c0.72,1.25,1.44,2.5,2.16,3.75
+ C238.34,54.06,239.78,54.02,241.21,53.97z"/>
+<linearGradient id="SVGID_87_" gradientUnits="userSpaceOnUse" x1="-255.5098" y1="-301.3467" x2="-251.0991" y2="-293.7072" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_87_)" d="M241.19,42.73c0.71-1.29,1.43-2.57,2.14-3.85c-0.72-1.25-1.44-2.5-2.16-3.75
+ c-1.43,0.03-2.87,0.06-4.3,0.09c-0.71,1.29-1.43,2.57-2.14,3.86c0.72,1.26,1.44,2.51,2.16,3.77
+ C238.32,42.8,239.75,42.77,241.19,42.73z"/>
+<linearGradient id="SVGID_88_" gradientUnits="userSpaceOnUse" x1="-255.4805" y1="-312.5938" x2="-251.0825" y2="-304.9763" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_88_)" d="M241.17,31.49c0.72-1.28,1.43-2.56,2.14-3.84c-0.72-1.25-1.44-2.51-2.16-3.77
+ c-1.43,0.02-2.87,0.04-4.3,0.06c-0.71,1.28-1.43,2.56-2.14,3.85c0.72,1.26,1.44,2.52,2.16,3.78
+ C238.3,31.54,239.73,31.51,241.17,31.49z"/>
+<linearGradient id="SVGID_89_" gradientUnits="userSpaceOnUse" x1="-255.4521" y1="-323.8418" x2="-251.0654" y2="-316.2438" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_89_)" d="M241.14,20.24c0.71-1.28,1.43-2.55,2.14-3.82c-0.72-1.26-1.43-2.52-2.16-3.78
+ c-1.43,0.01-2.87,0.02-4.3,0.03c-0.71,1.28-1.43,2.55-2.14,3.83c0.72,1.27,1.44,2.53,2.16,3.79
+ C238.28,20.28,239.71,20.26,241.14,20.24z"/>
+<linearGradient id="SVGID_90_" gradientUnits="userSpaceOnUse" x1="-255.4238" y1="-335.0898" x2="-251.0493" y2="-327.513" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_90_)" d="M241.12,9c0.71-1.27,1.43-2.54,2.14-3.81c-0.72-1.26-1.43-2.53-2.15-3.8c-1.43,0-2.87,0-4.3,0
+ c-0.71,1.27-1.43,2.55-2.14,3.82c0.72,1.27,1.44,2.54,2.15,3.8C238.25,9.01,239.69,9.01,241.12,9z"/>
+<linearGradient id="SVGID_91_" gradientUnits="userSpaceOnUse" x1="-244.3813" y1="-261.1006" x2="-239.9204" y2="-253.374" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_91_)" d="M230.04,83.01c0.72-1.3,1.43-2.61,2.15-3.91c-0.72-1.25-1.44-2.49-2.16-3.74
+ c-1.44,0.05-2.87,0.1-4.31,0.15c-0.71,1.3-1.43,2.61-2.15,3.91c0.72,1.26,1.44,2.51,2.16,3.76
+ C227.16,83.13,228.6,83.07,230.04,83.01z"/>
+<linearGradient id="SVGID_92_" gradientUnits="userSpaceOnUse" x1="-244.356" y1="-272.4121" x2="-239.9077" y2="-264.7075" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_92_)" d="M230.02,71.7c0.71-1.3,1.43-2.6,2.15-3.9c-0.72-1.25-1.44-2.5-2.16-3.75
+ c-1.43,0.04-2.87,0.09-4.3,0.13c-0.72,1.3-1.43,2.6-2.15,3.9c0.72,1.26,1.44,2.52,2.16,3.77C227.15,71.8,228.58,71.75,230.02,71.7z"
+ />
+<linearGradient id="SVGID_93_" gradientUnits="userSpaceOnUse" x1="-244.3325" y1="-283.729" x2="-239.8931" y2="-276.0396" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_93_)" d="M230,60.39c0.71-1.3,1.43-2.59,2.14-3.89c-0.72-1.25-1.44-2.51-2.16-3.77
+ c-1.43,0.04-2.87,0.07-4.3,0.11c-0.71,1.29-1.43,2.59-2.14,3.89c0.72,1.26,1.44,2.52,2.16,3.78C227.13,60.47,228.56,60.43,230,60.39
+ z"/>
+<linearGradient id="SVGID_94_" gradientUnits="userSpaceOnUse" x1="-244.3091" y1="-295.0435" x2="-239.8799" y2="-287.3719" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_94_)" d="M229.98,49.08c0.71-1.29,1.43-2.58,2.14-3.88c-0.72-1.26-1.44-2.52-2.16-3.78
+ c-1.44,0.03-2.87,0.06-4.3,0.08c-0.71,1.29-1.43,2.58-2.14,3.88c0.72,1.27,1.44,2.53,2.16,3.79
+ C227.11,49.14,228.54,49.11,229.98,49.08z"/>
+<linearGradient id="SVGID_95_" gradientUnits="userSpaceOnUse" x1="-244.2842" y1="-306.3579" x2="-239.8657" y2="-298.7049" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_95_)" d="M229.96,37.76c0.71-1.29,1.43-2.58,2.14-3.86c-0.72-1.26-1.44-2.53-2.16-3.79
+ c-1.43,0.02-2.87,0.04-4.3,0.06c-0.71,1.29-1.43,2.58-2.14,3.87c0.72,1.27,1.44,2.54,2.16,3.8
+ C227.09,37.81,228.52,37.79,229.96,37.76z"/>
+<linearGradient id="SVGID_96_" gradientUnits="userSpaceOnUse" x1="-244.2607" y1="-317.6738" x2="-239.8521" y2="-310.0378" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_96_)" d="M229.94,26.45c0.71-1.28,1.43-2.57,2.14-3.85c-0.72-1.27-1.44-2.53-2.16-3.8
+ c-1.43,0.01-2.87,0.03-4.3,0.04c-0.71,1.28-1.43,2.57-2.14,3.85c0.72,1.27,1.44,2.54,2.16,3.81
+ C227.07,26.49,228.5,26.47,229.94,26.45z"/>
+<linearGradient id="SVGID_97_" gradientUnits="userSpaceOnUse" x1="-244.2373" y1="-328.9888" x2="-239.8394" y2="-321.3713" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_97_)" d="M229.92,15.14c0.71-1.28,1.43-2.56,2.14-3.84c-0.72-1.27-1.44-2.54-2.16-3.82
+ c-1.43,0-2.86,0.01-4.3,0.01c-0.71,1.28-1.43,2.56-2.14,3.85c0.72,1.28,1.44,2.55,2.16,3.82C227.05,15.16,228.49,15.15,229.92,15.14
+ z"/>
+<linearGradient id="SVGID_98_" gradientUnits="userSpaceOnUse" x1="-243.1221" y1="-338.3506" x2="-239.853" y2="-332.6884" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_98_)" d="M223.45,0c0.72,1.28,1.43,2.56,2.15,3.83c1.43,0,2.86,0,4.3-0.01c0.71-1.28,1.43-2.55,2.14-3.83
+ C229.18,0,226.31,0,223.45,0z"/>
+<linearGradient id="SVGID_99_" gradientUnits="userSpaceOnUse" x1="-233.478" y1="-255.5127" x2="-230.1138" y2="-249.6856" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_99_)" d="M221.32,84.74c-0.72-1.26-1.44-2.51-2.16-3.77c-1.44,0.04-2.87,0.09-4.31,0.13
+ c-0.72,1.3-1.43,2.61-2.15,3.91C215.58,84.93,218.45,84.84,221.32,84.74z"/>
+<linearGradient id="SVGID_100_" gradientUnits="userSpaceOnUse" x1="-233.5024" y1="-266.855" x2="-229.0454" y2="-259.1352" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_100_)" d="M219.16,77.29c0.71-1.3,1.43-2.61,2.14-3.91c-0.72-1.26-1.44-2.52-2.16-3.78
+ c-1.44,0.04-2.87,0.08-4.31,0.11c-0.72,1.3-1.43,2.6-2.15,3.9c0.72,1.27,1.44,2.53,2.16,3.8C216.29,77.38,217.72,77.34,219.16,77.29
+ z"/>
+<linearGradient id="SVGID_101_" gradientUnits="userSpaceOnUse" x1="-233.4824" y1="-278.2231" x2="-229.0342" y2="-270.5186" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_101_)" d="M219.14,65.93c0.72-1.3,1.43-2.6,2.15-3.9c-0.72-1.26-1.44-2.53-2.16-3.79
+ c-1.44,0.03-2.87,0.06-4.31,0.09c-0.72,1.3-1.43,2.6-2.15,3.9c0.72,1.27,1.44,2.54,2.16,3.81C216.27,66,217.71,65.97,219.14,65.93z"
+ />
+<linearGradient id="SVGID_102_" gradientUnits="userSpaceOnUse" x1="-233.4624" y1="-289.5913" x2="-229.0225" y2="-281.9011" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_102_)" d="M219.12,54.56c0.71-1.29,1.43-2.59,2.15-3.89c-0.72-1.27-1.44-2.53-2.16-3.8
+ c-1.43,0.03-2.87,0.05-4.3,0.07c-0.71,1.29-1.43,2.59-2.15,3.89c0.72,1.27,1.44,2.54,2.16,3.81
+ C216.25,54.62,217.69,54.59,219.12,54.56z"/>
+<linearGradient id="SVGID_103_" gradientUnits="userSpaceOnUse" x1="-233.4443" y1="-300.959" x2="-229.0122" y2="-293.2823" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_103_)" d="M219.11,43.2c0.71-1.29,1.43-2.59,2.15-3.88c-0.72-1.27-1.44-2.54-2.16-3.81
+ c-1.43,0.02-2.87,0.04-4.3,0.06c-0.72,1.29-1.43,2.59-2.15,3.88c0.72,1.28,1.44,2.55,2.16,3.82
+ C216.24,43.24,217.67,43.22,219.11,43.2z"/>
+<linearGradient id="SVGID_104_" gradientUnits="userSpaceOnUse" x1="-233.4233" y1="-312.3262" x2="-229.0005" y2="-304.6656" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_104_)" d="M219.09,31.83c0.71-1.29,1.43-2.58,2.14-3.87c-0.72-1.27-1.44-2.54-2.16-3.82
+ c-1.43,0.01-2.87,0.02-4.3,0.04c-0.71,1.29-1.43,2.58-2.14,3.87c0.72,1.28,1.44,2.55,2.16,3.83
+ C216.23,31.86,217.66,31.85,219.09,31.83z"/>
+<linearGradient id="SVGID_105_" gradientUnits="userSpaceOnUse" x1="-233.4058" y1="-323.6953" x2="-228.9893" y2="-316.0457" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_105_)" d="M219.08,20.46c0.71-1.29,1.43-2.57,2.14-3.86c-0.72-1.28-1.43-2.55-2.15-3.83
+ c-1.43,0.01-2.87,0.01-4.3,0.02c-0.71,1.29-1.43,2.57-2.14,3.86c0.72,1.28,1.44,2.56,2.15,3.84
+ C216.21,20.49,217.64,20.47,219.08,20.46z"/>
+<linearGradient id="SVGID_106_" gradientUnits="userSpaceOnUse" x1="-233.3862" y1="-335.063" x2="-228.979" y2="-327.4294" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_106_)" d="M219.06,9.1c0.71-1.29,1.43-2.57,2.14-3.85c-0.72-1.28-1.44-2.56-2.15-3.84c-1.43,0-2.86,0-4.3,0
+ c-0.71,1.29-1.43,2.57-2.14,3.86c0.72,1.28,1.44,2.56,2.15,3.85C216.2,9.11,217.63,9.1,219.06,9.1z"/>
+<linearGradient id="SVGID_107_" gradientUnits="userSpaceOnUse" x1="-222.2739" y1="-260.4614" x2="-217.8154" y2="-252.7391" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_107_)" d="M207.93,83.72c0.72-1.3,1.43-2.61,2.15-3.91c-0.72-1.27-1.44-2.54-2.16-3.81
+ c-1.44,0.03-2.88,0.06-4.31,0.08c-0.71,1.3-1.43,2.6-2.15,3.9c0.72,1.28,1.44,2.55,2.16,3.82
+ C205.05,83.78,206.49,83.75,207.93,83.72z"/>
+<linearGradient id="SVGID_108_" gradientUnits="userSpaceOnUse" x1="-222.2593" y1="-271.8691" x2="-217.8081" y2="-264.1595" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_108_)" d="M207.92,72.31c0.72-1.3,1.43-2.6,2.15-3.9c-0.72-1.27-1.44-2.54-2.16-3.82
+ c-1.44,0.03-2.87,0.05-4.3,0.07c-0.72,1.3-1.43,2.6-2.15,3.9c0.72,1.28,1.44,2.55,2.16,3.83C205.04,72.37,206.48,72.34,207.92,72.31
+ z"/>
+<linearGradient id="SVGID_109_" gradientUnits="userSpaceOnUse" x1="-222.2451" y1="-283.2788" x2="-217.7993" y2="-275.5785" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_109_)" d="M207.9,60.9c0.72-1.3,1.43-2.6,2.15-3.9c-0.72-1.27-1.44-2.55-2.16-3.82
+ c-1.43,0.02-2.87,0.04-4.3,0.06c-0.72,1.3-1.43,2.59-2.15,3.89c0.72,1.28,1.44,2.56,2.16,3.84C205.03,60.95,206.47,60.92,207.9,60.9
+ z"/>
+<linearGradient id="SVGID_110_" gradientUnits="userSpaceOnUse" x1="-222.231" y1="-294.6875" x2="-217.792" y2="-286.999" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_110_)" d="M207.89,49.49c0.72-1.3,1.43-2.59,2.15-3.89c-0.72-1.27-1.44-2.55-2.16-3.83
+ c-1.43,0.02-2.87,0.03-4.3,0.04c-0.71,1.29-1.43,2.59-2.15,3.88c0.72,1.28,1.44,2.56,2.16,3.84
+ C205.02,49.53,206.46,49.51,207.89,49.49z"/>
+<linearGradient id="SVGID_111_" gradientUnits="userSpaceOnUse" x1="-222.2173" y1="-306.0991" x2="-217.7837" y2="-298.4199" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_111_)" d="M207.88,38.08c0.71-1.29,1.43-2.59,2.15-3.88c-0.72-1.28-1.44-2.56-2.15-3.84
+ c-1.43,0.01-2.87,0.02-4.3,0.03c-0.71,1.29-1.43,2.59-2.15,3.88c0.72,1.28,1.44,2.57,2.15,3.85
+ C205.01,38.11,206.45,38.1,207.88,38.08z"/>
+<linearGradient id="SVGID_112_" gradientUnits="userSpaceOnUse" x1="-222.2036" y1="-317.5083" x2="-217.7754" y2="-309.8384" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_112_)" d="M207.87,26.68c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.28-1.44-2.56-2.15-3.84
+ c-1.43,0.01-2.87,0.02-4.3,0.02c-0.72,1.29-1.43,2.58-2.15,3.87c0.72,1.29,1.44,2.57,2.15,3.85C205,26.7,206.43,26.69,207.87,26.68z
+ "/>
+<linearGradient id="SVGID_113_" gradientUnits="userSpaceOnUse" x1="-222.1899" y1="-328.9189" x2="-217.7681" y2="-321.26" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_113_)" d="M207.86,15.27c0.71-1.29,1.43-2.58,2.14-3.87c-0.72-1.28-1.44-2.57-2.15-3.85
+ c-1.43,0-2.87,0-4.3,0.01c-0.72,1.29-1.43,2.58-2.15,3.87c0.72,1.29,1.43,2.57,2.15,3.86C204.99,15.28,206.42,15.27,207.86,15.27z"
+ />
+<linearGradient id="SVGID_114_" gradientUnits="userSpaceOnUse" x1="-221.0752" y1="-338.3481" x2="-217.7915" y2="-332.6606" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_114_)" d="M201.39,0c0.72,1.29,1.43,2.58,2.15,3.86c1.43,0,2.86,0,4.3,0c0.71-1.29,1.43-2.58,2.14-3.86
+ C207.12,0,204.26,0,201.39,0z"/>
+<linearGradient id="SVGID_115_" gradientUnits="userSpaceOnUse" x1="-211.3623" y1="-255.0103" x2="-208.0376" y2="-249.2517" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_115_)" d="M199.21,85.31c-0.72-1.28-1.44-2.55-2.16-3.83c-1.44,0.02-2.87,0.04-4.31,0.05
+ c-0.72,1.3-1.43,2.6-2.15,3.89C193.46,85.39,196.33,85.36,199.21,85.31z"/>
+<linearGradient id="SVGID_116_" gradientUnits="userSpaceOnUse" x1="-211.3921" y1="-266.4248" x2="-206.9434" y2="-258.7194" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_116_)" d="M197.05,77.77c0.72-1.3,1.43-2.6,2.15-3.9c-0.72-1.28-1.44-2.56-2.16-3.84
+ c-1.44,0.02-2.87,0.03-4.31,0.04c-0.72,1.3-1.43,2.59-2.15,3.89c0.72,1.29,1.44,2.57,2.16,3.85
+ C194.18,77.81,195.61,77.79,197.05,77.77z"/>
+<linearGradient id="SVGID_117_" gradientUnits="userSpaceOnUse" x1="-211.3843" y1="-277.8638" x2="-206.939" y2="-270.1643" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_117_)" d="M197.04,66.34c0.72-1.3,1.43-2.6,2.15-3.89c-0.72-1.28-1.44-2.56-2.15-3.84
+ c-1.44,0.02-2.87,0.03-4.31,0.04c-0.72,1.3-1.43,2.59-2.15,3.89c0.72,1.29,1.44,2.57,2.16,3.85
+ C194.17,66.37,195.6,66.35,197.04,66.34z"/>
+<linearGradient id="SVGID_118_" gradientUnits="userSpaceOnUse" x1="-211.3745" y1="-289.2998" x2="-206.9336" y2="-281.6079" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_118_)" d="M197.03,54.9c0.71-1.29,1.43-2.59,2.15-3.89c-0.72-1.28-1.43-2.56-2.15-3.85
+ c-1.44,0.01-2.87,0.02-4.3,0.03c-0.72,1.29-1.43,2.59-2.15,3.88c0.72,1.29,1.44,2.57,2.15,3.86
+ C194.16,54.93,195.6,54.91,197.03,54.9z"/>
+<linearGradient id="SVGID_119_" gradientUnits="userSpaceOnUse" x1="-211.3662" y1="-300.7378" x2="-206.9287" y2="-293.0518" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_119_)" d="M197.03,43.46c0.72-1.29,1.43-2.59,2.15-3.88c-0.72-1.28-1.44-2.57-2.15-3.85
+ c-1.43,0.01-2.87,0.02-4.3,0.03c-0.71,1.29-1.43,2.59-2.15,3.88c0.72,1.29,1.43,2.57,2.15,3.86
+ C194.16,43.48,195.59,43.48,197.03,43.46z"/>
+<linearGradient id="SVGID_120_" gradientUnits="userSpaceOnUse" x1="-211.3569" y1="-312.1753" x2="-206.9238" y2="-304.4969" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_120_)" d="M197.02,32.03c0.71-1.29,1.43-2.59,2.15-3.88c-0.72-1.28-1.43-2.57-2.15-3.86
+ c-1.43,0.01-2.87,0.01-4.3,0.02c-0.71,1.29-1.43,2.59-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.86
+ C194.15,32.04,195.58,32.03,197.02,32.03z"/>
+<linearGradient id="SVGID_121_" gradientUnits="userSpaceOnUse" x1="-211.3491" y1="-323.6118" x2="-206.9189" y2="-315.9385" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_121_)" d="M197.01,20.59c0.71-1.29,1.43-2.58,2.14-3.88c-0.72-1.29-1.43-2.57-2.15-3.86
+ c-1.43,0-2.87,0.01-4.3,0.01c-0.72,1.29-1.43,2.58-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.87C194.14,20.6,195.58,20.6,197.01,20.59z"
+ />
+<linearGradient id="SVGID_122_" gradientUnits="userSpaceOnUse" x1="-211.3398" y1="-335.0503" x2="-206.9136" y2="-327.3838" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_122_)" d="M197,9.15c0.71-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.44-2.58-2.15-3.87c-1.43,0-2.87,0-4.3,0
+ c-0.71,1.29-1.43,2.58-2.15,3.87c0.72,1.29,1.43,2.58,2.15,3.87C194.13,9.16,195.57,9.16,197,9.15z"/>
+<linearGradient id="SVGID_123_" gradientUnits="userSpaceOnUse" x1="-200.1514" y1="-260.1733" x2="-195.7119" y2="-252.484" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_123_)" d="M185.81,84.04c0.72-1.3,1.43-2.59,2.15-3.89c-0.72-1.29-1.44-2.57-2.15-3.86
+ c-1.44,0.01-2.87,0.01-4.31,0.02c-0.72,1.29-1.44,2.59-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.87
+ C182.94,84.05,184.37,84.05,185.81,84.04z"/>
+<linearGradient id="SVGID_124_" gradientUnits="userSpaceOnUse" x1="-200.1489" y1="-271.625" x2="-195.7109" y2="-263.9382" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_124_)" d="M185.81,72.59c0.72-1.29,1.44-2.59,2.15-3.89c-0.72-1.29-1.44-2.57-2.15-3.86
+ c-1.43,0.01-2.87,0.01-4.31,0.02c-0.72,1.29-1.44,2.58-2.15,3.88c0.72,1.29,1.44,2.58,2.15,3.87
+ C182.93,72.6,184.37,72.6,185.81,72.59z"/>
+<linearGradient id="SVGID_125_" gradientUnits="userSpaceOnUse" x1="-200.146" y1="-283.0791" x2="-195.7095" y2="-275.3948" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_125_)" d="M185.8,61.13c0.72-1.29,1.43-2.59,2.15-3.88c-0.72-1.29-1.44-2.58-2.15-3.86
+ c-1.44,0-2.87,0.01-4.31,0.01c-0.72,1.29-1.43,2.59-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.87C182.93,61.15,184.37,61.14,185.8,61.13
+ z"/>
+<linearGradient id="SVGID_126_" gradientUnits="userSpaceOnUse" x1="-200.1416" y1="-294.5293" x2="-195.7075" y2="-286.8492" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_126_)" d="M185.8,49.68c0.72-1.29,1.43-2.59,2.15-3.88c-0.72-1.29-1.44-2.58-2.15-3.86
+ c-1.43,0-2.87,0.01-4.3,0.01c-0.72,1.29-1.43,2.58-2.15,3.87c0.72,1.29,1.43,2.58,2.15,3.87C182.93,49.69,184.37,49.69,185.8,49.68z
+ "/>
+<linearGradient id="SVGID_127_" gradientUnits="userSpaceOnUse" x1="-200.1396" y1="-305.9839" x2="-195.7061" y2="-298.3047" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_127_)" d="M185.8,38.23c0.72-1.29,1.43-2.59,2.15-3.88c-0.72-1.29-1.44-2.58-2.15-3.87
+ c-1.43,0-2.87,0.01-4.3,0.01c-0.72,1.29-1.43,2.58-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.87C182.93,38.24,184.36,38.24,185.8,38.23z
+ "/>
+<linearGradient id="SVGID_128_" gradientUnits="userSpaceOnUse" x1="-200.1367" y1="-317.4355" x2="-195.7051" y2="-309.7597" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_128_)" d="M185.79,26.78c0.71-1.29,1.43-2.59,2.15-3.88c-0.72-1.29-1.43-2.58-2.15-3.87c-1.43,0-2.87,0-4.3,0
+ c-0.72,1.29-1.43,2.58-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.87C182.93,26.78,184.36,26.78,185.79,26.78z"/>
+<linearGradient id="SVGID_129_" gradientUnits="userSpaceOnUse" x1="-200.1338" y1="-328.8887" x2="-195.7036" y2="-321.2154" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_129_)" d="M185.79,15.32c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.43-2.58-2.15-3.87c-1.43,0-2.87,0-4.3,0
+ c-0.72,1.29-1.43,2.58-2.15,3.88c0.72,1.29,1.43,2.58,2.15,3.87C182.92,15.33,184.36,15.33,185.79,15.32z"/>
+<linearGradient id="SVGID_130_" gradientUnits="userSpaceOnUse" x1="-199.0234" y1="-338.3462" x2="-195.7349" y2="-332.6502" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_130_)" d="M179.34,0c0.71,1.29,1.43,2.58,2.15,3.88c1.43,0,2.86,0,4.3,0c0.72-1.29,1.43-2.58,2.15-3.87
+ C185.07,0,182.21,0,179.34,0z"/>
+<linearGradient id="SVGID_131_" gradientUnits="userSpaceOnUse" x1="-189.2378" y1="-254.8848" x2="-185.9585" y2="-249.2048" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_131_)" d="M177.09,85.48c-0.72-1.29-1.44-2.59-2.15-3.88c-1.44,0-2.87-0.01-4.31-0.02
+ c-0.72,1.29-1.44,2.57-2.16,3.86C171.34,85.47,174.21,85.48,177.09,85.48z"/>
+<linearGradient id="SVGID_132_" gradientUnits="userSpaceOnUse" x1="-189.2686" y1="-266.3203" x2="-184.8442" y2="-258.6572" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_132_)" d="M174.93,77.9c0.72-1.29,1.44-2.58,2.16-3.87c-0.72-1.29-1.44-2.58-2.15-3.88
+ c-1.44,0-2.87-0.01-4.31-0.02c-0.72,1.29-1.44,2.58-2.15,3.86c0.71,1.3,1.43,2.59,2.15,3.89C172.06,77.89,173.5,77.9,174.93,77.9z"
+ />
+<linearGradient id="SVGID_133_" gradientUnits="userSpaceOnUse" x1="-189.272" y1="-277.7749" x2="-184.8457" y2="-270.1084" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_133_)" d="M174.93,66.44c0.72-1.29,1.44-2.58,2.15-3.87c-0.72-1.29-1.44-2.58-2.15-3.88
+ c-1.43,0-2.87-0.01-4.31-0.01c-0.72,1.29-1.44,2.58-2.15,3.86c0.72,1.29,1.43,2.59,2.15,3.88C172.06,66.44,173.5,66.44,174.93,66.44
+ z"/>
+<linearGradient id="SVGID_134_" gradientUnits="userSpaceOnUse" x1="-189.2744" y1="-289.2305" x2="-184.8472" y2="-281.5623" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_134_)" d="M174.93,54.99c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.44-2.59-2.15-3.88
+ c-1.43,0-2.87-0.01-4.3-0.01c-0.72,1.29-1.43,2.58-2.15,3.87c0.72,1.29,1.44,2.59,2.15,3.88C172.06,54.98,173.5,54.98,174.93,54.99z
+ "/>
+<linearGradient id="SVGID_135_" gradientUnits="userSpaceOnUse" x1="-189.2773" y1="-300.6846" x2="-184.8496" y2="-293.0155" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_135_)" d="M174.94,43.53c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.43-2.58-2.15-3.88
+ c-1.43,0-2.87,0-4.3-0.01c-0.72,1.29-1.43,2.58-2.15,3.87c0.71,1.29,1.43,2.59,2.15,3.88C172.07,43.53,173.5,43.53,174.94,43.53z"/>
+<linearGradient id="SVGID_136_" gradientUnits="userSpaceOnUse" x1="-189.2793" y1="-312.1377" x2="-184.8516" y2="-304.4686" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_136_)" d="M174.94,32.08c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.43-2.58-2.15-3.88
+ c-1.43,0-2.87,0-4.3-0.01c-0.71,1.29-1.43,2.58-2.15,3.87c0.71,1.29,1.43,2.59,2.15,3.88C172.07,32.08,173.5,32.08,174.94,32.08z"/>
+<linearGradient id="SVGID_137_" gradientUnits="userSpaceOnUse" x1="-189.2822" y1="-323.5933" x2="-184.853" y2="-315.9217" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_137_)" d="M174.94,20.62c0.72-1.29,1.43-2.58,2.15-3.88c-0.71-1.29-1.43-2.58-2.15-3.88c-1.43,0-2.87,0-4.3,0
+ c-0.72,1.29-1.43,2.58-2.15,3.87c0.72,1.29,1.43,2.59,2.15,3.88C172.07,20.62,173.5,20.62,174.94,20.62z"/>
+<linearGradient id="SVGID_138_" gradientUnits="userSpaceOnUse" x1="-189.2852" y1="-335.0493" x2="-184.855" y2="-327.376" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_138_)" d="M174.94,9.17c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.43-2.59-2.15-3.88c-1.43,0-2.87,0-4.3,0
+ c-0.72,1.29-1.43,2.58-2.15,3.87c0.71,1.29,1.43,2.58,2.15,3.87C172.07,9.17,173.51,9.17,174.94,9.17z"/>
+<linearGradient id="SVGID_139_" gradientUnits="userSpaceOnUse" x1="-178.0176" y1="-260.2373" x2="-173.6118" y2="-252.6063" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_139_)" d="M163.69,83.98c0.72-1.28,1.44-2.56,2.16-3.85c-0.72-1.3-1.43-2.6-2.15-3.89
+ c-1.44-0.02-2.87-0.03-4.31-0.05c-0.72,1.28-1.44,2.56-2.16,3.84c0.72,1.3,1.44,2.6,2.15,3.9
+ C160.82,83.94,162.25,83.96,163.69,83.98z"/>
+<linearGradient id="SVGID_140_" gradientUnits="userSpaceOnUse" x1="-178.0269" y1="-271.6807" x2="-173.6177" y2="-264.0437" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_140_)" d="M163.7,72.54c0.72-1.28,1.43-2.57,2.15-3.85c-0.72-1.3-1.43-2.59-2.15-3.89
+ c-1.44-0.01-2.87-0.03-4.31-0.04c-0.72,1.28-1.43,2.56-2.15,3.84c0.72,1.3,1.43,2.6,2.15,3.9C160.82,72.5,162.26,72.52,163.7,72.54z
+ "/>
+<linearGradient id="SVGID_141_" gradientUnits="userSpaceOnUse" x1="-178.0342" y1="-283.124" x2="-173.6226" y2="-275.4829" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_141_)" d="M163.7,61.09c0.72-1.28,1.44-2.57,2.15-3.86c-0.72-1.3-1.43-2.59-2.15-3.89
+ c-1.43-0.01-2.87-0.02-4.31-0.04c-0.72,1.28-1.43,2.57-2.15,3.85c0.72,1.3,1.43,2.59,2.15,3.89
+ C160.83,61.07,162.26,61.08,163.7,61.09z"/>
+<linearGradient id="SVGID_142_" gradientUnits="userSpaceOnUse" x1="-178.043" y1="-294.5679" x2="-173.6274" y2="-286.92" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_142_)" d="M163.71,49.65c0.72-1.28,1.44-2.57,2.15-3.86c-0.72-1.29-1.43-2.59-2.15-3.88
+ c-1.43-0.01-2.87-0.02-4.31-0.03c-0.72,1.29-1.43,2.57-2.15,3.85c0.72,1.3,1.43,2.59,2.15,3.89
+ C160.84,49.63,162.27,49.64,163.71,49.65z"/>
+<linearGradient id="SVGID_143_" gradientUnits="userSpaceOnUse" x1="-178.0522" y1="-306.0107" x2="-173.6338" y2="-298.3578" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_143_)" d="M163.71,38.2c0.72-1.29,1.44-2.58,2.15-3.86c-0.72-1.29-1.43-2.59-2.15-3.88
+ c-1.44-0.01-2.87-0.01-4.3-0.02c-0.72,1.29-1.43,2.57-2.15,3.86c0.72,1.29,1.43,2.59,2.15,3.88
+ C160.84,38.19,162.28,38.2,163.71,38.2z"/>
+<linearGradient id="SVGID_144_" gradientUnits="userSpaceOnUse" x1="-178.0601" y1="-317.4526" x2="-173.6396" y2="-309.7963" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_144_)" d="M163.72,26.76c0.72-1.29,1.43-2.58,2.15-3.86c-0.72-1.29-1.43-2.58-2.15-3.88
+ c-1.43,0-2.87-0.01-4.3-0.01c-0.72,1.29-1.43,2.57-2.15,3.86c0.72,1.29,1.43,2.58,2.15,3.88C160.85,26.75,162.28,26.75,163.72,26.76
+ z"/>
+<linearGradient id="SVGID_145_" gradientUnits="userSpaceOnUse" x1="-178.0693" y1="-328.8984" x2="-173.644" y2="-321.2336" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_145_)" d="M163.72,15.31c0.72-1.29,1.43-2.58,2.15-3.87c-0.72-1.29-1.43-2.58-2.15-3.88c-1.43,0-2.87,0-4.3,0
+ c-0.72,1.29-1.43,2.58-2.15,3.86c0.71,1.29,1.43,2.58,2.14,3.87C160.86,15.31,162.29,15.31,163.72,15.31z"/>
+<linearGradient id="SVGID_146_" gradientUnits="userSpaceOnUse" x1="-176.9688" y1="-338.3462" x2="-173.6821" y2="-332.6536" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_146_)" d="M157.29,0c0.71,1.29,1.43,2.58,2.14,3.87c1.43,0,2.87,0,4.3,0c0.72-1.29,1.43-2.58,2.15-3.87
+ C163.02,0,160.15,0,157.29,0z"/>
+<linearGradient id="SVGID_147_" gradientUnits="userSpaceOnUse" x1="-167.1094" y1="-255.1313" x2="-163.8838" y2="-249.5445" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_147_)" d="M154.97,85.27c-0.72-1.3-1.43-2.6-2.15-3.9c-1.44-0.03-2.87-0.06-4.31-0.09
+ c-0.72,1.27-1.44,2.54-2.16,3.81C149.22,85.15,152.09,85.21,154.97,85.27z"/>
+<linearGradient id="SVGID_148_" gradientUnits="userSpaceOnUse" x1="-167.1416" y1="-266.5391" x2="-162.7549" y2="-258.941" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_148_)" d="M152.82,77.67c0.72-1.27,1.44-2.55,2.16-3.83c-0.72-1.3-1.43-2.6-2.15-3.9
+ c-1.44-0.02-2.87-0.05-4.31-0.08c-0.72,1.27-1.44,2.54-2.16,3.81c0.72,1.3,1.43,2.6,2.15,3.9
+ C149.95,77.61,151.38,77.64,152.82,77.67z"/>
+<linearGradient id="SVGID_149_" gradientUnits="userSpaceOnUse" x1="-167.1562" y1="-277.959" x2="-162.7646" y2="-270.3525" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_149_)" d="M152.83,66.25c0.72-1.28,1.44-2.55,2.16-3.83c-0.72-1.3-1.43-2.6-2.15-3.89
+ c-1.43-0.02-2.87-0.04-4.3-0.06c-0.72,1.27-1.44,2.55-2.16,3.82c0.72,1.3,1.43,2.6,2.15,3.9C149.96,66.2,151.39,66.23,152.83,66.25z
+ "/>
+<linearGradient id="SVGID_150_" gradientUnits="userSpaceOnUse" x1="-167.168" y1="-289.3774" x2="-162.772" y2="-281.7634" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_150_)" d="M152.84,54.83c0.72-1.28,1.44-2.56,2.15-3.84c-0.71-1.29-1.43-2.59-2.15-3.89
+ c-1.43-0.02-2.87-0.04-4.3-0.05c-0.72,1.28-1.44,2.55-2.16,3.83c0.72,1.3,1.43,2.59,2.15,3.89
+ C149.97,54.79,151.4,54.81,152.84,54.83z"/>
+<linearGradient id="SVGID_151_" gradientUnits="userSpaceOnUse" x1="-167.1821" y1="-300.7969" x2="-162.7808" y2="-293.1735" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_151_)" d="M152.85,43.4c0.72-1.28,1.44-2.56,2.15-3.84c-0.71-1.3-1.43-2.59-2.15-3.88
+ c-1.43-0.01-2.87-0.03-4.3-0.04c-0.72,1.28-1.44,2.56-2.16,3.83c0.71,1.3,1.43,2.59,2.15,3.88
+ C149.98,43.37,151.41,43.39,152.85,43.4z"/>
+<linearGradient id="SVGID_152_" gradientUnits="userSpaceOnUse" x1="-167.1958" y1="-312.2178" x2="-162.7891" y2="-304.5851" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_152_)" d="M152.86,31.98c0.72-1.28,1.44-2.57,2.15-3.85c-0.71-1.29-1.43-2.59-2.15-3.88
+ c-1.43-0.01-2.87-0.02-4.3-0.03c-0.72,1.28-1.44,2.56-2.15,3.84c0.72,1.29,1.43,2.58,2.15,3.88
+ C149.99,31.96,151.42,31.97,152.86,31.98z"/>
+<linearGradient id="SVGID_153_" gradientUnits="userSpaceOnUse" x1="-167.21" y1="-323.6357" x2="-162.7969" y2="-315.9921" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_153_)" d="M152.87,20.56c0.72-1.29,1.43-2.57,2.15-3.86c-0.72-1.29-1.43-2.58-2.15-3.87
+ c-1.43,0-2.87-0.01-4.3-0.01c-0.72,1.28-1.44,2.57-2.15,3.85c0.71,1.29,1.43,2.58,2.14,3.87C150,20.55,151.44,20.56,152.87,20.56z"
+ />
+<linearGradient id="SVGID_154_" gradientUnits="userSpaceOnUse" x1="-167.2231" y1="-335.0566" x2="-162.8057" y2="-327.4053" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_154_)" d="M152.88,9.14c0.72-1.29,1.43-2.57,2.15-3.86c-0.71-1.29-1.43-2.58-2.14-3.87c-1.43,0-2.86,0-4.3,0
+ c-0.72,1.29-1.43,2.57-2.15,3.86c0.72,1.29,1.43,2.57,2.15,3.86C150.01,9.13,151.45,9.14,152.88,9.14z"/>
+<linearGradient id="SVGID_155_" gradientUnits="userSpaceOnUse" x1="-155.8848" y1="-260.6543" x2="-151.5269" y2="-253.1062" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_155_)" d="M141.58,83.54c0.72-1.26,1.44-2.53,2.16-3.79c-0.72-1.31-1.43-2.61-2.15-3.91
+ c-1.44-0.04-2.87-0.08-4.31-0.12c-0.72,1.26-1.44,2.52-2.16,3.78c0.72,1.3,1.43,2.61,2.15,3.91
+ C138.7,83.45,140.14,83.5,141.58,83.54z"/>
+<linearGradient id="SVGID_156_" gradientUnits="userSpaceOnUse" x1="-155.9028" y1="-272.0366" x2="-151.5381" y2="-264.4767" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_156_)" d="M141.59,72.15c0.72-1.27,1.44-2.53,2.16-3.8c-0.71-1.3-1.43-2.6-2.15-3.9
+ c-1.44-0.03-2.87-0.07-4.31-0.1c-0.72,1.26-1.44,2.52-2.16,3.78c0.71,1.3,1.43,2.6,2.15,3.9C138.72,72.08,140.15,72.12,141.59,72.15
+ z"/>
+<linearGradient id="SVGID_157_" gradientUnits="userSpaceOnUse" x1="-155.9214" y1="-283.4185" x2="-151.5493" y2="-275.8458" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_157_)" d="M141.6,60.77c0.72-1.27,1.44-2.54,2.16-3.81c-0.71-1.3-1.43-2.6-2.15-3.89
+ c-1.43-0.03-2.87-0.05-4.3-0.08c-0.72,1.27-1.44,2.53-2.16,3.8c0.71,1.3,1.43,2.6,2.15,3.89C138.73,60.71,140.17,60.74,141.6,60.77z
+ "/>
+<linearGradient id="SVGID_158_" gradientUnits="userSpaceOnUse" x1="-155.9399" y1="-294.7988" x2="-151.5601" y2="-287.2126" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_158_)" d="M141.62,49.39c0.72-1.27,1.44-2.54,2.16-3.82c-0.72-1.29-1.43-2.59-2.15-3.88
+ c-1.44-0.02-2.87-0.04-4.3-0.07c-0.72,1.27-1.44,2.54-2.16,3.81c0.71,1.29,1.43,2.59,2.14,3.88
+ C138.75,49.33,140.18,49.36,141.62,49.39z"/>
+<linearGradient id="SVGID_159_" gradientUnits="userSpaceOnUse" x1="-155.9604" y1="-306.1821" x2="-151.5728" y2="-298.5824" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_159_)" d="M141.63,38c0.72-1.27,1.44-2.55,2.16-3.83c-0.72-1.29-1.43-2.59-2.15-3.88
+ c-1.44-0.01-2.87-0.03-4.3-0.05c-0.72,1.27-1.44,2.54-2.16,3.82c0.71,1.29,1.43,2.58,2.15,3.87C138.76,37.96,140.2,37.98,141.63,38z
+ "/>
+<linearGradient id="SVGID_160_" gradientUnits="userSpaceOnUse" x1="-155.9785" y1="-317.5605" x2="-151.5845" y2="-309.9498" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_160_)" d="M141.65,26.62c0.72-1.28,1.44-2.55,2.16-3.83c-0.72-1.29-1.43-2.58-2.15-3.87
+ c-1.43-0.01-2.87-0.02-4.3-0.03c-0.72,1.28-1.44,2.55-2.15,3.82c0.71,1.29,1.43,2.57,2.14,3.86
+ C138.78,26.59,140.21,26.6,141.65,26.62z"/>
+<linearGradient id="SVGID_161_" gradientUnits="userSpaceOnUse" x1="-155.9971" y1="-328.9438" x2="-151.5952" y2="-321.3196" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_161_)" d="M141.66,15.24c0.72-1.28,1.44-2.56,2.16-3.84c-0.71-1.29-1.43-2.57-2.14-3.86
+ c-1.43,0-2.87-0.01-4.3-0.01c-0.72,1.28-1.44,2.56-2.15,3.83c0.71,1.28,1.43,2.57,2.14,3.85C138.79,15.22,140.23,15.23,141.66,15.24
+ z"/>
+<linearGradient id="SVGID_162_" gradientUnits="userSpaceOnUse" x1="-154.9106" y1="-338.3506" x2="-151.6333" y2="-332.6741" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_162_)" d="M135.24,0c0.71,1.28,1.43,2.56,2.14,3.84c1.43,0,2.87,0,4.3,0.01c0.72-1.28,1.44-2.57,2.15-3.85
+ C140.96,0,138.1,0,135.24,0z"/>
+<linearGradient id="SVGID_163_" gradientUnits="userSpaceOnUse" x1="-144.9844" y1="-255.7524" x2="-141.8208" y2="-250.273" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_163_)" d="M132.85,84.67c-0.72-1.31-1.43-2.61-2.15-3.91c-1.44-0.05-2.87-0.11-4.31-0.16
+ c-0.72,1.25-1.44,2.49-2.16,3.74C127.11,84.45,129.98,84.56,132.85,84.67z"/>
+<linearGradient id="SVGID_164_" gradientUnits="userSpaceOnUse" x1="-145.0103" y1="-267.0806" x2="-140.6787" y2="-259.5781" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_164_)" d="M130.71,77.08c0.72-1.25,1.44-2.51,2.16-3.76c-0.72-1.3-1.43-2.6-2.15-3.9
+ c-1.44-0.05-2.87-0.09-4.31-0.14c-0.72,1.25-1.44,2.5-2.16,3.75c0.71,1.3,1.43,2.6,2.14,3.91
+ C127.84,76.98,129.28,77.03,130.71,77.08z"/>
+<linearGradient id="SVGID_165_" gradientUnits="userSpaceOnUse" x1="-145.0361" y1="-278.4165" x2="-140.6929" y2="-270.8938" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_165_)" d="M130.73,65.75c0.72-1.26,1.44-2.51,2.16-3.78c-0.72-1.3-1.43-2.59-2.15-3.89
+ c-1.44-0.04-2.87-0.07-4.31-0.12c-0.72,1.25-1.44,2.51-2.16,3.76c0.71,1.29,1.43,2.59,2.15,3.89
+ C127.86,65.66,129.29,65.71,130.73,65.75z"/>
+<linearGradient id="SVGID_166_" gradientUnits="userSpaceOnUse" x1="-145.0601" y1="-289.7476" x2="-140.7085" y2="-282.2104" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_166_)" d="M130.75,54.41c0.72-1.26,1.44-2.52,2.16-3.79c-0.71-1.3-1.43-2.59-2.14-3.88
+ c-1.44-0.03-2.87-0.06-4.3-0.09c-0.72,1.26-1.44,2.52-2.16,3.77c0.71,1.29,1.43,2.58,2.14,3.88
+ C127.88,54.34,129.31,54.38,130.75,54.41z"/>
+<linearGradient id="SVGID_167_" gradientUnits="userSpaceOnUse" x1="-145.0835" y1="-301.0791" x2="-140.7217" y2="-293.5242" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_167_)" d="M130.77,43.08c0.72-1.26,1.44-2.53,2.16-3.8c-0.71-1.29-1.43-2.58-2.14-3.87
+ c-1.43-0.02-2.87-0.05-4.3-0.07c-0.72,1.26-1.44,2.52-2.16,3.79c0.71,1.29,1.43,2.58,2.14,3.87
+ C127.9,43.02,129.33,43.05,130.77,43.08z"/>
+<linearGradient id="SVGID_168_" gradientUnits="userSpaceOnUse" x1="-145.1064" y1="-312.4102" x2="-140.7358" y2="-304.8401" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_168_)" d="M130.79,31.74c0.72-1.27,1.44-2.54,2.16-3.81c-0.72-1.29-1.43-2.58-2.14-3.86
+ c-1.43-0.02-2.87-0.03-4.3-0.05c-0.72,1.27-1.44,2.53-2.16,3.8c0.71,1.28,1.43,2.57,2.14,3.86
+ C127.92,31.7,129.35,31.72,130.79,31.74z"/>
+<linearGradient id="SVGID_169_" gradientUnits="userSpaceOnUse" x1="-145.1304" y1="-323.7427" x2="-140.75" y2="-316.1556" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_169_)" d="M130.8,20.41c0.72-1.27,1.44-2.54,2.15-3.82c-0.71-1.28-1.43-2.57-2.14-3.85
+ c-1.43-0.01-2.87-0.02-4.3-0.03c-0.72,1.27-1.44,2.54-2.16,3.81c0.72,1.28,1.43,2.56,2.14,3.84
+ C127.94,20.38,129.37,20.39,130.8,20.41z"/>
+<linearGradient id="SVGID_170_" gradientUnits="userSpaceOnUse" x1="-145.1538" y1="-335.0757" x2="-140.7642" y2="-327.4726" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_170_)" d="M130.82,9.07c0.72-1.27,1.44-2.55,2.15-3.83c-0.71-1.28-1.43-2.56-2.14-3.84c-1.43,0-2.86,0-4.3,0
+ c-0.72,1.28-1.44,2.55-2.16,3.82c0.71,1.27,1.43,2.55,2.14,3.83C127.95,9.06,129.39,9.07,130.82,9.07z"/>
+<linearGradient id="SVGID_171_" gradientUnits="userSpaceOnUse" x1="-133.7466" y1="-261.4253" x2="-129.4541" y2="-253.9905" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_171_)" d="M119.47,82.71c0.72-1.24,1.44-2.48,2.16-3.72c-0.71-1.3-1.43-2.6-2.14-3.91
+ c-1.43-0.06-2.87-0.12-4.3-0.19c-0.72,1.24-1.44,2.47-2.16,3.7c0.71,1.3,1.43,2.6,2.14,3.91C116.6,82.58,118.03,82.65,119.47,82.71z
+ "/>
+<linearGradient id="SVGID_172_" gradientUnits="userSpaceOnUse" x1="-133.7759" y1="-272.6929" x2="-129.4712" y2="-265.2369" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_172_)" d="M119.49,71.44c0.72-1.24,1.44-2.48,2.16-3.73c-0.72-1.3-1.43-2.59-2.15-3.89
+ c-1.43-0.05-2.87-0.1-4.3-0.16c-0.72,1.24-1.44,2.48-2.16,3.71c0.71,1.3,1.43,2.59,2.14,3.89
+ C116.62,71.33,118.06,71.38,119.49,71.44z"/>
+<linearGradient id="SVGID_173_" gradientUnits="userSpaceOnUse" x1="-133.8062" y1="-283.9609" x2="-129.4893" y2="-276.4839" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_173_)" d="M119.51,60.17c0.72-1.25,1.44-2.5,2.16-3.75c-0.71-1.3-1.43-2.59-2.14-3.88
+ c-1.43-0.04-2.87-0.08-4.3-0.13c-0.72,1.25-1.44,2.49-2.16,3.73c0.71,1.29,1.43,2.58,2.14,3.88
+ C116.64,60.07,118.08,60.12,119.51,60.17z"/>
+<linearGradient id="SVGID_174_" gradientUnits="userSpaceOnUse" x1="-133.8359" y1="-295.2256" x2="-129.5078" y2="-287.7291" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_174_)" d="M119.53,48.9c0.72-1.25,1.44-2.5,2.16-3.76c-0.71-1.29-1.43-2.58-2.14-3.87
+ c-1.43-0.03-2.87-0.07-4.3-0.1c-0.72,1.25-1.44,2.5-2.16,3.74c0.71,1.29,1.43,2.57,2.14,3.86C116.66,48.82,118.1,48.86,119.53,48.9z
+ "/>
+<linearGradient id="SVGID_175_" gradientUnits="userSpaceOnUse" x1="-133.8643" y1="-306.4946" x2="-129.5234" y2="-298.9761" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_175_)" d="M119.56,37.63c0.72-1.25,1.44-2.51,2.15-3.77c-0.71-1.29-1.43-2.57-2.14-3.85
+ c-1.43-0.02-2.87-0.05-4.3-0.07c-0.72,1.26-1.44,2.51-2.16,3.76c0.71,1.28,1.43,2.56,2.14,3.85
+ C116.69,37.56,118.12,37.6,119.56,37.63z"/>
+<linearGradient id="SVGID_176_" gradientUnits="userSpaceOnUse" x1="-133.8916" y1="-317.7617" x2="-129.5396" y2="-310.2238" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_176_)" d="M119.58,26.35c0.72-1.26,1.44-2.52,2.16-3.79c-0.71-1.28-1.43-2.56-2.14-3.84
+ c-1.43-0.02-2.87-0.03-4.3-0.05c-0.72,1.26-1.44,2.52-2.16,3.78c0.71,1.28,1.43,2.55,2.14,3.83
+ C116.71,26.31,118.14,26.33,119.58,26.35z"/>
+<linearGradient id="SVGID_177_" gradientUnits="userSpaceOnUse" x1="-133.9194" y1="-329.0303" x2="-129.5552" y2="-321.4712" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_177_)" d="M119.6,15.08c0.72-1.27,1.44-2.53,2.16-3.8c-0.71-1.28-1.43-2.55-2.14-3.83
+ c-1.43,0-2.87-0.01-4.3-0.02c-0.72,1.27-1.44,2.53-2.15,3.79c0.71,1.27,1.43,2.54,2.14,3.82C116.73,15.06,118.16,15.07,119.6,15.08z
+ "/>
+<linearGradient id="SVGID_178_" gradientUnits="userSpaceOnUse" x1="-132.8477" y1="-338.3555" x2="-129.5874" y2="-332.7086" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_178_)" d="M113.18,0c0.71,1.27,1.42,2.53,2.14,3.8c1.43,0,2.87,0,4.3,0.01c0.72-1.27,1.44-2.54,2.16-3.81
+ C118.91,0,116.05,0,113.18,0z"/>
+<linearGradient id="SVGID_179_" gradientUnits="userSpaceOnUse" x1="-122.8516" y1="-256.7583" x2="-119.7583" y2="-251.4006" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_179_)" d="M110.75,83.67c-0.72-1.3-1.43-2.61-2.14-3.9c-1.43-0.08-2.87-0.15-4.3-0.24
+ c-0.72,1.22-1.44,2.44-2.16,3.65C105.01,83.35,107.88,83.52,110.75,83.67z"/>
+<linearGradient id="SVGID_180_" gradientUnits="userSpaceOnUse" x1="-122.8828" y1="-267.9502" x2="-118.6206" y2="-260.5678" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_180_)" d="M108.62,76.14c0.72-1.23,1.44-2.46,2.16-3.69c-0.71-1.3-1.43-2.59-2.14-3.89
+ c-1.44-0.07-2.87-0.13-4.3-0.2c-0.72,1.22-1.44,2.45-2.16,3.67c0.72,1.29,1.43,2.59,2.14,3.89C105.75,76,107.18,76.07,108.62,76.14z
+ "/>
+<linearGradient id="SVGID_181_" gradientUnits="userSpaceOnUse" x1="-122.916" y1="-279.1445" x2="-118.6392" y2="-271.7368" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_181_)" d="M108.64,64.95c0.72-1.23,1.44-2.47,2.16-3.7c-0.71-1.29-1.43-2.59-2.14-3.88
+ c-1.43-0.05-2.87-0.11-4.3-0.17c-0.72,1.23-1.44,2.46-2.16,3.68c0.71,1.29,1.43,2.58,2.14,3.87
+ C105.77,64.82,107.21,64.89,108.64,64.95z"/>
+<linearGradient id="SVGID_182_" gradientUnits="userSpaceOnUse" x1="-122.9473" y1="-290.3364" x2="-118.6567" y2="-282.905" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_182_)" d="M108.67,53.75c0.72-1.24,1.44-2.48,2.16-3.72c-0.71-1.29-1.43-2.57-2.14-3.86
+ c-1.43-0.04-2.87-0.09-4.3-0.13c-0.72,1.24-1.44,2.47-2.16,3.7c0.71,1.28,1.43,2.57,2.14,3.85C105.8,53.65,107.23,53.7,108.67,53.75
+ z"/>
+<linearGradient id="SVGID_183_" gradientUnits="userSpaceOnUse" x1="-122.98" y1="-301.5293" x2="-118.6748" y2="-294.0725" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_183_)" d="M108.69,42.55c0.72-1.24,1.44-2.49,2.16-3.73c-0.71-1.28-1.43-2.56-2.14-3.84
+ c-1.43-0.03-2.87-0.07-4.3-0.1c-0.72,1.24-1.44,2.48-2.16,3.72c0.71,1.28,1.43,2.55,2.14,3.84
+ C105.82,42.47,107.25,42.51,108.69,42.55z"/>
+<linearGradient id="SVGID_184_" gradientUnits="userSpaceOnUse" x1="-123.0132" y1="-312.7188" x2="-118.6953" y2="-305.24" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_184_)" d="M108.71,31.35c0.72-1.25,1.44-2.5,2.16-3.75c-0.71-1.28-1.43-2.55-2.14-3.82
+ c-1.43-0.02-2.87-0.05-4.3-0.07c-0.72,1.25-1.44,2.49-2.16,3.73c0.71,1.27,1.43,2.54,2.14,3.82
+ C105.85,31.29,107.28,31.33,108.71,31.35z"/>
+<linearGradient id="SVGID_185_" gradientUnits="userSpaceOnUse" x1="-123.0459" y1="-323.9121" x2="-118.7134" y2="-316.408" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_185_)" d="M108.74,20.16c0.72-1.25,1.44-2.51,2.16-3.76c-0.71-1.27-1.43-2.54-2.14-3.81
+ c-1.43-0.01-2.87-0.02-4.3-0.04c-0.72,1.26-1.44,2.5-2.16,3.75c0.71,1.26,1.43,2.53,2.14,3.8C105.87,20.12,107.3,20.14,108.74,20.16
+ z"/>
+<linearGradient id="SVGID_186_" gradientUnits="userSpaceOnUse" x1="-123.0781" y1="-335.1045" x2="-118.7324" y2="-327.5775" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_186_)" d="M108.76,8.96c0.72-1.26,1.44-2.52,2.16-3.78c-0.71-1.26-1.43-2.53-2.14-3.79c-1.43,0-2.87,0-4.3,0
+ c-0.72,1.26-1.44,2.51-2.16,3.77c0.71,1.26,1.43,2.52,2.14,3.78C105.9,8.94,107.33,8.95,108.76,8.96z"/>
+<linearGradient id="SVGID_187_" gradientUnits="userSpaceOnUse" x1="-111.6235" y1="-262.5454" x2="-107.4111" y2="-255.2493" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_187_)" d="M97.38,81.5c0.72-1.21,1.44-2.41,2.16-3.63c-0.71-1.3-1.43-2.59-2.14-3.88
+ c-1.44-0.08-2.87-0.17-4.3-0.25c-0.72,1.21-1.44,2.41-2.16,3.61c0.71,1.29,1.42,2.59,2.14,3.88C94.51,81.32,95.95,81.41,97.38,81.5z
+ "/>
+<linearGradient id="SVGID_188_" gradientUnits="userSpaceOnUse" x1="-111.6582" y1="-273.647" x2="-107.4292" y2="-266.3221" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_188_)" d="M97.41,70.4c0.72-1.21,1.44-2.43,2.16-3.65c-0.71-1.29-1.43-2.58-2.14-3.87
+ c-1.43-0.07-2.87-0.14-4.3-0.22c-0.72,1.21-1.44,2.42-2.16,3.62c0.71,1.29,1.43,2.57,2.14,3.86C94.54,70.24,95.97,70.32,97.41,70.4z
+ "/>
+<linearGradient id="SVGID_189_" gradientUnits="userSpaceOnUse" x1="-111.6929" y1="-284.749" x2="-107.4473" y2="-277.3954" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_189_)" d="M97.43,59.29c0.72-1.22,1.44-2.44,2.16-3.67c-0.71-1.28-1.43-2.57-2.14-3.85
+ c-1.43-0.06-2.87-0.12-4.3-0.18c-0.72,1.22-1.44,2.43-2.16,3.65c0.71,1.28,1.43,2.56,2.14,3.84C94.57,59.16,96,59.22,97.43,59.29z"
+ />
+<linearGradient id="SVGID_190_" gradientUnits="userSpaceOnUse" x1="-111.7285" y1="-295.8501" x2="-107.4668" y2="-288.4686" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_190_)" d="M97.46,48.18c0.72-1.22,1.44-2.45,2.16-3.68c-0.71-1.28-1.43-2.55-2.14-3.83
+ c-1.43-0.05-2.87-0.09-4.3-0.14c-0.72,1.22-1.44,2.45-2.16,3.67c0.71,1.27,1.43,2.55,2.14,3.82C94.59,48.07,96.03,48.13,97.46,48.18
+ z"/>
+<linearGradient id="SVGID_191_" gradientUnits="userSpaceOnUse" x1="-111.7642" y1="-306.9541" x2="-107.4854" y2="-299.543" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_191_)" d="M97.49,37.08c0.72-1.23,1.44-2.46,2.16-3.7c-0.71-1.27-1.42-2.54-2.14-3.81
+ c-1.43-0.03-2.87-0.06-4.3-0.1c-0.72,1.23-1.44,2.46-2.16,3.68c0.71,1.27,1.43,2.53,2.14,3.8C94.62,36.99,96.05,37.04,97.49,37.08z"
+ />
+<linearGradient id="SVGID_192_" gradientUnits="userSpaceOnUse" x1="-111.7983" y1="-318.0527" x2="-107.5044" y2="-310.6154" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_192_)" d="M97.51,25.97c0.72-1.24,1.44-2.48,2.16-3.72c-0.72-1.27-1.43-2.53-2.14-3.79
+ c-1.43-0.02-2.87-0.04-4.3-0.06c-0.72,1.24-1.44,2.47-2.16,3.7c0.71,1.26,1.43,2.52,2.14,3.78C94.65,25.91,96.08,25.94,97.51,25.97z
+ "/>
+<linearGradient id="SVGID_193_" gradientUnits="userSpaceOnUse" x1="-111.8354" y1="-329.1562" x2="-107.5239" y2="-321.6885" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_193_)" d="M97.54,14.86c0.72-1.25,1.44-2.49,2.16-3.74c-0.71-1.26-1.43-2.52-2.14-3.78
+ c-1.43-0.01-2.87-0.01-4.3-0.02c-0.72,1.24-1.44,2.49-2.16,3.72c0.71,1.25,1.42,2.51,2.14,3.76C94.67,14.83,96.11,14.85,97.54,14.86
+ z"/>
+<linearGradient id="SVGID_194_" gradientUnits="userSpaceOnUse" x1="-110.7812" y1="-338.3633" x2="-107.5464" y2="-332.7603" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_194_)" d="M91.13,0c0.71,1.25,1.43,2.5,2.14,3.74c1.43,0,2.87,0.01,4.3,0.01C98.28,2.51,99,1.25,99.72,0
+ C96.86,0,93.99,0,91.13,0z"/>
+<linearGradient id="SVGID_195_" gradientUnits="userSpaceOnUse" x1="-100.7314" y1="-258.1406" x2="-97.7163" y2="-252.9183" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_195_)" d="M88.67,82.29c-0.71-1.3-1.43-2.59-2.14-3.88c-1.43-0.1-2.87-0.2-4.3-0.31
+ c-0.72,1.18-1.44,2.37-2.16,3.54C82.94,81.87,85.8,82.08,88.67,82.29z"/>
+<linearGradient id="SVGID_196_" gradientUnits="userSpaceOnUse" x1="-100.7686" y1="-269.1406" x2="-96.5928" y2="-261.908" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_196_)" d="M86.54,74.85c0.72-1.19,1.44-2.39,2.16-3.59c-0.71-1.29-1.43-2.57-2.14-3.86
+ c-1.43-0.09-2.87-0.17-4.3-0.26c-0.72,1.19-1.44,2.38-2.16,3.56c0.71,1.28,1.43,2.57,2.14,3.85C83.67,74.66,85.11,74.75,86.54,74.85
+ z"/>
+<linearGradient id="SVGID_197_" gradientUnits="userSpaceOnUse" x1="-100.8052" y1="-280.1421" x2="-96.6094" y2="-272.8748" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_197_)" d="M86.57,63.84c0.72-1.2,1.44-2.4,2.16-3.61c-0.71-1.28-1.43-2.56-2.14-3.84
+ c-1.43-0.07-2.87-0.15-4.3-0.22c-0.72,1.2-1.44,2.39-2.16,3.59c0.71,1.27,1.43,2.55,2.14,3.83C83.7,63.68,85.13,63.76,86.57,63.84z"
+ />
+<linearGradient id="SVGID_198_" gradientUnits="userSpaceOnUse" x1="-100.8433" y1="-291.1426" x2="-96.6304" y2="-283.8456" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_198_)" d="M86.6,52.84c0.72-1.21,1.44-2.42,2.16-3.63c-0.71-1.27-1.43-2.54-2.14-3.82
+ c-1.43-0.06-2.87-0.12-4.3-0.18c-0.72,1.21-1.44,2.41-2.16,3.61c0.71,1.27,1.43,2.54,2.14,3.81C83.73,52.7,85.16,52.77,86.6,52.84z"
+ />
+<linearGradient id="SVGID_199_" gradientUnits="userSpaceOnUse" x1="-100.8804" y1="-302.145" x2="-96.6479" y2="-294.8142" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_199_)" d="M86.62,41.83c0.72-1.21,1.44-2.43,2.16-3.65c-0.71-1.27-1.43-2.53-2.14-3.8
+ c-1.43-0.04-2.87-0.09-4.3-0.13c-0.72,1.21-1.44,2.43-2.16,3.63c0.71,1.26,1.43,2.52,2.14,3.79C83.76,41.72,85.19,41.78,86.62,41.83
+ z"/>
+<linearGradient id="SVGID_200_" gradientUnits="userSpaceOnUse" x1="-100.9175" y1="-313.145" x2="-96.667" y2="-305.783" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_200_)" d="M86.65,30.82c0.72-1.22,1.44-2.44,2.16-3.67c-0.71-1.26-1.43-2.52-2.14-3.78
+ c-1.43-0.03-2.87-0.06-4.3-0.09c-0.72,1.22-1.44,2.44-2.16,3.65c0.71,1.25,1.43,2.51,2.14,3.76C83.79,30.74,85.22,30.78,86.65,30.82
+ z"/>
+<linearGradient id="SVGID_201_" gradientUnits="userSpaceOnUse" x1="-100.9561" y1="-324.1465" x2="-96.6865" y2="-316.7514" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_201_)" d="M86.68,19.82c0.72-1.23,1.44-2.46,2.16-3.69c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.02-2.87-0.03-4.3-0.05c-0.72,1.23-1.44,2.46-2.16,3.67c0.71,1.25,1.43,2.49,2.14,3.74C83.81,19.77,85.25,19.79,86.68,19.82
+ z"/>
+<linearGradient id="SVGID_202_" gradientUnits="userSpaceOnUse" x1="-100.9922" y1="-335.146" x2="-96.7056" y2="-327.7213" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_202_)" d="M86.71,8.81c0.72-1.24,1.44-2.47,2.16-3.71c-0.71-1.25-1.43-2.49-2.14-3.73
+ c-1.43,0-2.86,0-4.3-0.01c-0.72,1.23-1.44,2.47-2.16,3.7c0.71,1.24,1.42,2.48,2.14,3.72C83.84,8.79,85.27,8.8,86.71,8.81z"/>
+<linearGradient id="SVGID_203_" gradientUnits="userSpaceOnUse" x1="-89.5137" y1="-264.0156" x2="-85.3979" y2="-256.887" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_203_)" d="M75.32,79.91c0.72-1.17,1.44-2.34,2.16-3.52c-0.71-1.28-1.43-2.57-2.14-3.85
+ c-1.43-0.11-2.87-0.21-4.3-0.32c-0.72,1.17-1.44,2.33-2.16,3.49c0.71,1.28,1.42,2.56,2.14,3.84C72.45,79.68,73.88,79.8,75.32,79.91z
+ "/>
+<linearGradient id="SVGID_204_" gradientUnits="userSpaceOnUse" x1="-89.5513" y1="-274.9004" x2="-85.4146" y2="-267.7354" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_204_)" d="M75.34,69.02c0.72-1.18,1.44-2.36,2.16-3.54c-0.71-1.28-1.42-2.55-2.14-3.82
+ c-1.43-0.09-2.87-0.18-4.3-0.27c-0.72,1.17-1.44,2.35-2.16,3.52c0.71,1.27,1.42,2.54,2.14,3.82C72.48,68.82,73.91,68.92,75.34,69.02
+ z"/>
+<linearGradient id="SVGID_205_" gradientUnits="userSpaceOnUse" x1="-89.5903" y1="-285.7837" x2="-85.4336" y2="-278.584" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_205_)" d="M75.37,58.13c0.72-1.19,1.44-2.37,2.16-3.57c-0.71-1.27-1.43-2.54-2.14-3.8
+ c-1.43-0.08-2.86-0.15-4.3-0.23c-0.72,1.18-1.44,2.37-2.16,3.54c0.71,1.26,1.43,2.53,2.14,3.79C72.51,57.96,73.94,58.05,75.37,58.13
+ z"/>
+<linearGradient id="SVGID_206_" gradientUnits="userSpaceOnUse" x1="-89.6284" y1="-296.668" x2="-85.4502" y2="-289.4311" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_206_)" d="M75.4,47.24c0.72-1.19,1.44-2.39,2.16-3.59c-0.71-1.26-1.43-2.52-2.14-3.78
+ c-1.43-0.06-2.86-0.12-4.3-0.18c-0.72,1.19-1.44,2.38-2.16,3.57c0.71,1.25,1.43,2.51,2.14,3.77C72.53,47.1,73.97,47.17,75.4,47.24z"
+ />
+<linearGradient id="SVGID_207_" gradientUnits="userSpaceOnUse" x1="-89.6689" y1="-307.5522" x2="-85.4692" y2="-300.2781" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_207_)" d="M75.43,36.35c0.72-1.2,1.44-2.41,2.16-3.61c-0.71-1.25-1.42-2.51-2.14-3.75
+ c-1.43-0.04-2.87-0.08-4.3-0.13c-0.72,1.2-1.44,2.4-2.16,3.59c0.71,1.25,1.42,2.49,2.14,3.74C72.56,36.25,73.99,36.3,75.43,36.35z"
+ />
+<linearGradient id="SVGID_208_" gradientUnits="userSpaceOnUse" x1="-89.7065" y1="-318.436" x2="-85.4863" y2="-311.1264" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_208_)" d="M75.46,25.46c0.72-1.21,1.44-2.42,2.16-3.64c-0.71-1.24-1.43-2.49-2.14-3.73
+ c-1.43-0.02-2.87-0.05-4.3-0.08c-0.72,1.21-1.44,2.41-2.16,3.61c0.71,1.24,1.43,2.48,2.14,3.72C72.59,25.39,74.02,25.43,75.46,25.46
+ z"/>
+<linearGradient id="SVGID_209_" gradientUnits="userSpaceOnUse" x1="-89.7466" y1="-329.3203" x2="-85.5044" y2="-321.9726" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_209_)" d="M75.48,14.57c0.72-1.22,1.44-2.44,2.16-3.66c-0.71-1.24-1.43-2.47-2.14-3.71
+ c-1.43-0.01-2.87-0.02-4.3-0.03c-0.72,1.22-1.44,2.43-2.16,3.64c0.71,1.23,1.43,2.46,2.14,3.69C72.62,14.53,74.05,14.55,75.48,14.57
+ z"/>
+<linearGradient id="SVGID_210_" gradientUnits="userSpaceOnUse" x1="-88.7231" y1="-338.3652" x2="-85.522" y2="-332.8206" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_210_)" d="M69.07,0c0.71,1.22,1.43,2.44,2.14,3.67c1.43,0.01,2.87,0.01,4.3,0.02
+ c0.72-1.23,1.44-2.45,2.16-3.68C74.8,0,71.94,0,69.07,0z"/>
+<linearGradient id="SVGID_211_" gradientUnits="userSpaceOnUse" x1="-78.6309" y1="-259.8955" x2="-75.7031" y2="-254.8245" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_211_)" d="M66.62,80.52c-0.71-1.28-1.43-2.56-2.14-3.83c-1.43-0.13-2.86-0.25-4.29-0.38
+ c-0.72,1.14-1.44,2.28-2.15,3.42C60.89,80,63.75,80.26,66.62,80.52z"/>
+<linearGradient id="SVGID_212_" gradientUnits="userSpaceOnUse" x1="-78.6694" y1="-270.6533" x2="-74.5952" y2="-263.5966" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_212_)" d="M64.49,73.2c0.72-1.15,1.44-2.31,2.16-3.47c-0.71-1.27-1.43-2.54-2.14-3.81
+ c-1.43-0.11-2.86-0.21-4.29-0.33c-0.72,1.15-1.44,2.3-2.15,3.45c0.71,1.26,1.42,2.53,2.14,3.8C61.63,72.96,63.06,73.08,64.49,73.2z"
+ />
+<linearGradient id="SVGID_213_" gradientUnits="userSpaceOnUse" x1="-78.7085" y1="-281.4111" x2="-74.6104" y2="-274.3129" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_213_)" d="M64.52,62.44c0.72-1.16,1.44-2.33,2.16-3.5c-0.71-1.26-1.42-2.52-2.14-3.78
+ c-1.43-0.09-2.86-0.18-4.3-0.27c-0.72,1.16-1.44,2.32-2.15,3.47c0.71,1.25,1.42,2.51,2.14,3.77C61.65,62.23,63.08,62.33,64.52,62.44
+ z"/>
+<linearGradient id="SVGID_214_" gradientUnits="userSpaceOnUse" x1="-78.7466" y1="-292.1685" x2="-74.6265" y2="-285.0322" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_214_)" d="M64.54,51.67c0.72-1.17,1.44-2.35,2.16-3.53c-0.71-1.25-1.42-2.51-2.14-3.75
+ c-1.43-0.07-2.86-0.15-4.3-0.22c-0.72,1.17-1.44,2.34-2.16,3.5c0.71,1.24,1.42,2.49,2.14,3.75C61.68,51.5,63.11,51.59,64.54,51.67z"
+ />
+<linearGradient id="SVGID_215_" gradientUnits="userSpaceOnUse" x1="-78.7861" y1="-302.9268" x2="-74.6421" y2="-295.7491" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_215_)" d="M64.57,40.91c0.72-1.18,1.44-2.36,2.16-3.55c-0.71-1.25-1.43-2.49-2.14-3.73
+ c-1.43-0.05-2.86-0.11-4.29-0.17c-0.72,1.18-1.44,2.36-2.16,3.53c0.71,1.24,1.43,2.48,2.14,3.72
+ C61.71,40.77,63.14,40.84,64.57,40.91z"/>
+<linearGradient id="SVGID_216_" gradientUnits="userSpaceOnUse" x1="-78.8252" y1="-313.6831" x2="-74.6592" y2="-306.4673" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_216_)" d="M64.6,30.14c0.72-1.19,1.44-2.38,2.16-3.58c-0.71-1.24-1.43-2.47-2.14-3.7
+ c-1.43-0.04-2.86-0.08-4.3-0.11c-0.72,1.19-1.44,2.37-2.16,3.55c0.71,1.23,1.42,2.46,2.14,3.69C61.74,30.04,63.17,30.09,64.6,30.14z
+ "/>
+<linearGradient id="SVGID_217_" gradientUnits="userSpaceOnUse" x1="-78.8643" y1="-324.4409" x2="-74.6738" y2="-317.1829" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_217_)" d="M64.63,19.38c0.72-1.2,1.44-2.4,2.16-3.6c-0.71-1.23-1.43-2.46-2.14-3.68
+ c-1.43-0.02-2.86-0.04-4.3-0.06c-0.72,1.2-1.44,2.39-2.16,3.58c0.71,1.22,1.43,2.44,2.14,3.66C61.76,19.32,63.19,19.35,64.63,19.38z
+ "/>
+<linearGradient id="SVGID_218_" gradientUnits="userSpaceOnUse" x1="-78.9038" y1="-335.1973" x2="-74.6914" y2="-327.9012" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_218_)" d="M64.65,8.62c0.72-1.21,1.44-2.42,2.16-3.63c-0.71-1.22-1.43-2.44-2.14-3.65
+ c-1.43,0-2.87,0-4.3-0.01c-0.72,1.21-1.44,2.41-2.16,3.61c0.71,1.21,1.42,2.42,2.14,3.63C61.79,8.59,63.22,8.6,64.65,8.62z"/>
+<linearGradient id="SVGID_219_" gradientUnits="userSpaceOnUse" x1="-67.4243" y1="-265.8389" x2="-63.4219" y2="-258.9064" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_219_)" d="M53.28,77.94c0.72-1.13,1.44-2.26,2.15-3.39c-0.71-1.27-1.42-2.53-2.14-3.79
+ c-1.43-0.13-2.86-0.26-4.29-0.39c-0.72,1.13-1.43,2.25-2.15,3.36c0.71,1.26,1.42,2.52,2.14,3.78C50.42,77.66,51.85,77.8,53.28,77.94
+ z"/>
+<linearGradient id="SVGID_220_" gradientUnits="userSpaceOnUse" x1="-67.4619" y1="-276.4507" x2="-63.4351" y2="-269.476" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_220_)" d="M53.3,67.32c0.72-1.14,1.44-2.28,2.15-3.42c-0.71-1.26-1.43-2.51-2.14-3.76
+ c-1.43-0.11-2.86-0.22-4.29-0.33c-0.72,1.13-1.44,2.27-2.15,3.39c0.71,1.25,1.42,2.5,2.13,3.75C50.44,67.07,51.88,67.2,53.3,67.32z"
+ />
+<linearGradient id="SVGID_221_" gradientUnits="userSpaceOnUse" x1="-67.4995" y1="-287.0659" x2="-63.4458" y2="-280.0447" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_221_)" d="M53.33,56.7c0.72-1.15,1.44-2.3,2.15-3.45c-0.71-1.25-1.42-2.49-2.14-3.73
+ c-1.43-0.09-2.86-0.18-4.29-0.27c-0.72,1.14-1.44,2.28-2.15,3.42c0.71,1.24,1.43,2.48,2.14,3.72C50.47,56.49,51.9,56.59,53.33,56.7z
+ "/>
+<linearGradient id="SVGID_222_" gradientUnits="userSpaceOnUse" x1="-67.5376" y1="-297.6787" x2="-63.46" y2="-290.616" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_222_)" d="M53.36,46.08c0.72-1.16,1.44-2.32,2.15-3.48c-0.71-1.24-1.43-2.47-2.14-3.71
+ c-1.43-0.07-2.86-0.14-4.29-0.21c-0.72,1.16-1.44,2.31-2.16,3.45c0.71,1.23,1.42,2.46,2.14,3.69
+ C50.49,45.91,51.93,45.99,53.36,46.08z"/>
+<linearGradient id="SVGID_223_" gradientUnits="userSpaceOnUse" x1="-67.5767" y1="-308.2935" x2="-63.4722" y2="-301.1843" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_223_)" d="M53.38,35.46c0.72-1.17,1.44-2.33,2.16-3.51c-0.71-1.23-1.42-2.46-2.14-3.68
+ c-1.43-0.05-2.86-0.1-4.29-0.15c-0.72,1.16-1.44,2.32-2.16,3.48c0.71,1.22,1.42,2.44,2.14,3.66C50.52,35.33,51.95,35.39,53.38,35.46
+ z"/>
+<linearGradient id="SVGID_224_" gradientUnits="userSpaceOnUse" x1="-67.6147" y1="-318.9062" x2="-63.4854" y2="-311.7539" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_224_)" d="M53.41,24.83c0.72-1.17,1.44-2.35,2.16-3.54c-0.71-1.22-1.42-2.43-2.14-3.65
+ c-1.43-0.03-2.86-0.06-4.29-0.1c-0.72,1.17-1.44,2.34-2.16,3.51c0.71,1.21,1.43,2.42,2.14,3.63C50.54,24.74,51.98,24.79,53.41,24.83
+ z"/>
+<linearGradient id="SVGID_225_" gradientUnits="userSpaceOnUse" x1="-67.6523" y1="-329.52" x2="-63.4971" y2="-322.3229" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_225_)" d="M53.43,14.21c0.72-1.19,1.44-2.37,2.16-3.57c-0.71-1.21-1.42-2.42-2.14-3.62
+ c-1.43-0.01-2.86-0.03-4.3-0.04c-0.72,1.19-1.44,2.37-2.16,3.54c0.71,1.2,1.43,2.4,2.14,3.6C50.57,14.16,52,14.19,53.43,14.21z"/>
+<linearGradient id="SVGID_226_" gradientUnits="userSpaceOnUse" x1="-66.6709" y1="-338.3662" x2="-63.5103" y2="-332.8918" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_226_)" d="M47.02,0c0.71,1.19,1.43,2.38,2.14,3.57c1.43,0,2.87,0.01,4.3,0.02C54.18,2.4,54.89,1.2,55.62,0
+ C52.75,0,49.89,0,47.02,0z"/>
+<linearGradient id="SVGID_227_" gradientUnits="userSpaceOnUse" x1="-56.5552" y1="-262.0264" x2="-53.7236" y2="-257.122" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_227_)" d="M44.6,78.36c-0.71-1.26-1.42-2.52-2.14-3.77c-1.43-0.15-2.86-0.3-4.29-0.45
+ c-0.72,1.1-1.43,2.19-2.15,3.28C38.88,77.73,41.74,78.05,44.6,78.36z"/>
+<linearGradient id="SVGID_228_" gradientUnits="userSpaceOnUse" x1="-56.5918" y1="-272.4888" x2="-52.6367" y2="-265.6384" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_228_)" d="M42.47,71.2c0.72-1.11,1.43-2.22,2.15-3.34c-0.71-1.25-1.42-2.5-2.14-3.74
+ c-1.43-0.13-2.86-0.26-4.29-0.39c-0.71,1.11-1.43,2.21-2.15,3.31c0.71,1.24,1.42,2.48,2.13,3.73C39.61,70.91,41.04,71.05,42.47,71.2
+ z"/>
+<linearGradient id="SVGID_229_" gradientUnits="userSpaceOnUse" x1="-56.627" y1="-282.9502" x2="-52.644" y2="-276.0516" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_229_)" d="M42.49,60.73c0.72-1.12,1.43-2.24,2.15-3.37c-0.71-1.24-1.42-2.48-2.14-3.71
+ c-1.43-0.11-2.86-0.21-4.29-0.33c-0.71,1.12-1.43,2.23-2.15,3.34c0.71,1.23,1.42,2.46,2.13,3.7C39.63,60.48,41.06,60.6,42.49,60.73z
+ "/>
+<linearGradient id="SVGID_230_" gradientUnits="userSpaceOnUse" x1="-56.6636" y1="-293.4126" x2="-52.6523" y2="-286.4649" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_230_)" d="M42.51,50.26c0.72-1.13,1.44-2.26,2.15-3.4c-0.71-1.23-1.43-2.46-2.14-3.68
+ c-1.43-0.09-2.86-0.17-4.29-0.26c-0.72,1.13-1.43,2.25-2.15,3.38c0.71,1.22,1.43,2.44,2.14,3.66
+ C39.65,50.05,41.08,50.16,42.51,50.26z"/>
+<linearGradient id="SVGID_231_" gradientUnits="userSpaceOnUse" x1="-56.7002" y1="-303.875" x2="-52.6606" y2="-296.8783" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_231_)" d="M42.54,39.79c0.72-1.14,1.44-2.29,2.15-3.43c-0.71-1.22-1.42-2.44-2.14-3.65
+ c-1.43-0.06-2.86-0.13-4.29-0.2c-0.72,1.14-1.43,2.28-2.15,3.41c0.71,1.21,1.42,2.42,2.14,3.63C39.68,39.63,41.11,39.71,42.54,39.79
+ z"/>
+<linearGradient id="SVGID_232_" gradientUnits="userSpaceOnUse" x1="-56.7358" y1="-314.3369" x2="-52.668" y2="-307.2912" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_232_)" d="M42.56,29.32c0.72-1.15,1.44-2.31,2.15-3.46c-0.71-1.21-1.43-2.41-2.14-3.62
+ c-1.43-0.04-2.86-0.09-4.3-0.13c-0.72,1.15-1.43,2.3-2.15,3.44c0.71,1.2,1.43,2.4,2.14,3.6C39.7,29.2,41.13,29.26,42.56,29.32z"/>
+<linearGradient id="SVGID_233_" gradientUnits="userSpaceOnUse" x1="-56.7715" y1="-324.7979" x2="-52.6758" y2="-317.7039" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_233_)" d="M42.58,18.85c0.72-1.16,1.44-2.33,2.15-3.5c-0.71-1.2-1.42-2.39-2.14-3.59
+ c-1.43-0.02-2.87-0.05-4.3-0.07c-0.72,1.16-1.44,2.32-2.15,3.47c0.71,1.19,1.43,2.37,2.14,3.57C39.72,18.77,41.15,18.81,42.58,18.85
+ z"/>
+<linearGradient id="SVGID_234_" gradientUnits="userSpaceOnUse" x1="-56.8086" y1="-335.2598" x2="-52.686" y2="-328.1193" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_234_)" d="M42.6,8.38c0.72-1.17,1.44-2.35,2.16-3.53c-0.71-1.19-1.43-2.38-2.14-3.56c-1.43,0-2.86,0-4.3-0.01
+ c-0.72,1.17-1.44,2.34-2.15,3.5c0.71,1.17,1.43,2.35,2.14,3.53C39.74,8.34,41.17,8.36,42.6,8.38z"/>
+<linearGradient id="SVGID_235_" gradientUnits="userSpaceOnUse" x1="-45.3628" y1="-268.0112" x2="-41.4912" y2="-261.3055" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_235_)" d="M31.28,75.58c0.72-1.08,1.43-2.16,2.15-3.25c-0.71-1.24-1.42-2.48-2.14-3.72
+ c-1.43-0.15-2.85-0.3-4.28-0.46c-0.72,1.08-1.43,2.15-2.14,3.21c0.71,1.23,1.42,2.47,2.13,3.71C28.43,75.25,29.85,75.42,31.28,75.58
+ z"/>
+<linearGradient id="SVGID_236_" gradientUnits="userSpaceOnUse" x1="-45.395" y1="-278.3027" x2="-41.4917" y2="-271.542" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_236_)" d="M31.3,65.28c0.72-1.09,1.43-2.18,2.15-3.28c-0.71-1.23-1.42-2.46-2.14-3.69
+ c-1.43-0.13-2.86-0.26-4.29-0.39c-0.72,1.09-1.43,2.17-2.15,3.25c0.71,1.22,1.42,2.44,2.13,3.67C28.44,64.99,29.87,65.14,31.3,65.28
+ z"/>
+<linearGradient id="SVGID_237_" gradientUnits="userSpaceOnUse" x1="-45.4272" y1="-288.5952" x2="-41.4937" y2="-281.782" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_237_)" d="M31.32,54.98c0.72-1.1,1.43-2.21,2.15-3.32c-0.71-1.22-1.42-2.44-2.14-3.65
+ c-1.43-0.11-2.86-0.21-4.29-0.32c-0.71,1.1-1.43,2.19-2.15,3.28c0.71,1.21,1.43,2.42,2.14,3.64C28.46,54.74,29.89,54.86,31.32,54.98
+ z"/>
+<linearGradient id="SVGID_238_" gradientUnits="userSpaceOnUse" x1="-45.459" y1="-298.8857" x2="-41.4961" y2="-292.0218" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_238_)" d="M31.33,44.68c0.72-1.11,1.43-2.23,2.15-3.35c-0.71-1.21-1.42-2.41-2.14-3.62
+ c-1.43-0.08-2.86-0.17-4.29-0.25c-0.72,1.11-1.43,2.22-2.15,3.32c0.71,1.2,1.43,2.4,2.14,3.6C28.48,44.49,29.91,44.58,31.33,44.68z"
+ />
+<linearGradient id="SVGID_239_" gradientUnits="userSpaceOnUse" x1="-45.4922" y1="-309.1777" x2="-41.499" y2="-302.2614" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_239_)" d="M31.35,34.38c0.72-1.12,1.43-2.25,2.15-3.38c-0.71-1.2-1.43-2.39-2.14-3.58
+ c-1.43-0.06-2.86-0.12-4.29-0.18c-0.72,1.12-1.43,2.24-2.15,3.36c0.71,1.18,1.43,2.37,2.14,3.56
+ C28.49,34.23,29.92,34.31,31.35,34.38z"/>
+<linearGradient id="SVGID_240_" gradientUnits="userSpaceOnUse" x1="-45.5244" y1="-319.4678" x2="-41.5015" y2="-312.4998" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_240_)" d="M31.37,24.08c0.71-1.13,1.43-2.27,2.15-3.42c-0.71-1.19-1.43-2.37-2.14-3.55
+ c-1.43-0.04-2.86-0.07-4.29-0.11c-0.72,1.13-1.44,2.26-2.15,3.39c0.71,1.17,1.43,2.35,2.14,3.53
+ C28.51,23.97,29.94,24.03,31.37,24.08z"/>
+<linearGradient id="SVGID_241_" gradientUnits="userSpaceOnUse" x1="-45.5576" y1="-329.7598" x2="-41.5039" y2="-322.7385" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_241_)" d="M31.39,13.78c0.72-1.15,1.44-2.29,2.15-3.45c-0.71-1.17-1.43-2.35-2.14-3.52
+ c-1.43-0.01-2.86-0.03-4.3-0.05c-0.72,1.15-1.44,2.29-2.15,3.43c0.71,1.16,1.43,2.33,2.14,3.5C28.53,13.72,29.96,13.75,31.39,13.78z
+ "/>
+<linearGradient id="SVGID_242_" gradientUnits="userSpaceOnUse" x1="-44.6172" y1="-338.3657" x2="-41.5068" y2="-332.9784" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_242_)" d="M24.97,0c0.71,1.15,1.43,2.3,2.14,3.46c1.43,0.01,2.87,0.02,4.3,0.03
+ c0.72-1.16,1.44-2.32,2.15-3.48C30.7,0,27.83,0,24.97,0z"/>
+<linearGradient id="SVGID_243_" gradientUnits="userSpaceOnUse" x1="-34.5127" y1="-264.5337" x2="-31.7847" y2="-259.8086" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_243_)" d="M22.61,75.8c-0.71-1.23-1.42-2.46-2.13-3.69c-1.42-0.17-2.85-0.35-4.28-0.53
+ c-0.71,1.05-1.43,2.08-2.14,3.12C16.91,75.08,19.76,75.45,22.61,75.8z"/>
+<linearGradient id="SVGID_244_" gradientUnits="userSpaceOnUse" x1="-34.54" y1="-274.6479" x2="-30.7202" y2="-268.0318" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_244_)" d="M20.48,68.84c0.72-1.06,1.43-2.12,2.15-3.19c-0.71-1.22-1.42-2.44-2.13-3.66
+ c-1.43-0.15-2.85-0.3-4.28-0.45c-0.71,1.06-1.43,2.11-2.14,3.15c0.71,1.21,1.42,2.42,2.14,3.64C17.63,68.51,19.06,68.67,20.48,68.84
+ z"/>
+<linearGradient id="SVGID_245_" gradientUnits="userSpaceOnUse" x1="-34.5679" y1="-284.7627" x2="-30.7153" y2="-278.0899" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_245_)" d="M20.5,58.72c0.72-1.07,1.43-2.15,2.14-3.23c-0.71-1.21-1.42-2.42-2.14-3.62
+ c-1.43-0.13-2.86-0.25-4.29-0.38c-0.71,1.07-1.43,2.13-2.14,3.19c0.71,1.2,1.43,2.4,2.14,3.6C17.64,58.43,19.07,58.57,20.5,58.72z"
+ />
+<linearGradient id="SVGID_246_" gradientUnits="userSpaceOnUse" x1="-34.5952" y1="-294.874" x2="-30.7109" y2="-288.1463" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_246_)" d="M20.51,48.59c0.71-1.08,1.43-2.17,2.15-3.26c-0.71-1.2-1.43-2.39-2.14-3.58
+ c-1.43-0.1-2.86-0.2-4.29-0.31c-0.71,1.08-1.43,2.16-2.14,3.23c0.71,1.18,1.42,2.38,2.14,3.57C17.65,48.36,19.08,48.48,20.51,48.59z
+ "/>
+<linearGradient id="SVGID_247_" gradientUnits="userSpaceOnUse" x1="-34.6221" y1="-304.9878" x2="-30.7056" y2="-298.2042" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_247_)" d="M20.52,38.47c0.71-1.1,1.43-2.2,2.15-3.3c-0.71-1.19-1.42-2.37-2.14-3.55
+ c-1.43-0.08-2.86-0.15-4.29-0.23c-0.71,1.09-1.43,2.18-2.15,3.27c0.71,1.17,1.42,2.35,2.14,3.53
+ C17.66,38.28,19.09,38.38,20.52,38.47z"/>
+<linearGradient id="SVGID_248_" gradientUnits="userSpaceOnUse" x1="-34.6523" y1="-315.1035" x2="-30.7021" y2="-308.2616" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_248_)" d="M20.53,28.35c0.72-1.11,1.43-2.22,2.15-3.33c-0.71-1.17-1.43-2.35-2.14-3.51
+ c-1.43-0.05-2.86-0.1-4.29-0.16c-0.72,1.11-1.43,2.21-2.15,3.31c0.71,1.16,1.43,2.32,2.14,3.49C17.67,28.21,19.1,28.28,20.53,28.35z
+ "/>
+<linearGradient id="SVGID_249_" gradientUnits="userSpaceOnUse" x1="-34.6782" y1="-325.2178" x2="-30.6943" y2="-318.3175" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_249_)" d="M20.55,18.23c0.71-1.12,1.43-2.24,2.15-3.37c-0.71-1.16-1.43-2.32-2.14-3.48
+ c-1.43-0.03-2.87-0.06-4.3-0.08c-0.72,1.12-1.43,2.23-2.15,3.34c0.71,1.15,1.43,2.3,2.14,3.46C17.68,18.14,19.12,18.18,20.55,18.23z
+ "/>
+<linearGradient id="SVGID_250_" gradientUnits="userSpaceOnUse" x1="-34.707" y1="-335.332" x2="-30.6909" y2="-328.3759" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_250_)" d="M20.56,8.1c0.72-1.13,1.43-2.26,2.15-3.4C22,3.54,21.28,2.4,20.57,1.25c-1.43,0-2.87-0.01-4.3-0.01
+ c-0.72,1.13-1.43,2.26-2.15,3.38c0.72,1.13,1.43,2.27,2.14,3.42C17.7,8.06,19.13,8.08,20.56,8.1z"/>
+<linearGradient id="SVGID_251_" gradientUnits="userSpaceOnUse" x1="-23.334" y1="-270.5356" x2="-19.6069" y2="-264.0802" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_251_)" d="M9.33,72.84c0.71-1.02,1.42-2.05,2.14-3.09c-0.71-1.21-1.42-2.42-2.14-3.63
+ c-1.43-0.17-2.85-0.35-4.28-0.53c-0.71,1.02-1.42,2.04-2.14,3.05c0.71,1.2,1.43,2.4,2.14,3.61C6.48,72.46,7.9,72.65,9.33,72.84z"/>
+<linearGradient id="SVGID_252_" gradientUnits="userSpaceOnUse" x1="-23.355" y1="-280.4526" x2="-19.5942" y2="-273.9388" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_252_)" d="M9.33,62.92c0.71-1.04,1.43-2.08,2.14-3.13c-0.71-1.2-1.42-2.4-2.14-3.59
+ c-1.43-0.15-2.85-0.3-4.28-0.45c-0.71,1.04-1.43,2.06-2.14,3.09c0.71,1.19,1.43,2.38,2.14,3.57C6.48,62.58,7.9,62.75,9.33,62.92z"/>
+<linearGradient id="SVGID_253_" gradientUnits="userSpaceOnUse" x1="-23.376" y1="-290.3691" x2="-19.5801" y2="-283.7945" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_253_)" d="M9.33,52.99c0.71-1.05,1.42-2.1,2.14-3.17c-0.71-1.19-1.42-2.37-2.14-3.55
+ c-1.43-0.12-2.85-0.25-4.28-0.37C4.34,46.95,3.63,48,2.92,49.04c0.71,1.17,1.43,2.35,2.14,3.53C6.48,52.71,7.91,52.85,9.33,52.99z"
+ />
+<linearGradient id="SVGID_254_" gradientUnits="userSpaceOnUse" x1="-23.396" y1="-300.2866" x2="-19.5649" y2="-293.651" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_254_)" d="M9.34,43.06c0.71-1.06,1.43-2.13,2.14-3.2c-0.71-1.17-1.42-2.34-2.14-3.51
+ c-1.43-0.1-2.85-0.19-4.29-0.29c-0.71,1.06-1.43,2.12-2.14,3.17c0.72,1.16,1.43,2.32,2.14,3.49C6.49,42.84,7.91,42.95,9.34,43.06z"
+ />
+<linearGradient id="SVGID_255_" gradientUnits="userSpaceOnUse" x1="-23.4194" y1="-310.2041" x2="-19.5522" y2="-303.506" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_255_)" d="M9.34,33.14c0.72-1.08,1.43-2.16,2.15-3.24c-0.71-1.16-1.43-2.32-2.14-3.47
+ c-1.43-0.07-2.86-0.14-4.29-0.21c-0.71,1.08-1.43,2.15-2.14,3.21c0.71,1.15,1.43,2.29,2.14,3.45C6.49,32.96,7.91,33.05,9.34,33.14z"
+ />
+<linearGradient id="SVGID_256_" gradientUnits="userSpaceOnUse" x1="-23.438" y1="-320.1191" x2="-19.5381" y2="-313.3643" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_256_)" d="M9.35,23.21c0.72-1.09,1.43-2.18,2.15-3.28c-0.71-1.15-1.43-2.29-2.14-3.43
+ c-1.43-0.04-2.86-0.09-4.29-0.13c-0.71,1.09-1.43,2.17-2.14,3.25c0.72,1.13,1.43,2.27,2.14,3.41C6.49,23.09,7.92,23.15,9.35,23.21z"
+ />
+<linearGradient id="SVGID_257_" gradientUnits="userSpaceOnUse" x1="-23.4614" y1="-330.0376" x2="-19.5244" y2="-323.2185" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_257_)" d="M9.35,13.28c0.72-1.1,1.43-2.21,2.15-3.32c-0.71-1.14-1.43-2.27-2.14-3.4
+ C7.92,6.55,6.5,6.53,5.06,6.52c-0.71,1.1-1.43,2.2-2.15,3.29c0.72,1.12,1.43,2.24,2.14,3.37C6.49,13.21,7.92,13.25,9.35,13.28z"/>
+<linearGradient id="SVGID_258_" gradientUnits="userSpaceOnUse" x1="-22.5654" y1="-338.3662" x2="-19.5107" y2="-333.0753" gradientTransform="matrix(-1 0 0 1 -14.2783 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+</linearGradient>
+<path fill="url(#SVGID_258_)" d="M2.92,0c0.71,1.11,1.43,2.22,2.15,3.33c1.44,0.01,2.86,0.02,4.3,0.03
+ c0.72-1.11,1.43-2.23,2.15-3.36C8.65,0,5.78,0,2.92,0z"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_horisontal_636x96px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_horisontal_636x96px.svg
new file mode 100644
index 0000000000..0a3efd8111
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_topbar_horisontal_636x96px.svg
@@ -0,0 +1,4060 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="636px" height="96px" viewBox="0 0 636 96" enable-background="new 0 0 636 96" xml:space="preserve">
+<g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="367.2852" y1="-98.1338" x2="268.8617" y2="172.2825">
+ <stop offset="0" style="stop-color:#2BD5FF"/>
+ <stop offset="0.3516" style="stop-color:#80E6FF"/>
+ <stop offset="0.9176" style="stop-color:#28C4EB"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M464.28,86.13c0.34,0,0.68,0,1.02,0c0,0,92.78,0.9,170.84-12.08V-0.28H464.28H182.14h-182v74.75
+ c0,0,81.49,11.57,182,11.65H464.28z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="329.376" y1="19.6938" x2="309.3868" y2="133.0578">
+ <stop offset="0" style="stop-color:#2BD5FF"/>
+ <stop offset="0.9176" style="stop-color:#28C6ED"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M465.68,85.81c-0.41,0-283.53,0.32-283.53,0.32v-0.32C81.73,85.71,0.34,74.16,0.34,74.16l-0.02,4.41
+ c0,0,80.84,13.35,180.79,13.55v0.01c380.6,8.1,454.93-0.01,454.93-0.01l0.1-18.33C558.16,86.7,465.68,85.81,465.68,85.81z"/>
+
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-363.0977" y1="-269.0723" x2="-359.7446" y2="-263.2646" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M631.02,70.41c-0.71-0.97-1.42-1.95-2.12-2.93c-1.42,0.18-2.83,0.37-4.25,0.54
+ c-0.71,1.17-1.41,2.34-2.12,3.52C625.36,71.17,628.19,70.79,631.02,70.41z"/>
+
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-363.0767" y1="-278.5928" x2="-359.0044" y2="-271.5394" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_4_)" d="M628.9,64.4c0.71-1.16,1.41-2.32,2.12-3.47c-0.71-0.98-1.42-1.97-2.12-2.96
+ c-1.42,0.16-2.83,0.31-4.25,0.47c-0.71,1.16-1.41,2.32-2.12,3.48c0.71,1.01,1.42,2.01,2.13,3C626.06,64.75,627.48,64.58,628.9,64.4
+ z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-363.0591" y1="-288.1143" x2="-359.0181" y2="-281.115" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M628.9,54.89c0.71-1.15,1.42-2.29,2.12-3.43c-0.71-1-1.42-2-2.13-3c-1.42,0.13-2.84,0.26-4.25,0.39
+ c-0.71,1.14-1.42,2.29-2.13,3.45c0.71,1.02,1.42,2.03,2.13,3.04C626.06,55.19,627.48,55.04,628.9,54.89z"/>
+
+ <linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="-363.041" y1="-297.6362" x2="-359.0332" y2="-290.6945" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_6_)" d="M628.89,45.38c0.71-1.13,1.42-2.26,2.13-3.39c-0.71-1.01-1.42-2.02-2.13-3.04
+ c-1.42,0.11-2.84,0.21-4.26,0.32c-0.71,1.13-1.42,2.27-2.13,3.41c0.71,1.03,1.42,2.05,2.13,3.07
+ C626.06,45.62,627.48,45.5,628.89,45.38z"/>
+
+ <linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-363.02" y1="-307.1558" x2="-359.0444" y2="-300.2698" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_7_)" d="M628.89,35.87c0.71-1.12,1.42-2.24,2.13-3.35c-0.71-1.02-1.42-2.05-2.13-3.08
+ c-1.42,0.08-2.84,0.16-4.26,0.24c-0.71,1.12-1.42,2.24-2.13,3.37c0.71,1.04,1.42,2.08,2.13,3.12
+ C626.05,36.06,627.47,35.97,628.89,35.87z"/>
+
+ <linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="-363.0029" y1="-316.6782" x2="-359.0586" y2="-309.8464" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_8_)" d="M628.89,26.36c0.71-1.11,1.42-2.21,2.13-3.31c-0.71-1.04-1.42-2.08-2.13-3.12
+ c-1.42,0.06-2.84,0.11-4.27,0.16c-0.71,1.11-1.42,2.22-2.13,3.34c0.71,1.05,1.42,2.1,2.13,3.15
+ C626.05,26.5,627.47,26.43,628.89,26.36z"/>
+
+ <linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="-362.9824" y1="-326.1982" x2="-359.0698" y2="-319.4214" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_9_)" d="M628.89,16.85c0.71-1.1,1.42-2.19,2.13-3.28c-0.71-1.05-1.42-2.1-2.13-3.16
+ c-1.42,0.03-2.85,0.06-4.27,0.08c-0.71,1.1-1.42,2.2-2.13,3.3c0.71,1.07,1.42,2.13,2.13,3.19
+ C626.04,16.94,627.47,16.89,628.89,16.85z"/>
+
+ <linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="-362.9653" y1="-335.7188" x2="-359.0854" y2="-328.9986" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_10_)" d="M628.89,7.33c0.71-1.08,1.42-2.16,2.13-3.23c-0.71-1.06-1.42-2.13-2.13-3.2
+ c-1.43,0-2.85,0.01-4.27,0.01c-0.71,1.08-1.42,2.17-2.13,3.26c0.71,1.08,1.42,2.15,2.13,3.22C626.04,7.38,627.46,7.35,628.89,7.33z
+ "/>
+
+ <linearGradient id="SVGID_11_" gradientUnits="userSpaceOnUse" x1="-352.021" y1="-272.1646" x2="-347.8901" y2="-265.0097" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_11_)" d="M617.82,70.94c0.71-1.18,1.41-2.36,2.12-3.54c-0.71-1.01-1.42-2.02-2.13-3.03
+ c-1.42,0.16-2.83,0.32-4.25,0.47c-0.71,1.18-1.41,2.36-2.12,3.55c0.71,1.02,1.42,2.04,2.13,3.06
+ C614.98,71.29,616.4,71.12,617.82,70.94z"/>
+
+ <linearGradient id="SVGID_12_" gradientUnits="userSpaceOnUse" x1="-351.9932" y1="-281.8779" x2="-347.8936" y2="-274.7772" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_12_)" d="M617.8,61.24c0.71-1.17,1.42-2.34,2.12-3.5c-0.71-1.02-1.42-2.04-2.13-3.07
+ c-1.42,0.14-2.84,0.27-4.26,0.4c-0.71,1.17-1.42,2.34-2.12,3.52c0.71,1.04,1.42,2.07,2.13,3.1
+ C614.97,61.54,616.39,61.39,617.8,61.24z"/>
+
+ <linearGradient id="SVGID_13_" gradientUnits="userSpaceOnUse" x1="-351.9683" y1="-291.5947" x2="-347.8979" y2="-284.5447" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_13_)" d="M617.79,51.53c0.71-1.16,1.42-2.31,2.12-3.46c-0.71-1.03-1.42-2.07-2.13-3.1
+ c-1.42,0.11-2.84,0.22-4.26,0.33c-0.71,1.16-1.41,2.32-2.12,3.48c0.71,1.05,1.42,2.09,2.13,3.13
+ C614.96,51.79,616.38,51.66,617.79,51.53z"/>
+
+ <linearGradient id="SVGID_14_" gradientUnits="userSpaceOnUse" x1="-351.9429" y1="-301.3062" x2="-347.9033" y2="-294.3094" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_14_)" d="M617.78,41.83c0.71-1.15,1.42-2.29,2.13-3.43c-0.71-1.04-1.42-2.09-2.13-3.14
+ c-1.42,0.09-2.84,0.17-4.26,0.26c-0.71,1.14-1.42,2.29-2.12,3.45c0.71,1.06,1.42,2.12,2.13,3.17
+ C614.94,42.04,616.37,41.93,617.78,41.83z"/>
+
+ <linearGradient id="SVGID_15_" gradientUnits="userSpaceOnUse" x1="-351.9175" y1="-311.022" x2="-347.9077" y2="-304.0768" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_15_)" d="M617.78,32.12c0.71-1.13,1.42-2.26,2.13-3.39c-0.71-1.05-1.42-2.11-2.14-3.17
+ c-1.42,0.06-2.84,0.13-4.26,0.19c-0.71,1.13-1.42,2.27-2.13,3.41c0.71,1.07,1.42,2.14,2.13,3.2
+ C614.93,32.28,616.36,32.2,617.78,32.12z"/>
+
+ <linearGradient id="SVGID_16_" gradientUnits="userSpaceOnUse" x1="-351.8921" y1="-320.7388" x2="-347.9116" y2="-313.8444" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_16_)" d="M617.77,22.42c0.71-1.12,1.42-2.24,2.13-3.36c-0.71-1.06-1.42-2.14-2.13-3.21
+ c-1.42,0.04-2.85,0.08-4.27,0.12c-0.71,1.12-1.42,2.25-2.13,3.38c0.71,1.08,1.42,2.16,2.14,3.24
+ C614.92,22.53,616.34,22.47,617.77,22.42z"/>
+
+ <linearGradient id="SVGID_17_" gradientUnits="userSpaceOnUse" x1="-351.8672" y1="-330.4517" x2="-347.917" y2="-323.6097" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_17_)" d="M617.75,12.71c0.71-1.11,1.42-2.21,2.13-3.32c-0.71-1.08-1.43-2.16-2.14-3.25
+ c-1.42,0.02-2.85,0.03-4.27,0.05c-0.71,1.11-1.42,2.23-2.13,3.34c0.71,1.09,1.42,2.19,2.14,3.27
+ C614.91,12.77,616.33,12.74,617.75,12.71z"/>
+
+ <linearGradient id="SVGID_18_" gradientUnits="userSpaceOnUse" x1="-350.9536" y1="-338.6313" x2="-347.9209" y2="-333.3785" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_18_)" d="M611.34-0.28c0.71,1.11,1.43,2.21,2.14,3.31c1.42-0.01,2.85-0.01,4.27-0.02
+ c0.71-1.1,1.42-2.19,2.13-3.28C617.03-0.28,614.18-0.28,611.34-0.28z"/>
+
+ <linearGradient id="SVGID_19_" gradientUnits="userSpaceOnUse" x1="-341.3149" y1="-266.4116" x2="-337.9531" y2="-260.5888" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_19_)" d="M609.21,73.21c-0.71-1.03-1.42-2.06-2.13-3.09c-1.42,0.16-2.84,0.32-4.26,0.47
+ c-0.71,1.2-1.42,2.4-2.12,3.61C603.54,73.88,606.37,73.55,609.21,73.21z"/>
+
+ <linearGradient id="SVGID_20_" gradientUnits="userSpaceOnUse" x1="-341.2812" y1="-276.2993" x2="-337.1309" y2="-269.1106" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_20_)" d="M607.07,66.92c0.71-1.19,1.42-2.38,2.12-3.56c-0.71-1.04-1.42-2.08-2.13-3.12
+ c-1.42,0.14-2.84,0.27-4.26,0.41c-0.71,1.19-1.42,2.38-2.12,3.57c0.71,1.06,1.43,2.11,2.14,3.16
+ C604.23,67.22,605.65,67.07,607.07,66.92z"/>
+
+ <linearGradient id="SVGID_21_" gradientUnits="userSpaceOnUse" x1="-341.2524" y1="-286.1904" x2="-337.1284" y2="-279.0474" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_21_)" d="M607.05,57.04c0.71-1.18,1.42-2.36,2.12-3.53c-0.71-1.05-1.43-2.1-2.13-3.16
+ c-1.42,0.12-2.84,0.23-4.26,0.34c-0.71,1.18-1.42,2.36-2.12,3.54c0.71,1.07,1.43,2.13,2.14,3.19
+ C604.22,57.3,605.63,57.17,607.05,57.04z"/>
+
+ <linearGradient id="SVGID_22_" gradientUnits="userSpaceOnUse" x1="-341.2212" y1="-296.0801" x2="-337.1265" y2="-288.9878" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_22_)" d="M607.04,47.16c0.71-1.17,1.42-2.33,2.12-3.49c-0.71-1.06-1.42-2.12-2.14-3.19
+ c-1.42,0.09-2.84,0.18-4.26,0.27c-0.71,1.17-1.42,2.34-2.12,3.51c0.71,1.08,1.42,2.15,2.14,3.22
+ C604.2,47.37,605.62,47.27,607.04,47.16z"/>
+
+ <linearGradient id="SVGID_23_" gradientUnits="userSpaceOnUse" x1="-341.1899" y1="-305.9692" x2="-337.1226" y2="-298.9243" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_23_)" d="M607.02,37.28c0.71-1.15,1.42-2.31,2.13-3.46c-0.71-1.07-1.42-2.15-2.14-3.22
+ c-1.42,0.07-2.84,0.14-4.27,0.21c-0.71,1.16-1.42,2.31-2.12,3.48c0.71,1.09,1.43,2.17,2.14,3.26
+ C604.18,37.45,605.6,37.36,607.02,37.28z"/>
+
+ <linearGradient id="SVGID_24_" gradientUnits="userSpaceOnUse" x1="-341.1616" y1="-315.8604" x2="-337.1216" y2="-308.8628" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_24_)" d="M607.01,27.4c0.71-1.15,1.42-2.29,2.13-3.43c-0.71-1.08-1.43-2.17-2.14-3.26
+ c-1.42,0.05-2.84,0.1-4.27,0.14c-0.71,1.15-1.42,2.29-2.12,3.45c0.71,1.1,1.42,2.19,2.14,3.29
+ C604.16,27.52,605.58,27.46,607.01,27.4z"/>
+
+ <linearGradient id="SVGID_25_" gradientUnits="userSpaceOnUse" x1="-341.1304" y1="-325.75" x2="-337.1187" y2="-318.8015" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_25_)" d="M606.99,17.51c0.71-1.13,1.42-2.26,2.13-3.39c-0.71-1.1-1.43-2.19-2.14-3.29
+ c-1.42,0.03-2.85,0.05-4.27,0.08c-0.71,1.13-1.42,2.27-2.12,3.41c0.71,1.11,1.43,2.22,2.14,3.32
+ C604.14,17.59,605.57,17.56,606.99,17.51z"/>
+
+ <linearGradient id="SVGID_26_" gradientUnits="userSpaceOnUse" x1="-341.0991" y1="-335.6426" x2="-337.1152" y2="-328.7423" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_26_)" d="M606.97,7.63c0.71-1.12,1.42-2.24,2.13-3.36c-0.71-1.1-1.43-2.21-2.14-3.33
+ c-1.43,0-2.85,0.01-4.27,0.01c-0.71,1.12-1.42,2.25-2.13,3.38c0.71,1.12,1.43,2.24,2.14,3.35C604.13,7.67,605.55,7.65,606.97,7.63z
+ "/>
+
+ <linearGradient id="SVGID_27_" gradientUnits="userSpaceOnUse" x1="-330.2061" y1="-269.8462" x2="-326.0059" y2="-262.5712" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_27_)" d="M595.97,73.47c0.71-1.21,1.41-2.42,2.12-3.62c-0.71-1.06-1.42-2.12-2.13-3.18
+ c-1.42,0.14-2.84,0.27-4.26,0.41c-0.71,1.21-1.42,2.42-2.12,3.63c0.71,1.07,1.43,2.14,2.14,3.21
+ C593.13,73.78,594.55,73.63,595.97,73.47z"/>
+
+ <linearGradient id="SVGID_28_" gradientUnits="userSpaceOnUse" x1="-330.1714" y1="-279.9058" x2="-325.9966" y2="-272.6748" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_28_)" d="M595.95,63.42c0.71-1.2,1.42-2.39,2.12-3.59c-0.71-1.07-1.42-2.14-2.13-3.21
+ c-1.42,0.12-2.84,0.23-4.27,0.35c-0.71,1.2-1.42,2.39-2.12,3.6c0.71,1.08,1.43,2.16,2.14,3.24
+ C593.11,63.69,594.53,63.56,595.95,63.42z"/>
+
+ <linearGradient id="SVGID_29_" gradientUnits="userSpaceOnUse" x1="-330.1382" y1="-289.9644" x2="-325.9897" y2="-282.7791" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_29_)" d="M595.93,53.38c0.71-1.19,1.42-2.38,2.12-3.56c-0.71-1.08-1.43-2.16-2.14-3.24
+ c-1.42,0.1-2.84,0.19-4.27,0.29c-0.71,1.19-1.42,2.38-2.13,3.57c0.71,1.09,1.43,2.19,2.14,3.27
+ C593.09,53.59,594.51,53.48,595.93,53.38z"/>
+
+ <linearGradient id="SVGID_30_" gradientUnits="userSpaceOnUse" x1="-330.1021" y1="-300.02" x2="-325.9805" y2="-292.8812" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_30_)" d="M595.91,43.32c0.71-1.18,1.41-2.35,2.12-3.52c-0.71-1.09-1.43-2.18-2.14-3.27
+ c-1.42,0.08-2.84,0.15-4.27,0.22c-0.71,1.18-1.42,2.36-2.13,3.54c0.71,1.1,1.43,2.2,2.14,3.3
+ C593.07,43.5,594.49,43.41,595.91,43.32z"/>
+
+ <linearGradient id="SVGID_31_" gradientUnits="userSpaceOnUse" x1="-330.0688" y1="-310.0796" x2="-325.9727" y2="-302.9848" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_31_)" d="M595.89,33.27c0.71-1.17,1.42-2.33,2.13-3.49c-0.71-1.1-1.43-2.2-2.14-3.31
+ c-1.42,0.06-2.84,0.11-4.27,0.17c-0.71,1.17-1.42,2.33-2.13,3.51c0.71,1.12,1.43,2.22,2.14,3.33
+ C593.04,33.41,594.47,33.34,595.89,33.27z"/>
+
+ <linearGradient id="SVGID_32_" gradientUnits="userSpaceOnUse" x1="-330.0347" y1="-320.1353" x2="-325.9658" y2="-313.0878" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_32_)" d="M595.87,23.22c0.71-1.16,1.42-2.31,2.13-3.46c-0.71-1.11-1.43-2.22-2.14-3.34
+ c-1.42,0.03-2.85,0.07-4.27,0.1c-0.71,1.16-1.42,2.32-2.12,3.48c0.71,1.12,1.43,2.24,2.14,3.36
+ C593.02,23.32,594.45,23.27,595.87,23.22z"/>
+
+ <linearGradient id="SVGID_33_" gradientUnits="userSpaceOnUse" x1="-329.9995" y1="-330.1958" x2="-325.9551" y2="-323.1906" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_33_)" d="M595.85,13.17c0.71-1.15,1.42-2.29,2.13-3.43c-0.71-1.12-1.43-2.24-2.14-3.37
+ c-1.42,0.01-2.85,0.03-4.27,0.04c-0.71,1.15-1.42,2.29-2.13,3.45c0.71,1.14,1.43,2.26,2.14,3.39
+ C593,13.23,594.42,13.2,595.85,13.17z"/>
+
+ <linearGradient id="SVGID_34_" gradientUnits="userSpaceOnUse" x1="-329.0283" y1="-338.6309" x2="-325.9473" y2="-333.2943" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_34_)" d="M589.41-0.28c0.71,1.14,1.43,2.29,2.14,3.42c1.43-0.01,2.85-0.01,4.27-0.02
+ c0.71-1.14,1.41-2.27,2.12-3.4C595.11-0.28,592.26-0.28,589.41-0.28z"/>
+
+ <linearGradient id="SVGID_35_" gradientUnits="userSpaceOnUse" x1="-319.4795" y1="-264.1133" x2="-316.1167" y2="-258.2888" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_35_)" d="M587.35,75.63c-0.71-1.08-1.43-2.15-2.14-3.23c-1.42,0.14-2.85,0.27-4.27,0.4
+ c-0.71,1.22-1.42,2.45-2.12,3.67C581.67,76.2,584.51,75.92,587.35,75.63z"/>
+
+ <linearGradient id="SVGID_36_" gradientUnits="userSpaceOnUse" x1="-319.4438" y1="-274.3223" x2="-315.2266" y2="-267.0177" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_36_)" d="M585.21,69.1c0.71-1.22,1.42-2.43,2.12-3.64c-0.71-1.08-1.43-2.17-2.14-3.26
+ c-1.42,0.12-2.85,0.23-4.26,0.35c-0.71,1.21-1.42,2.43-2.12,3.65c0.71,1.1,1.43,2.2,2.14,3.29
+ C582.36,69.36,583.78,69.23,585.21,69.1z"/>
+
+ <linearGradient id="SVGID_37_" gradientUnits="userSpaceOnUse" x1="-319.4058" y1="-284.5303" x2="-315.2134" y2="-277.2689" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_37_)" d="M585.18,58.9c0.71-1.21,1.41-2.41,2.12-3.61c-0.71-1.09-1.43-2.19-2.14-3.29
+ c-1.42,0.1-2.85,0.19-4.27,0.29c-0.71,1.21-1.42,2.41-2.12,3.62c0.71,1.11,1.43,2.21,2.14,3.32
+ C582.33,59.12,583.76,59.01,585.18,58.9z"/>
+
+ <linearGradient id="SVGID_38_" gradientUnits="userSpaceOnUse" x1="-319.3706" y1="-294.7388" x2="-315.2026" y2="-287.5196" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_38_)" d="M585.16,48.69c0.71-1.19,1.41-2.39,2.12-3.58c-0.71-1.1-1.43-2.21-2.14-3.32
+ c-1.42,0.08-2.85,0.16-4.27,0.23c-0.71,1.19-1.42,2.39-2.13,3.59c0.71,1.12,1.43,2.24,2.14,3.35
+ C582.31,48.88,583.73,48.79,585.16,48.69z"/>
+
+ <linearGradient id="SVGID_39_" gradientUnits="userSpaceOnUse" x1="-319.3335" y1="-304.9473" x2="-315.189" y2="-297.7687" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_39_)" d="M585.13,38.49c0.71-1.18,1.42-2.37,2.12-3.55c-0.71-1.11-1.43-2.23-2.14-3.35
+ c-1.42,0.06-2.85,0.12-4.27,0.18c-0.71,1.19-1.42,2.37-2.13,3.57c0.71,1.13,1.43,2.25,2.14,3.37
+ C582.29,38.64,583.71,38.57,585.13,38.49z"/>
+
+ <linearGradient id="SVGID_40_" gradientUnits="userSpaceOnUse" x1="-319.2974" y1="-315.1562" x2="-315.1777" y2="-308.0208" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_40_)" d="M585.11,28.29c0.71-1.17,1.42-2.35,2.12-3.52c-0.71-1.12-1.43-2.25-2.14-3.38
+ c-1.43,0.04-2.85,0.08-4.27,0.12c-0.71,1.18-1.42,2.36-2.12,3.54c0.71,1.14,1.43,2.27,2.14,3.4
+ C582.26,28.4,583.68,28.34,585.11,28.29z"/>
+
+ <linearGradient id="SVGID_41_" gradientUnits="userSpaceOnUse" x1="-319.2612" y1="-325.3652" x2="-315.1646" y2="-318.2696" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_41_)" d="M585.08,18.09c0.71-1.17,1.42-2.33,2.13-3.49c-0.71-1.13-1.43-2.27-2.14-3.41
+ c-1.42,0.02-2.85,0.04-4.27,0.07c-0.71,1.17-1.42,2.34-2.13,3.51c0.71,1.15,1.43,2.29,2.14,3.43
+ C582.24,18.16,583.66,18.12,585.08,18.09z"/>
+
+ <linearGradient id="SVGID_42_" gradientUnits="userSpaceOnUse" x1="-319.2231" y1="-335.5723" x2="-315.1519" y2="-328.5206" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_42_)" d="M585.06,7.89c0.71-1.16,1.42-2.31,2.12-3.46c-0.71-1.14-1.43-2.29-2.14-3.44
+ c-1.42,0-2.85,0.01-4.27,0.01c-0.71,1.16-1.42,2.32-2.13,3.48c0.71,1.15,1.43,2.31,2.14,3.46C582.21,7.92,583.63,7.9,585.06,7.89z"
+ />
+
+ <linearGradient id="SVGID_43_" gradientUnits="userSpaceOnUse" x1="-308.3457" y1="-267.8691" x2="-304.0898" y2="-260.4978" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_43_)" d="M574.09,75.64c0.71-1.23,1.42-2.46,2.12-3.68c-0.71-1.1-1.43-2.21-2.14-3.31
+ c-1.42,0.12-2.85,0.23-4.27,0.34c-0.71,1.23-1.42,2.46-2.12,3.69c0.71,1.12,1.43,2.23,2.14,3.34
+ C571.25,75.89,572.67,75.76,574.09,75.64z"/>
+
+ <linearGradient id="SVGID_44_" gradientUnits="userSpaceOnUse" x1="-308.3096" y1="-278.2183" x2="-304.0767" y2="-270.8867" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_44_)" d="M574.06,65.29c0.71-1.22,1.42-2.44,2.12-3.66c-0.71-1.11-1.43-2.22-2.14-3.34
+ c-1.42,0.1-2.85,0.2-4.27,0.29c-0.71,1.22-1.42,2.44-2.12,3.67c0.71,1.13,1.43,2.25,2.14,3.37
+ C571.22,65.51,572.64,65.4,574.06,65.29z"/>
+
+ <linearGradient id="SVGID_45_" gradientUnits="userSpaceOnUse" x1="-308.272" y1="-288.5713" x2="-304.0605" y2="-281.2769" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_45_)" d="M574.04,54.95c0.71-1.21,1.42-2.43,2.12-3.63c-0.71-1.12-1.43-2.24-2.14-3.37
+ c-1.42,0.08-2.85,0.16-4.27,0.24c-0.71,1.21-1.42,2.43-2.12,3.64c0.71,1.13,1.43,2.26,2.14,3.39
+ C571.19,55.13,572.62,55.04,574.04,54.95z"/>
+
+ <linearGradient id="SVGID_46_" gradientUnits="userSpaceOnUse" x1="-308.2344" y1="-298.9209" x2="-304.0454" y2="-291.6654" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_46_)" d="M574.01,44.6c0.71-1.2,1.42-2.4,2.12-3.6c-0.71-1.13-1.43-2.26-2.14-3.39
+ c-1.42,0.06-2.85,0.13-4.27,0.19c-0.71,1.2-1.42,2.41-2.12,3.62c0.71,1.14,1.43,2.28,2.14,3.42
+ C571.16,44.75,572.59,44.67,574.01,44.6z"/>
+
+ <linearGradient id="SVGID_47_" gradientUnits="userSpaceOnUse" x1="-308.1963" y1="-309.272" x2="-304.0293" y2="-302.0545" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_47_)" d="M573.98,34.26c0.71-1.19,1.42-2.39,2.13-3.58c-0.71-1.14-1.43-2.28-2.14-3.42
+ c-1.42,0.04-2.85,0.09-4.27,0.14c-0.71,1.2-1.42,2.39-2.12,3.59c0.71,1.15,1.43,2.3,2.14,3.44
+ C571.14,34.37,572.56,34.31,573.98,34.26z"/>
+
+ <linearGradient id="SVGID_48_" gradientUnits="userSpaceOnUse" x1="-308.1611" y1="-319.626" x2="-304.0151" y2="-312.4449" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_48_)" d="M573.96,23.91c0.71-1.19,1.42-2.37,2.13-3.55c-0.71-1.14-1.43-2.29-2.14-3.45
+ c-1.42,0.03-2.85,0.06-4.27,0.09c-0.71,1.19-1.42,2.37-2.12,3.56c0.71,1.16,1.43,2.31,2.14,3.47
+ C571.11,23.99,572.54,23.95,573.96,23.91z"/>
+
+ <linearGradient id="SVGID_49_" gradientUnits="userSpaceOnUse" x1="-308.1221" y1="-329.9766" x2="-303.9985" y2="-322.8344" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_49_)" d="M573.93,13.57c0.71-1.18,1.42-2.35,2.12-3.53c-0.71-1.15-1.43-2.31-2.14-3.47
+ c-1.42,0.01-2.85,0.02-4.27,0.04c-0.71,1.18-1.42,2.36-2.12,3.54c0.71,1.17,1.43,2.33,2.14,3.49
+ C571.08,13.61,572.51,13.59,573.93,13.57z"/>
+
+ <linearGradient id="SVGID_50_" gradientUnits="userSpaceOnUse" x1="-307.106" y1="-338.6313" x2="-303.9834" y2="-333.2229" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_50_)" d="M567.49-0.28c0.71,1.17,1.43,2.35,2.14,3.52c1.42-0.01,2.85-0.01,4.27-0.02
+ c0.71-1.17,1.42-2.33,2.13-3.5C573.18-0.28,570.34-0.28,567.49-0.28z"/>
+
+ <linearGradient id="SVGID_51_" gradientUnits="userSpaceOnUse" x1="-297.5938" y1="-262.1865" x2="-294.2358" y2="-256.3705" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_51_)" d="M565.46,77.68c-0.71-1.12-1.43-2.24-2.14-3.36c-1.42,0.12-2.85,0.22-4.27,0.33
+ c-0.71,1.24-1.42,2.48-2.12,3.73C559.76,78.16,562.61,77.92,565.46,77.68z"/>
+
+ <linearGradient id="SVGID_52_" gradientUnits="userSpaceOnUse" x1="-297.5625" y1="-272.6567" x2="-293.2939" y2="-265.2634" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_52_)" d="M563.3,70.93c0.71-1.23,1.42-2.47,2.12-3.7c-0.71-1.12-1.43-2.25-2.14-3.39
+ c-1.42,0.1-2.85,0.19-4.27,0.29c-0.71,1.23-1.41,2.47-2.12,3.71c0.72,1.14,1.43,2.27,2.14,3.41
+ C560.46,71.15,561.88,71.04,563.3,70.93z"/>
+
+ <linearGradient id="SVGID_53_" gradientUnits="userSpaceOnUse" x1="-297.5269" y1="-283.1328" x2="-293.2788" y2="-275.775" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_53_)" d="M563.28,60.46c0.71-1.23,1.42-2.45,2.13-3.67c-0.71-1.13-1.43-2.27-2.14-3.41
+ c-1.42,0.08-2.85,0.16-4.27,0.24c-0.71,1.23-1.42,2.45-2.12,3.68c0.71,1.15,1.43,2.29,2.14,3.43
+ C560.43,60.64,561.85,60.55,563.28,60.46z"/>
+
+ <linearGradient id="SVGID_54_" gradientUnits="userSpaceOnUse" x1="-297.4897" y1="-293.6089" x2="-293.2627" y2="-286.2874" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_54_)" d="M563.25,49.99c0.71-1.22,1.42-2.43,2.13-3.65c-0.72-1.14-1.43-2.29-2.14-3.43
+ c-1.42,0.07-2.85,0.13-4.27,0.19c-0.71,1.22-1.42,2.44-2.12,3.66c0.71,1.15,1.43,2.31,2.14,3.46
+ C560.4,50.14,561.82,50.07,563.25,49.99z"/>
+
+ <linearGradient id="SVGID_55_" gradientUnits="userSpaceOnUse" x1="-297.4526" y1="-304.0854" x2="-293.2446" y2="-296.797" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_55_)" d="M563.22,39.52c0.71-1.21,1.42-2.42,2.13-3.63c-0.72-1.15-1.43-2.3-2.15-3.46
+ c-1.42,0.05-2.85,0.1-4.27,0.14c-0.71,1.21-1.42,2.42-2.12,3.64c0.71,1.16,1.43,2.32,2.14,3.48
+ C560.37,39.64,561.8,39.58,563.22,39.52z"/>
+
+ <linearGradient id="SVGID_56_" gradientUnits="userSpaceOnUse" x1="-297.4146" y1="-314.562" x2="-293.228" y2="-307.3107" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_56_)" d="M563.19,29.04c0.71-1.2,1.42-2.4,2.12-3.6c-0.71-1.16-1.43-2.32-2.14-3.48
+ c-1.42,0.03-2.85,0.07-4.27,0.1c-0.71,1.2-1.42,2.41-2.12,3.61c0.71,1.17,1.43,2.34,2.14,3.5
+ C560.35,29.13,561.77,29.09,563.19,29.04z"/>
+
+ <linearGradient id="SVGID_57_" gradientUnits="userSpaceOnUse" x1="-297.3784" y1="-325.0405" x2="-293.2109" y2="-317.8222" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_57_)" d="M563.16,18.58c0.71-1.2,1.42-2.39,2.13-3.58c-0.71-1.17-1.43-2.33-2.14-3.51
+ c-1.42,0.02-2.85,0.04-4.27,0.05c-0.71,1.2-1.42,2.39-2.13,3.59c0.71,1.18,1.43,2.35,2.14,3.52
+ C560.32,18.63,561.74,18.6,563.16,18.58z"/>
+
+ <linearGradient id="SVGID_58_" gradientUnits="userSpaceOnUse" x1="-297.3384" y1="-335.5166" x2="-293.1929" y2="-328.3364" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_58_)" d="M563.14,8.1c0.71-1.19,1.42-2.37,2.12-3.55c-0.71-1.17-1.43-2.35-2.14-3.53
+ c-1.42,0-2.85,0-4.27,0.01c-0.71,1.19-1.42,2.38-2.13,3.57c0.72,1.18,1.43,2.37,2.15,3.54C560.29,8.13,561.71,8.12,563.14,8.1z"/>
+
+ <linearGradient id="SVGID_59_" gradientUnits="userSpaceOnUse" x1="-286.4502" y1="-266.2334" x2="-282.1519" y2="-258.7885" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_59_)" d="M552.18,77.43c0.71-1.25,1.42-2.49,2.13-3.73c-0.71-1.14-1.43-2.29-2.14-3.43
+ c-1.43,0.09-2.85,0.19-4.28,0.28c-0.71,1.24-1.42,2.49-2.13,3.74c0.71,1.16,1.43,2.31,2.14,3.45
+ C549.33,77.63,550.75,77.53,552.18,77.43z"/>
+
+ <linearGradient id="SVGID_60_" gradientUnits="userSpaceOnUse" x1="-286.4141" y1="-276.8271" x2="-282.1338" y2="-269.4135" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_60_)" d="M552.15,66.84c0.71-1.24,1.42-2.47,2.13-3.71c-0.71-1.15-1.43-2.3-2.14-3.45
+ c-1.42,0.08-2.85,0.16-4.27,0.24c-0.71,1.24-1.42,2.48-2.13,3.72c0.72,1.16,1.43,2.32,2.14,3.47
+ C549.3,67.01,550.72,66.93,552.15,66.84z"/>
+
+ <linearGradient id="SVGID_61_" gradientUnits="userSpaceOnUse" x1="-286.376" y1="-287.4204" x2="-282.1143" y2="-280.0389" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_61_)" d="M552.12,56.25c0.71-1.23,1.42-2.46,2.13-3.69c-0.71-1.16-1.43-2.31-2.15-3.47
+ c-1.42,0.07-2.85,0.13-4.27,0.19c-0.71,1.23-1.42,2.46-2.13,3.7c0.71,1.17,1.43,2.33,2.15,3.5
+ C549.27,56.4,550.7,56.32,552.12,56.25z"/>
+
+ <linearGradient id="SVGID_62_" gradientUnits="userSpaceOnUse" x1="-286.3418" y1="-298.0117" x2="-282.0991" y2="-290.6632" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_62_)" d="M552.09,45.66c0.71-1.23,1.42-2.45,2.13-3.67c-0.71-1.16-1.43-2.33-2.15-3.5
+ c-1.42,0.05-2.85,0.1-4.27,0.15c-0.71,1.22-1.42,2.45-2.12,3.68c0.71,1.17,1.43,2.35,2.14,3.51
+ C549.24,45.78,550.67,45.72,552.09,45.66z"/>
+
+ <linearGradient id="SVGID_63_" gradientUnits="userSpaceOnUse" x1="-286.3062" y1="-308.6084" x2="-282.0796" y2="-301.2878" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_63_)" d="M552.06,35.07c0.71-1.22,1.42-2.43,2.13-3.65c-0.71-1.17-1.43-2.34-2.14-3.52
+ c-1.42,0.04-2.85,0.08-4.27,0.11c-0.71,1.22-1.42,2.43-2.12,3.65c0.71,1.18,1.43,2.36,2.14,3.54
+ C549.22,35.17,550.64,35.12,552.06,35.07z"/>
+
+ <linearGradient id="SVGID_64_" gradientUnits="userSpaceOnUse" x1="-286.269" y1="-319.1992" x2="-282.062" y2="-311.9124" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_64_)" d="M552.04,24.48c0.71-1.21,1.42-2.42,2.12-3.62c-0.71-1.18-1.43-2.35-2.14-3.54
+ c-1.42,0.02-2.85,0.05-4.28,0.07c-0.71,1.21-1.42,2.42-2.12,3.63c0.71,1.19,1.43,2.37,2.14,3.56
+ C549.19,24.55,550.61,24.52,552.04,24.48z"/>
+
+ <linearGradient id="SVGID_65_" gradientUnits="userSpaceOnUse" x1="-286.2334" y1="-329.7939" x2="-282.0449" y2="-322.5393" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_65_)" d="M552.01,13.89c0.71-1.2,1.42-2.4,2.12-3.6c-0.71-1.18-1.43-2.37-2.14-3.56
+ c-1.42,0.01-2.85,0.02-4.27,0.03c-0.71,1.2-1.41,2.41-2.12,3.61c0.71,1.2,1.43,2.39,2.14,3.57
+ C549.16,13.93,550.59,13.91,552.01,13.89z"/>
+
+ <linearGradient id="SVGID_66_" gradientUnits="userSpaceOnUse" x1="-285.1821" y1="-338.6313" x2="-282.0254" y2="-333.1637" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_66_)" d="M545.56-0.28c0.71,1.2,1.43,2.4,2.14,3.59c1.43-0.01,2.85-0.01,4.27-0.01
+ c0.71-1.2,1.42-2.39,2.13-3.58C551.26-0.28,548.41-0.28,545.56-0.28z"/>
+
+ <linearGradient id="SVGID_67_" gradientUnits="userSpaceOnUse" x1="-275.6704" y1="-260.6182" x2="-272.3271" y2="-254.8275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_67_)" d="M543.53,79.35c-0.71-1.16-1.43-2.31-2.14-3.47c-1.43,0.09-2.85,0.18-4.28,0.26
+ c-0.71,1.25-1.42,2.5-2.13,3.76C537.83,79.73,540.68,79.54,543.53,79.35z"/>
+
+ <linearGradient id="SVGID_68_" gradientUnits="userSpaceOnUse" x1="-275.6523" y1="-271.3037" x2="-271.3477" y2="-263.8478" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_68_)" d="M541.38,72.42c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.16-1.43-2.32-2.15-3.49
+ c-1.42,0.08-2.85,0.15-4.28,0.23c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.18,1.43,2.35,2.14,3.51
+ C538.52,72.59,539.95,72.51,541.38,72.42z"/>
+
+ <linearGradient id="SVGID_69_" gradientUnits="userSpaceOnUse" x1="-275.6177" y1="-281.9995" x2="-271.3281" y2="-274.5698" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_69_)" d="M541.35,61.73c0.71-1.24,1.42-2.48,2.13-3.72c-0.71-1.17-1.43-2.34-2.14-3.51
+ c-1.43,0.06-2.85,0.12-4.28,0.19c-0.71,1.24-1.42,2.48-2.13,3.73c0.71,1.18,1.43,2.36,2.14,3.53
+ C538.5,61.88,539.92,61.81,541.35,61.73z"/>
+
+ <linearGradient id="SVGID_70_" gradientUnits="userSpaceOnUse" x1="-275.5815" y1="-292.6943" x2="-271.3096" y2="-285.2951" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_70_)" d="M541.32,51.04c0.71-1.24,1.42-2.47,2.13-3.7c-0.71-1.18-1.43-2.35-2.14-3.53
+ c-1.43,0.05-2.85,0.1-4.28,0.15c-0.71,1.24-1.42,2.47-2.12,3.71c0.72,1.19,1.43,2.37,2.14,3.55
+ C538.47,51.16,539.89,51.1,541.32,51.04z"/>
+
+ <linearGradient id="SVGID_71_" gradientUnits="userSpaceOnUse" x1="-275.5479" y1="-303.3892" x2="-271.2905" y2="-296.0153" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_71_)" d="M541.29,40.35c0.71-1.23,1.42-2.46,2.13-3.68c-0.71-1.18-1.43-2.36-2.14-3.55
+ c-1.43,0.04-2.85,0.08-4.28,0.12c-0.71,1.23-1.42,2.46-2.13,3.69c0.71,1.19,1.43,2.38,2.14,3.57
+ C538.44,40.45,539.87,40.4,541.29,40.35z"/>
+
+ <linearGradient id="SVGID_72_" gradientUnits="userSpaceOnUse" x1="-275.5142" y1="-314.0815" x2="-271.2734" y2="-306.7364" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_72_)" d="M541.27,29.66c0.71-1.22,1.42-2.44,2.12-3.66c-0.71-1.19-1.43-2.38-2.14-3.57
+ c-1.43,0.03-2.85,0.05-4.27,0.08c-0.71,1.22-1.42,2.45-2.13,3.67c0.71,1.2,1.43,2.39,2.14,3.59
+ C538.42,29.73,539.84,29.7,541.27,29.66z"/>
+
+ <linearGradient id="SVGID_73_" gradientUnits="userSpaceOnUse" x1="-275.4805" y1="-324.7773" x2="-271.2563" y2="-317.4609" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_73_)" d="M541.24,18.97c0.71-1.22,1.42-2.43,2.12-3.64c-0.71-1.19-1.43-2.39-2.14-3.59
+ c-1.43,0.01-2.85,0.03-4.27,0.04c-0.71,1.22-1.42,2.43-2.13,3.65c0.72,1.2,1.43,2.41,2.15,3.6
+ C538.39,19.01,539.81,18.99,541.24,18.97z"/>
+
+ <linearGradient id="SVGID_74_" gradientUnits="userSpaceOnUse" x1="-275.4487" y1="-335.4722" x2="-271.2402" y2="-328.1828" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_74_)" d="M541.21,8.28c0.71-1.21,1.42-2.42,2.13-3.62c-0.71-1.2-1.43-2.4-2.14-3.61
+ c-1.42,0-2.85,0-4.27,0.01c-0.71,1.21-1.42,2.42-2.12,3.64c0.71,1.21,1.43,2.42,2.14,3.62C538.36,8.3,539.79,8.29,541.21,8.28z"/>
+
+ <linearGradient id="SVGID_75_" gradientUnits="userSpaceOnUse" x1="-264.5215" y1="-264.936" x2="-260.1963" y2="-257.4446" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_75_)" d="M530.23,78.85c0.71-1.26,1.42-2.51,2.13-3.76c-0.71-1.18-1.43-2.35-2.14-3.53
+ c-1.43,0.07-2.85,0.14-4.28,0.21c-0.71,1.25-1.42,2.51-2.13,3.77c0.72,1.18,1.43,2.37,2.15,3.55
+ C527.38,79.01,528.8,78.93,530.23,78.85z"/>
+
+ <linearGradient id="SVGID_76_" gradientUnits="userSpaceOnUse" x1="-264.4883" y1="-275.7197" x2="-260.1782" y2="-268.2545" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_76_)" d="M530.21,68.07c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.18-1.43-2.36-2.15-3.54
+ c-1.43,0.06-2.85,0.12-4.28,0.18c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.19,1.43,2.38,2.15,3.57
+ C527.36,68.2,528.78,68.14,530.21,68.07z"/>
+
+ <linearGradient id="SVGID_77_" gradientUnits="userSpaceOnUse" x1="-264.4595" y1="-286.5088" x2="-260.1611" y2="-279.0638" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_77_)" d="M530.18,57.28c0.71-1.24,1.42-2.49,2.13-3.73c-0.72-1.18-1.43-2.37-2.15-3.56
+ c-1.43,0.05-2.85,0.1-4.28,0.15c-0.71,1.24-1.42,2.49-2.13,3.73c0.72,1.2,1.43,2.39,2.15,3.58
+ C527.33,57.4,528.76,57.34,530.18,57.28z"/>
+
+ <linearGradient id="SVGID_78_" gradientUnits="userSpaceOnUse" x1="-264.4253" y1="-297.2939" x2="-260.1421" y2="-289.8752" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_78_)" d="M530.16,46.5c0.71-1.24,1.42-2.48,2.13-3.71c-0.72-1.19-1.43-2.38-2.15-3.58
+ c-1.43,0.04-2.85,0.08-4.28,0.12c-0.71,1.24-1.42,2.48-2.13,3.72c0.71,1.2,1.43,2.4,2.14,3.6
+ C527.31,46.59,528.73,46.55,530.16,46.5z"/>
+
+ <linearGradient id="SVGID_79_" gradientUnits="userSpaceOnUse" x1="-264.395" y1="-308.0801" x2="-260.1265" y2="-300.6867" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_79_)" d="M530.13,35.72c0.71-1.23,1.42-2.47,2.13-3.7c-0.71-1.2-1.43-2.4-2.14-3.6
+ c-1.43,0.03-2.85,0.06-4.27,0.08c-0.71,1.23-1.42,2.47-2.13,3.7c0.72,1.21,1.43,2.41,2.15,3.61
+ C527.29,35.79,528.71,35.75,530.13,35.72z"/>
+
+ <linearGradient id="SVGID_80_" gradientUnits="userSpaceOnUse" x1="-264.3638" y1="-318.8662" x2="-260.1089" y2="-311.4966" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_80_)" d="M530.11,24.94c0.71-1.23,1.42-2.46,2.13-3.68c-0.71-1.2-1.43-2.41-2.14-3.61
+ c-1.43,0.02-2.85,0.04-4.27,0.05c-0.71,1.23-1.42,2.46-2.13,3.69c0.71,1.21,1.43,2.42,2.14,3.63
+ C527.26,24.99,528.68,24.96,530.11,24.94z"/>
+
+ <linearGradient id="SVGID_81_" gradientUnits="userSpaceOnUse" x1="-264.333" y1="-329.6528" x2="-260.0918" y2="-322.3069" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_81_)" d="M530.08,14.15c0.71-1.22,1.42-2.44,2.13-3.66c-0.71-1.21-1.43-2.42-2.14-3.63
+ c-1.42,0.01-2.85,0.02-4.27,0.02c-0.71,1.22-1.42,2.45-2.13,3.67c0.71,1.22,1.43,2.43,2.14,3.64
+ C527.23,14.18,528.66,14.17,530.08,14.15z"/>
+
+ <linearGradient id="SVGID_82_" gradientUnits="userSpaceOnUse" x1="-263.2588" y1="-338.6313" x2="-260.0757" y2="-333.118" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_82_)" d="M523.64-0.28c0.71,1.22,1.43,2.44,2.14,3.66c1.42,0,2.85-0.01,4.27-0.01
+ c0.71-1.22,1.42-2.43,2.13-3.65C529.34-0.28,526.49-0.28,523.64-0.28z"/>
+
+ <linearGradient id="SVGID_83_" gradientUnits="userSpaceOnUse" x1="-253.7207" y1="-259.4141" x2="-250.3975" y2="-253.658" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_83_)" d="M521.58,80.65c-0.72-1.19-1.43-2.38-2.15-3.57c-1.43,0.07-2.86,0.13-4.28,0.19
+ c-0.71,1.26-1.42,2.52-2.13,3.78C515.87,80.93,518.72,80.8,521.58,80.65z"/>
+
+ <linearGradient id="SVGID_84_" gradientUnits="userSpaceOnUse" x1="-253.7124" y1="-270.2632" x2="-249.3857" y2="-262.7692" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_84_)" d="M519.42,73.57c0.71-1.26,1.42-2.51,2.13-3.76c-0.72-1.19-1.43-2.39-2.15-3.58
+ c-1.43,0.06-2.85,0.11-4.28,0.17c-0.71,1.25-1.42,2.51-2.13,3.76c0.71,1.2,1.43,2.4,2.15,3.6C516.57,73.7,518,73.63,519.42,73.57z"
+ />
+
+ <linearGradient id="SVGID_85_" gradientUnits="userSpaceOnUse" x1="-253.6851" y1="-281.127" x2="-249.3691" y2="-273.6516" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_85_)" d="M519.4,62.71c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.2-1.43-2.4-2.14-3.6
+ c-1.43,0.05-2.85,0.1-4.28,0.14c-0.71,1.25-1.42,2.5-2.13,3.75c0.72,1.21,1.43,2.41,2.15,3.61
+ C516.54,62.82,517.97,62.77,519.4,62.71z"/>
+
+ <linearGradient id="SVGID_86_" gradientUnits="userSpaceOnUse" x1="-253.6572" y1="-291.9888" x2="-249.3545" y2="-284.5362" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_86_)" d="M519.38,51.85c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.2-1.43-2.4-2.14-3.61
+ c-1.43,0.04-2.85,0.08-4.28,0.11c-0.71,1.25-1.42,2.49-2.13,3.74c0.72,1.21,1.43,2.42,2.15,3.62
+ C516.52,51.94,517.95,51.9,519.38,51.85z"/>
+
+ <linearGradient id="SVGID_87_" gradientUnits="userSpaceOnUse" x1="-253.6299" y1="-302.8511" x2="-249.3389" y2="-295.4188" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_87_)" d="M519.36,40.99c0.71-1.24,1.42-2.48,2.13-3.72c-0.71-1.21-1.43-2.41-2.14-3.62
+ c-1.43,0.03-2.85,0.06-4.28,0.08c-0.71,1.24-1.42,2.48-2.13,3.73c0.71,1.21,1.43,2.43,2.15,3.64
+ C516.5,41.06,517.93,41.03,519.36,40.99z"/>
+
+ <linearGradient id="SVGID_88_" gradientUnits="userSpaceOnUse" x1="-253.5986" y1="-313.7134" x2="-249.3208" y2="-306.304" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_88_)" d="M519.33,30.13c0.71-1.24,1.42-2.47,2.13-3.71c-0.71-1.21-1.43-2.42-2.14-3.64
+ c-1.43,0.02-2.85,0.04-4.28,0.06c-0.71,1.24-1.42,2.47-2.13,3.71c0.71,1.22,1.43,2.43,2.14,3.65
+ C516.48,30.18,517.91,30.16,519.33,30.13z"/>
+
+ <linearGradient id="SVGID_89_" gradientUnits="userSpaceOnUse" x1="-253.5713" y1="-324.5762" x2="-249.3047" y2="-317.1862" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_89_)" d="M519.31,19.27c0.71-1.23,1.42-2.46,2.13-3.69c-0.71-1.22-1.43-2.43-2.14-3.65
+ c-1.42,0.01-2.85,0.02-4.27,0.03c-0.71,1.23-1.42,2.46-2.13,3.7c0.71,1.22,1.43,2.44,2.14,3.66
+ C516.46,19.31,517.88,19.29,519.31,19.27z"/>
+
+ <linearGradient id="SVGID_90_" gradientUnits="userSpaceOnUse" x1="-253.5449" y1="-335.4404" x2="-249.2891" y2="-328.0691" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_90_)" d="M519.29,8.41c0.71-1.23,1.42-2.45,2.12-3.68c-0.71-1.22-1.43-2.44-2.14-3.67c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.23-1.42,2.46-2.13,3.69c0.71,1.23,1.43,2.45,2.14,3.67C516.44,8.43,517.86,8.42,519.29,8.41z"/>
+
+ <linearGradient id="SVGID_91_" gradientUnits="userSpaceOnUse" x1="-242.5649" y1="-263.9795" x2="-238.2266" y2="-256.4652" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_91_)" d="M508.27,79.9c0.71-1.26,1.42-2.52,2.13-3.78c-0.72-1.2-1.43-2.41-2.15-3.62
+ c-1.43,0.05-2.86,0.1-4.28,0.15c-0.71,1.26-1.42,2.52-2.13,3.78c0.71,1.21,1.43,2.42,2.14,3.63
+ C505.41,80.01,506.84,79.96,508.27,79.9z"/>
+
+ <linearGradient id="SVGID_92_" gradientUnits="userSpaceOnUse" x1="-242.5405" y1="-274.9058" x2="-238.2139" y2="-267.4118" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_92_)" d="M508.25,68.97c0.71-1.26,1.42-2.51,2.13-3.77c-0.72-1.21-1.43-2.42-2.15-3.62
+ c-1.42,0.04-2.85,0.09-4.28,0.12c-0.71,1.25-1.42,2.51-2.13,3.76c0.71,1.21,1.43,2.43,2.15,3.64
+ C505.39,69.07,506.82,69.02,508.25,68.97z"/>
+
+ <linearGradient id="SVGID_93_" gradientUnits="userSpaceOnUse" x1="-242.5171" y1="-285.835" x2="-238.1987" y2="-278.3553" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_93_)" d="M508.23,58.05c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.21-1.43-2.42-2.15-3.64
+ c-1.42,0.04-2.85,0.07-4.28,0.1c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.22,1.43,2.44,2.15,3.65
+ C505.38,58.13,506.8,58.09,508.23,58.05z"/>
+
+ <linearGradient id="SVGID_94_" gradientUnits="userSpaceOnUse" x1="-242.4937" y1="-296.7627" x2="-238.186" y2="-289.3017" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_94_)" d="M508.21,47.12c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.21-1.43-2.43-2.14-3.65
+ c-1.43,0.03-2.85,0.06-4.28,0.08c-0.71,1.25-1.42,2.5-2.13,3.74c0.71,1.22,1.43,2.44,2.14,3.66
+ C505.36,47.19,506.78,47.15,508.21,47.12z"/>
+
+ <linearGradient id="SVGID_95_" gradientUnits="userSpaceOnUse" x1="-242.4692" y1="-307.6914" x2="-238.1714" y2="-300.2473" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_95_)" d="M508.19,36.2c0.71-1.25,1.42-2.49,2.13-3.73c-0.71-1.22-1.43-2.44-2.14-3.66
+ c-1.42,0.02-2.85,0.04-4.27,0.06c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.22,1.43,2.45,2.14,3.67
+ C505.34,36.25,506.77,36.22,508.19,36.2z"/>
+
+ <linearGradient id="SVGID_96_" gradientUnits="userSpaceOnUse" x1="-242.4463" y1="-318.6201" x2="-238.1582" y2="-311.1929" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_96_)" d="M508.17,25.27c0.71-1.24,1.42-2.48,2.13-3.72c-0.71-1.22-1.43-2.45-2.14-3.67
+ c-1.43,0.01-2.85,0.03-4.28,0.04c-0.71,1.24-1.42,2.48-2.13,3.72c0.71,1.23,1.43,2.46,2.14,3.68
+ C505.32,25.31,506.75,25.29,508.17,25.27z"/>
+
+ <linearGradient id="SVGID_97_" gradientUnits="userSpaceOnUse" x1="-242.4224" y1="-329.5483" x2="-238.1445" y2="-322.1389" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_97_)" d="M508.15,14.34c0.71-1.24,1.42-2.47,2.13-3.71c-0.71-1.23-1.43-2.46-2.14-3.69
+ c-1.42,0-2.85,0.01-4.27,0.01c-0.71,1.24-1.42,2.47-2.13,3.71c0.71,1.23,1.43,2.46,2.14,3.69
+ C505.3,14.37,506.73,14.35,508.15,14.34z"/>
+
+ <linearGradient id="SVGID_98_" gradientUnits="userSpaceOnUse" x1="-241.3369" y1="-338.6299" x2="-238.1338" y2="-333.0819" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_98_)" d="M501.72-0.28c0.71,1.24,1.43,2.47,2.14,3.7c1.43,0,2.85,0,4.27-0.01c0.71-1.23,1.42-2.47,2.13-3.7
+ C507.41-0.28,504.57-0.28,501.72-0.28z"/>
+
+ <linearGradient id="SVGID_99_" gradientUnits="userSpaceOnUse" x1="-231.75" y1="-258.5693" x2="-228.4551" y2="-252.8624" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_99_)" d="M499.6,81.57c-0.71-1.21-1.43-2.43-2.14-3.64c-1.43,0.04-2.86,0.08-4.28,0.12
+ c-0.71,1.26-1.43,2.52-2.14,3.78C493.89,81.75,496.75,81.67,499.6,81.57z"/>
+
+ <linearGradient id="SVGID_100_" gradientUnits="userSpaceOnUse" x1="-231.75" y1="-269.5381" x2="-227.415" y2="-262.0297" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_100_)" d="M497.46,74.38c0.71-1.26,1.42-2.52,2.13-3.77c-0.71-1.22-1.43-2.43-2.14-3.65
+ c-1.43,0.04-2.86,0.07-4.28,0.11c-0.71,1.26-1.42,2.51-2.13,3.77c0.71,1.22,1.43,2.45,2.14,3.67
+ C494.6,74.46,496.03,74.42,497.46,74.38z"/>
+
+ <linearGradient id="SVGID_101_" gradientUnits="userSpaceOnUse" x1="-231.7305" y1="-280.5166" x2="-227.4038" y2="-273.0226" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_101_)" d="M497.44,63.4c0.71-1.26,1.42-2.51,2.13-3.76c-0.71-1.22-1.43-2.44-2.14-3.66
+ c-1.43,0.03-2.85,0.06-4.28,0.09c-0.71,1.25-1.42,2.51-2.13,3.76c0.71,1.23,1.43,2.45,2.14,3.68
+ C494.58,63.47,496.01,63.44,497.44,63.4z"/>
+
+ <linearGradient id="SVGID_102_" gradientUnits="userSpaceOnUse" x1="-231.7104" y1="-291.4966" x2="-227.3921" y2="-284.017" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_102_)" d="M497.42,52.42c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.22-1.43-2.45-2.14-3.67
+ c-1.42,0.03-2.85,0.05-4.28,0.07c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.23,1.43,2.46,2.14,3.68
+ C494.57,52.48,496,52.45,497.42,52.42z"/>
+
+ <linearGradient id="SVGID_103_" gradientUnits="userSpaceOnUse" x1="-231.6929" y1="-302.4766" x2="-227.3818" y2="-295.0096" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_103_)" d="M497.4,41.44c0.71-1.25,1.42-2.5,2.13-3.75c-0.72-1.22-1.43-2.45-2.14-3.68
+ c-1.42,0.02-2.85,0.04-4.28,0.05c-0.71,1.25-1.43,2.5-2.13,3.75c0.71,1.23,1.43,2.46,2.14,3.69
+ C494.55,41.49,495.98,41.47,497.4,41.44z"/>
+
+ <linearGradient id="SVGID_104_" gradientUnits="userSpaceOnUse" x1="-231.6724" y1="-313.4556" x2="-227.3706" y2="-306.0047" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_104_)" d="M497.39,30.46c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.23-1.43-2.46-2.14-3.69
+ c-1.43,0.01-2.85,0.02-4.28,0.03c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.23,1.43,2.46,2.14,3.7
+ C494.54,30.5,495.96,30.48,497.39,30.46z"/>
+
+ <linearGradient id="SVGID_105_" gradientUnits="userSpaceOnUse" x1="-231.6548" y1="-324.4355" x2="-227.3584" y2="-316.994" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_105_)" d="M497.38,19.49c0.71-1.24,1.42-2.48,2.13-3.73c-0.71-1.23-1.43-2.46-2.14-3.7
+ c-1.42,0.01-2.85,0.01-4.28,0.02c-0.71,1.24-1.42,2.49-2.13,3.73c0.71,1.24,1.43,2.47,2.14,3.71
+ C494.52,19.51,495.95,19.5,497.38,19.49z"/>
+
+ <linearGradient id="SVGID_106_" gradientUnits="userSpaceOnUse" x1="-231.6353" y1="-335.4165" x2="-227.3472" y2="-327.9893" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_106_)" d="M497.36,8.51c0.71-1.24,1.42-2.48,2.13-3.71c-0.71-1.24-1.43-2.47-2.14-3.71
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.42,2.48-2.13,3.73c0.71,1.24,1.43,2.48,2.14,3.71C494.51,8.52,495.93,8.51,497.36,8.51z"/>
+
+ <linearGradient id="SVGID_107_" gradientUnits="userSpaceOnUse" x1="-220.5879" y1="-263.3618" x2="-216.251" y2="-255.8501" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_107_)" d="M486.29,80.58c0.71-1.26,1.43-2.52,2.14-3.78c-0.71-1.23-1.43-2.45-2.14-3.68
+ c-1.43,0.03-2.86,0.06-4.28,0.08c-0.71,1.26-1.42,2.51-2.14,3.77c0.72,1.23,1.43,2.46,2.14,3.69
+ C483.43,80.64,484.86,80.61,486.29,80.58z"/>
+
+ <linearGradient id="SVGID_108_" gradientUnits="userSpaceOnUse" x1="-220.5737" y1="-274.3813" x2="-216.2437" y2="-266.8814" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_108_)" d="M486.28,69.56c0.71-1.25,1.42-2.51,2.14-3.77c-0.72-1.23-1.43-2.46-2.15-3.69
+ c-1.43,0.03-2.85,0.05-4.28,0.07c-0.71,1.26-1.42,2.51-2.14,3.77c0.72,1.23,1.43,2.47,2.14,3.7
+ C483.42,69.62,484.85,69.59,486.28,69.56z"/>
+
+ <linearGradient id="SVGID_109_" gradientUnits="userSpaceOnUse" x1="-220.5591" y1="-285.3999" x2="-216.2354" y2="-277.911" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_109_)" d="M486.27,58.54c0.71-1.25,1.42-2.51,2.13-3.76c-0.71-1.23-1.43-2.46-2.14-3.69
+ c-1.43,0.02-2.85,0.04-4.28,0.05c-0.71,1.25-1.42,2.51-2.13,3.76c0.71,1.24,1.43,2.47,2.14,3.71
+ C483.41,58.59,484.84,58.57,486.27,58.54z"/>
+
+ <linearGradient id="SVGID_110_" gradientUnits="userSpaceOnUse" x1="-220.5444" y1="-296.4189" x2="-216.2271" y2="-288.941" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_110_)" d="M486.25,47.52c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.23-1.43-2.46-2.14-3.7
+ c-1.43,0.01-2.85,0.03-4.28,0.04c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.24,1.43,2.47,2.14,3.71
+ C483.4,47.56,484.83,47.54,486.25,47.52z"/>
+
+ <linearGradient id="SVGID_111_" gradientUnits="userSpaceOnUse" x1="-220.5317" y1="-307.4409" x2="-216.2197" y2="-299.9723" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_111_)" d="M486.24,36.5c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.24-1.43-2.47-2.14-3.71
+ c-1.43,0.01-2.85,0.02-4.28,0.03c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.24,1.43,2.48,2.14,3.71
+ C483.39,36.53,484.82,36.52,486.24,36.5z"/>
+
+ <linearGradient id="SVGID_112_" gradientUnits="userSpaceOnUse" x1="-220.5171" y1="-318.4595" x2="-216.2109" y2="-311.001" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_112_)" d="M486.23,25.49c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.24-1.43-2.47-2.14-3.71
+ c-1.42,0.01-2.85,0.01-4.27,0.02c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.24,1.43,2.48,2.14,3.72
+ C483.38,25.51,484.8,25.5,486.23,25.49z"/>
+
+ <linearGradient id="SVGID_113_" gradientUnits="userSpaceOnUse" x1="-220.5044" y1="-329.481" x2="-216.2031" y2="-322.0309" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_113_)" d="M486.22,14.47c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.24-1.43-2.48-2.14-3.72
+ c-1.42,0-2.85,0-4.28,0.01c-0.71,1.24-1.42,2.49-2.13,3.73c0.71,1.24,1.42,2.49,2.14,3.73C483.37,14.48,484.79,14.47,486.22,14.47z
+ "/>
+
+ <linearGradient id="SVGID_114_" gradientUnits="userSpaceOnUse" x1="-219.4209" y1="-338.6265" x2="-216.2041" y2="-333.0548" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_114_)" d="M479.79-0.28c0.71,1.24,1.43,2.49,2.14,3.73c1.42,0,2.85,0,4.27,0c0.71-1.24,1.42-2.49,2.13-3.73
+ C485.49-0.28,482.64-0.28,479.79-0.28z"/>
+
+ <linearGradient id="SVGID_115_" gradientUnits="userSpaceOnUse" x1="-209.7646" y1="-258.085" x2="-206.5078" y2="-252.444" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_115_)" d="M477.62,82.12c-0.72-1.23-1.43-2.47-2.15-3.7c-1.43,0.02-2.86,0.04-4.28,0.05
+ c-0.71,1.25-1.43,2.51-2.14,3.76C471.91,82.2,474.76,82.16,477.62,82.12z"/>
+
+ <linearGradient id="SVGID_116_" gradientUnits="userSpaceOnUse" x1="-209.7695" y1="-269.1221" x2="-205.4429" y2="-261.6281" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_116_)" d="M475.47,74.84c0.71-1.25,1.42-2.51,2.14-3.77c-0.71-1.23-1.43-2.47-2.14-3.71
+ c-1.43,0.02-2.86,0.03-4.28,0.04c-0.71,1.25-1.43,2.51-2.14,3.76c0.71,1.24,1.43,2.48,2.14,3.72
+ C472.62,74.88,474.04,74.86,475.47,74.84z"/>
+
+ <linearGradient id="SVGID_117_" gradientUnits="userSpaceOnUse" x1="-209.7617" y1="-280.1714" x2="-205.4375" y2="-272.6816" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_117_)" d="M475.46,63.8c0.71-1.25,1.43-2.51,2.14-3.76c-0.71-1.24-1.43-2.47-2.14-3.71
+ c-1.43,0.02-2.85,0.03-4.28,0.04c-0.71,1.25-1.42,2.5-2.14,3.75c0.72,1.24,1.43,2.48,2.14,3.72
+ C472.61,63.83,474.04,63.81,475.46,63.8z"/>
+
+ <linearGradient id="SVGID_118_" gradientUnits="userSpaceOnUse" x1="-209.7529" y1="-291.2163" x2="-205.4326" y2="-283.7333" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_118_)" d="M475.46,52.75c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.24-1.43-2.48-2.14-3.72
+ c-1.43,0.01-2.85,0.02-4.28,0.03c-0.71,1.25-1.42,2.5-2.14,3.75c0.71,1.24,1.43,2.48,2.14,3.73
+ C472.61,52.77,474.03,52.76,475.46,52.75z"/>
+
+ <linearGradient id="SVGID_119_" gradientUnits="userSpaceOnUse" x1="-209.7437" y1="-302.2632" x2="-205.4272" y2="-294.787" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_119_)" d="M475.45,41.7c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.24-1.43-2.48-2.14-3.72
+ c-1.43,0.01-2.85,0.02-4.28,0.02c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.24,1.43,2.49,2.14,3.73
+ C472.6,41.72,474.02,41.71,475.45,41.7z"/>
+
+ <linearGradient id="SVGID_120_" gradientUnits="userSpaceOnUse" x1="-209.7354" y1="-313.3101" x2="-205.4229" y2="-305.8406" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_120_)" d="M475.44,30.66c0.71-1.25,1.42-2.5,2.13-3.75c-0.71-1.24-1.43-2.48-2.14-3.73
+ c-1.43,0.01-2.85,0.01-4.28,0.02c-0.71,1.25-1.42,2.5-2.13,3.75c0.71,1.24,1.43,2.49,2.14,3.73
+ C472.59,30.67,474.02,30.66,475.44,30.66z"/>
+
+ <linearGradient id="SVGID_121_" gradientUnits="userSpaceOnUse" x1="-209.7261" y1="-324.355" x2="-205.417" y2="-316.8914" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_121_)" d="M475.44,19.61c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.24-1.43-2.49-2.14-3.73
+ c-1.43,0-2.85,0.01-4.27,0.01c-0.71,1.25-1.42,2.5-2.14,3.74c0.71,1.25,1.43,2.49,2.14,3.73
+ C472.59,19.62,474.01,19.62,475.44,19.61z"/>
+
+ <linearGradient id="SVGID_122_" gradientUnits="userSpaceOnUse" x1="-209.7183" y1="-335.4033" x2="-205.4121" y2="-327.9449" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_122_)" d="M475.43,8.56c0.71-1.25,1.42-2.49,2.13-3.74c-0.71-1.24-1.43-2.49-2.14-3.73
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.43,2.49,2.14,3.74C472.58,8.57,474,8.57,475.43,8.56z"/>
+
+ <linearGradient id="SVGID_123_" gradientUnits="userSpaceOnUse" x1="90.915" y1="-257.9634" x2="94.127" y2="-252.4002" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_123_)" d="M176.95,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.28-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C171.23,82.27,174.09,82.28,176.95,82.29z"/>
+
+ <linearGradient id="SVGID_124_" gradientUnits="userSpaceOnUse" x1="90.9062" y1="-269.0225" x2="95.2104" y2="-261.5674" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_124_)" d="M174.8,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.86-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C171.95,74.95,173.38,74.96,174.8,74.96
+ z"/>
+
+ <linearGradient id="SVGID_125_" gradientUnits="userSpaceOnUse" x1="90.9033" y1="-280.0854" x2="95.209" y2="-272.6278" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_125_)" d="M174.8,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C171.95,63.89,173.38,63.89,174.8,63.9z"/>
+
+ <linearGradient id="SVGID_126_" gradientUnits="userSpaceOnUse" x1="90.9009" y1="-291.1475" x2="95.2061" y2="-283.6907" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_126_)" d="M174.81,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C171.95,52.83,173.38,52.83,174.81,52.83z"/>
+
+ <linearGradient id="SVGID_127_" gradientUnits="userSpaceOnUse" x1="90.8984" y1="-302.2114" x2="95.2056" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_127_)" d="M174.81,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C171.96,41.77,173.38,41.77,174.81,41.77z"
+ />
+
+ <linearGradient id="SVGID_128_" gradientUnits="userSpaceOnUse" x1="90.897" y1="-313.2734" x2="95.2036" y2="-305.8141" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_128_)" d="M174.81,30.71c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C171.96,30.7,173.38,30.71,174.81,30.71z"/>
+
+ <linearGradient id="SVGID_129_" gradientUnits="userSpaceOnUse" x1="90.8945" y1="-324.3364" x2="95.2026" y2="-316.8746" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_129_)" d="M174.81,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C171.96,19.64,173.38,19.64,174.81,19.64z"/>
+
+ <linearGradient id="SVGID_130_" gradientUnits="userSpaceOnUse" x1="90.8911" y1="-335.4014" x2="95.1997" y2="-327.9387" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_130_)" d="M174.81,8.58c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C171.96,8.58,173.39,8.58,174.81,8.58z"/>
+
+ <linearGradient id="SVGID_131_" gradientUnits="userSpaceOnUse" x1="102.0923" y1="-263.147" x2="106.3779" y2="-255.724" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_131_)" d="M163.63,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.28-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C160.77,80.8,162.2,80.82,163.63,80.83z"/>
+
+ <linearGradient id="SVGID_132_" gradientUnits="userSpaceOnUse" x1="102.0825" y1="-274.1987" x2="106.3711" y2="-266.7707" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_132_)" d="M163.63,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C160.78,69.75,162.21,69.77,163.63,69.78z"/>
+
+ <linearGradient id="SVGID_133_" gradientUnits="userSpaceOnUse" x1="102.0747" y1="-285.251" x2="106.3657" y2="-277.8187" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_133_)" d="M163.64,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C160.79,58.7,162.21,58.72,163.64,58.73z"/>
+
+ <linearGradient id="SVGID_134_" gradientUnits="userSpaceOnUse" x1="102.0659" y1="-296.3032" x2="106.3608" y2="-288.8642" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_134_)" d="M163.64,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.14,3.76
+ C160.79,47.66,162.22,47.67,163.64,47.67z"/>
+
+ <linearGradient id="SVGID_135_" gradientUnits="userSpaceOnUse" x1="102.0581" y1="-307.3564" x2="106.356" y2="-299.9124" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_135_)" d="M163.65,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C160.8,36.61,162.22,36.61,163.65,36.62z"/>
+
+ <linearGradient id="SVGID_136_" gradientUnits="userSpaceOnUse" x1="102.0498" y1="-318.4067" x2="106.3501" y2="-310.9584" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_136_)" d="M163.66,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C160.81,25.56,162.23,25.56,163.66,25.57z"/>
+
+ <linearGradient id="SVGID_137_" gradientUnits="userSpaceOnUse" x1="102.041" y1="-329.4595" x2="106.3452" y2="-322.0044" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_137_)" d="M163.66,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C160.81,14.51,162.24,14.51,163.66,14.51z"/>
+
+ <linearGradient id="SVGID_138_" gradientUnits="userSpaceOnUse" x1="103.1108" y1="-338.6255" x2="106.3306" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_138_)" d="M157.26-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C162.96-0.28,160.11-0.28,157.26-0.28z"/>
+
+ <linearGradient id="SVGID_139_" gradientUnits="userSpaceOnUse" x1="69.4688" y1="-257.9639" x2="72.6816" y2="-252.399" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_139_)" d="M198.39,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C192.68,82.27,195.54,82.28,198.39,82.29z"/>
+
+ <linearGradient id="SVGID_140_" gradientUnits="userSpaceOnUse" x1="69.4604" y1="-269.0225" x2="73.7646" y2="-261.5674" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_140_)" d="M196.25,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C193.39,74.95,194.82,74.96,196.25,74.96z"/>
+
+ <linearGradient id="SVGID_141_" gradientUnits="userSpaceOnUse" x1="69.4565" y1="-280.0859" x2="73.7627" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_141_)" d="M196.25,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C193.4,63.89,194.82,63.89,196.25,63.9z"/>
+
+ <linearGradient id="SVGID_142_" gradientUnits="userSpaceOnUse" x1="69.4551" y1="-291.1479" x2="73.7607" y2="-283.6903" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_142_)" d="M196.25,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C193.4,52.83,194.83,52.83,196.25,52.83
+ z"/>
+
+ <linearGradient id="SVGID_143_" gradientUnits="userSpaceOnUse" x1="69.4531" y1="-302.2114" x2="73.7603" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_143_)" d="M196.25,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C193.4,41.77,194.83,41.77,196.25,41.77z"
+ />
+
+ <linearGradient id="SVGID_144_" gradientUnits="userSpaceOnUse" x1="69.4507" y1="-313.2739" x2="73.7578" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_144_)" d="M196.26,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C193.4,30.7,194.83,30.71,196.26,30.71z"/>
+
+ <linearGradient id="SVGID_145_" gradientUnits="userSpaceOnUse" x1="69.4487" y1="-324.3374" x2="73.7573" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_145_)" d="M196.26,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C193.41,19.64,194.83,19.64,196.26,19.64z"/>
+
+ <linearGradient id="SVGID_146_" gradientUnits="userSpaceOnUse" x1="69.4448" y1="-335.4019" x2="73.7539" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_146_)" d="M196.26,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.43,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C193.41,8.58,194.83,8.58,196.26,8.58z"/>
+
+ <linearGradient id="SVGID_147_" gradientUnits="userSpaceOnUse" x1="80.647" y1="-263.147" x2="84.9326" y2="-255.724" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_147_)" d="M185.07,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.28-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C182.22,80.8,183.64,80.82,185.07,80.83z"/>
+
+ <linearGradient id="SVGID_148_" gradientUnits="userSpaceOnUse" x1="80.6372" y1="-274.1987" x2="84.9258" y2="-266.7707" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_148_)" d="M185.08,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.76
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C182.22,69.75,183.65,69.77,185.08,69.78z"/>
+
+ <linearGradient id="SVGID_149_" gradientUnits="userSpaceOnUse" x1="80.6304" y1="-285.251" x2="84.9219" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_149_)" d="M185.08,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C182.23,58.7,183.66,58.72,185.08,58.73z"/>
+
+ <linearGradient id="SVGID_150_" gradientUnits="userSpaceOnUse" x1="80.6216" y1="-296.3037" x2="84.917" y2="-288.8638" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_150_)" d="M185.09,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C182.24,47.66,183.67,47.67,185.09,47.67z"/>
+
+ <linearGradient id="SVGID_151_" gradientUnits="userSpaceOnUse" x1="80.6123" y1="-307.356" x2="84.9102" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_151_)" d="M185.1,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C182.24,36.61,183.67,36.61,185.1,36.62z"/>
+
+ <linearGradient id="SVGID_152_" gradientUnits="userSpaceOnUse" x1="80.604" y1="-318.4067" x2="84.9043" y2="-310.9584" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_152_)" d="M185.1,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74C182.25,25.56,183.68,25.56,185.1,25.57
+ z"/>
+
+ <linearGradient id="SVGID_153_" gradientUnits="userSpaceOnUse" x1="80.5957" y1="-329.4595" x2="84.8999" y2="-322.0044" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_153_)" d="M185.11,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C182.26,14.51,183.68,14.51,185.11,14.51z"/>
+
+ <linearGradient id="SVGID_154_" gradientUnits="userSpaceOnUse" x1="81.665" y1="-338.6255" x2="84.8848" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_154_)" d="M178.71-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C184.4-0.28,181.56-0.28,178.71-0.28z"/>
+
+ <linearGradient id="SVGID_155_" gradientUnits="userSpaceOnUse" x1="48.0234" y1="-257.9639" x2="51.2363" y2="-252.399" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_155_)" d="M219.84,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C214.12,82.27,216.98,82.28,219.84,82.29z"/>
+
+ <linearGradient id="SVGID_156_" gradientUnits="userSpaceOnUse" x1="48.0156" y1="-269.0225" x2="52.3203" y2="-261.5665" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_156_)" d="M217.7,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C214.84,74.95,216.27,74.96,217.7,74.96
+ z"/>
+
+ <linearGradient id="SVGID_157_" gradientUnits="userSpaceOnUse" x1="48.0117" y1="-280.0859" x2="52.3179" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_157_)" d="M217.7,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C214.84,63.89,216.27,63.89,217.7,63.9z"/>
+
+ <linearGradient id="SVGID_158_" gradientUnits="userSpaceOnUse" x1="48.0107" y1="-291.1484" x2="52.3169" y2="-283.69" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_158_)" d="M217.7,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C214.84,52.83,216.27,52.83,217.7,52.83
+ z"/>
+
+ <linearGradient id="SVGID_159_" gradientUnits="userSpaceOnUse" x1="48.0078" y1="-302.2109" x2="52.3149" y2="-294.7508" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_159_)" d="M217.7,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C214.85,41.77,216.27,41.77,217.7,41.77z"
+ />
+
+ <linearGradient id="SVGID_160_" gradientUnits="userSpaceOnUse" x1="48.0054" y1="-313.2739" x2="52.3125" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_160_)" d="M217.7,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C214.85,30.7,216.28,30.71,217.7,30.71z"/>
+
+ <linearGradient id="SVGID_161_" gradientUnits="userSpaceOnUse" x1="48.0029" y1="-324.3374" x2="52.3115" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_161_)" d="M217.7,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C214.85,19.64,216.28,19.64,217.7,19.64z"/>
+
+ <linearGradient id="SVGID_162_" gradientUnits="userSpaceOnUse" x1="47.9995" y1="-335.4019" x2="52.3086" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_162_)" d="M217.7,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.43,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C214.85,8.58,216.28,8.58,217.7,8.58z"/>
+
+ <linearGradient id="SVGID_163_" gradientUnits="userSpaceOnUse" x1="59.2012" y1="-263.1475" x2="63.4878" y2="-255.7228" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_163_)" d="M206.52,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C203.66,80.8,205.09,80.82,206.52,80.83z"/>
+
+ <linearGradient id="SVGID_164_" gradientUnits="userSpaceOnUse" x1="59.1914" y1="-274.1997" x2="63.481" y2="-266.77" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_164_)" d="M206.53,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.29-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C203.67,69.75,205.1,69.77,206.53,69.78z"/>
+
+ <linearGradient id="SVGID_165_" gradientUnits="userSpaceOnUse" x1="59.1846" y1="-285.251" x2="63.4761" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_165_)" d="M206.53,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C203.68,58.7,205.1,58.72,206.53,58.73z"/>
+
+ <linearGradient id="SVGID_166_" gradientUnits="userSpaceOnUse" x1="59.1753" y1="-296.3032" x2="63.4707" y2="-288.8633" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_166_)" d="M206.54,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C203.68,47.66,205.11,47.67,206.54,47.67z"/>
+
+ <linearGradient id="SVGID_167_" gradientUnits="userSpaceOnUse" x1="59.1665" y1="-307.3555" x2="63.4644" y2="-299.9114" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_167_)" d="M206.54,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C203.69,36.61,205.12,36.61,206.54,36.62z"/>
+
+ <linearGradient id="SVGID_168_" gradientUnits="userSpaceOnUse" x1="59.1582" y1="-318.4077" x2="63.459" y2="-310.9586" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_168_)" d="M206.55,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74C203.7,25.56,205.12,25.56,206.55,25.57
+ z"/>
+
+ <linearGradient id="SVGID_169_" gradientUnits="userSpaceOnUse" x1="59.1489" y1="-329.46" x2="63.4536" y2="-322.004" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_169_)" d="M206.55,14.51c0.71-1.24,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C203.7,14.51,205.13,14.51,206.55,14.51z"/>
+
+ <linearGradient id="SVGID_170_" gradientUnits="userSpaceOnUse" x1="60.2197" y1="-338.6255" x2="63.4395" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_170_)" d="M200.15-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C205.85-0.28,203-0.28,200.15-0.28z"/>
+
+ <linearGradient id="SVGID_171_" gradientUnits="userSpaceOnUse" x1="26.5781" y1="-257.9639" x2="29.791" y2="-252.399" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_171_)" d="M241.28,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C235.57,82.27,238.43,82.28,241.28,82.29z"/>
+
+ <linearGradient id="SVGID_172_" gradientUnits="userSpaceOnUse" x1="26.5708" y1="-269.0229" x2="30.8755" y2="-261.567" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_172_)" d="M239.14,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C236.29,74.95,237.71,74.96,239.14,74.96z"/>
+
+ <linearGradient id="SVGID_173_" gradientUnits="userSpaceOnUse" x1="26.5664" y1="-280.0859" x2="30.8726" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_173_)" d="M239.14,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C236.29,63.89,237.71,63.89,239.14,63.9z"
+ />
+
+ <linearGradient id="SVGID_174_" gradientUnits="userSpaceOnUse" x1="26.5654" y1="-291.1484" x2="30.8716" y2="-283.69" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_174_)" d="M239.14,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C236.29,52.83,237.72,52.83,239.14,52.83z"/>
+
+ <linearGradient id="SVGID_175_" gradientUnits="userSpaceOnUse" x1="26.5625" y1="-302.2109" x2="30.8696" y2="-294.7508" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_175_)" d="M239.14,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C236.29,41.77,237.72,41.77,239.14,41.77z"
+ />
+
+ <linearGradient id="SVGID_176_" gradientUnits="userSpaceOnUse" x1="26.5601" y1="-313.2739" x2="30.8672" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_176_)" d="M239.15,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C236.29,30.7,237.72,30.71,239.15,30.71z"/>
+
+ <linearGradient id="SVGID_177_" gradientUnits="userSpaceOnUse" x1="26.5576" y1="-324.3374" x2="30.8662" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_177_)" d="M239.15,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C236.3,19.64,237.72,19.64,239.15,19.64z"/>
+
+ <linearGradient id="SVGID_178_" gradientUnits="userSpaceOnUse" x1="26.5547" y1="-335.4023" x2="30.8638" y2="-327.9388" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_178_)" d="M239.15,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.43,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C236.3,8.58,237.72,8.58,239.15,8.58z"/>
+
+ <linearGradient id="SVGID_179_" gradientUnits="userSpaceOnUse" x1="37.7559" y1="-263.1475" x2="42.0425" y2="-255.7228" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_179_)" d="M227.96,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C225.11,80.8,226.54,80.82,227.96,80.83z"/>
+
+ <linearGradient id="SVGID_180_" gradientUnits="userSpaceOnUse" x1="37.7461" y1="-274.1997" x2="42.0356" y2="-266.77" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_180_)" d="M227.97,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.29-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C225.11,69.75,226.54,69.77,227.97,69.78z"/>
+
+ <linearGradient id="SVGID_181_" gradientUnits="userSpaceOnUse" x1="37.7393" y1="-285.251" x2="42.0308" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_181_)" d="M227.98,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C225.12,58.7,226.55,58.72,227.98,58.73z"/>
+
+ <linearGradient id="SVGID_182_" gradientUnits="userSpaceOnUse" x1="37.73" y1="-296.3032" x2="42.0254" y2="-288.8633" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_182_)" d="M227.98,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C225.13,47.66,226.56,47.67,227.98,47.67z"/>
+
+ <linearGradient id="SVGID_183_" gradientUnits="userSpaceOnUse" x1="37.7207" y1="-307.3555" x2="42.0186" y2="-299.9114" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_183_)" d="M227.99,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C225.13,36.61,226.56,36.61,227.99,36.62z"/>
+
+ <linearGradient id="SVGID_184_" gradientUnits="userSpaceOnUse" x1="37.7129" y1="-318.4077" x2="42.0137" y2="-310.9586" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_184_)" d="M227.99,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C225.14,25.56,226.57,25.56,227.99,25.57z"/>
+
+ <linearGradient id="SVGID_185_" gradientUnits="userSpaceOnUse" x1="37.7046" y1="-329.459" x2="42.0088" y2="-322.0039" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_185_)" d="M228,14.51c0.71-1.24,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C225.15,14.51,226.57,14.51,228,14.51z"/>
+
+ <linearGradient id="SVGID_186_" gradientUnits="userSpaceOnUse" x1="38.7744" y1="-338.6255" x2="41.9941" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_186_)" d="M221.6-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C227.29-0.28,224.45-0.28,221.6-0.28z"/>
+
+ <linearGradient id="SVGID_187_" gradientUnits="userSpaceOnUse" x1="5.1328" y1="-257.9639" x2="8.3452" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_187_)" d="M262.73,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C257.02,82.27,259.87,82.28,262.73,82.29z"/>
+
+ <linearGradient id="SVGID_188_" gradientUnits="userSpaceOnUse" x1="5.1255" y1="-269.0229" x2="9.4302" y2="-261.567" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_188_)" d="M260.59,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C257.73,74.95,259.16,74.96,260.59,74.96z"/>
+
+ <linearGradient id="SVGID_189_" gradientUnits="userSpaceOnUse" x1="5.1216" y1="-280.0859" x2="9.4277" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_189_)" d="M260.59,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C257.73,63.89,259.16,63.89,260.59,63.9z"
+ />
+
+ <linearGradient id="SVGID_190_" gradientUnits="userSpaceOnUse" x1="5.1201" y1="-291.1484" x2="9.4263" y2="-283.69" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_190_)" d="M260.59,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C257.73,52.83,259.16,52.83,260.59,52.83z"/>
+
+ <linearGradient id="SVGID_191_" gradientUnits="userSpaceOnUse" x1="5.1172" y1="-302.2114" x2="9.4243" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_191_)" d="M260.59,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C257.74,41.77,259.16,41.77,260.59,41.77z"
+ />
+
+ <linearGradient id="SVGID_192_" gradientUnits="userSpaceOnUse" x1="5.1143" y1="-313.2739" x2="9.4214" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_192_)" d="M260.59,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C257.74,30.7,259.17,30.71,260.59,30.71z"/>
+
+ <linearGradient id="SVGID_193_" gradientUnits="userSpaceOnUse" x1="5.1123" y1="-324.3374" x2="9.4209" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_193_)" d="M260.59,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C257.74,19.64,259.17,19.64,260.59,19.64z"/>
+
+ <linearGradient id="SVGID_194_" gradientUnits="userSpaceOnUse" x1="5.1094" y1="-335.4019" x2="9.4185" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_194_)" d="M260.59,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.5-2.13,3.74c0.71,1.25,1.42,2.49,2.13,3.74C257.74,8.58,259.17,8.58,260.59,8.58z"/>
+
+ <linearGradient id="SVGID_195_" gradientUnits="userSpaceOnUse" x1="16.311" y1="-263.1479" x2="20.5977" y2="-255.7233" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_195_)" d="M249.41,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C246.55,80.8,247.98,80.82,249.41,80.83z"/>
+
+ <linearGradient id="SVGID_196_" gradientUnits="userSpaceOnUse" x1="16.3008" y1="-274.1997" x2="20.5903" y2="-266.77" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_196_)" d="M249.42,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.29-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C246.56,69.75,247.99,69.77,249.42,69.78z"/>
+
+ <linearGradient id="SVGID_197_" gradientUnits="userSpaceOnUse" x1="16.2935" y1="-285.251" x2="20.585" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_197_)" d="M249.42,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C246.57,58.7,247.99,58.72,249.42,58.73z"/>
+
+ <linearGradient id="SVGID_198_" gradientUnits="userSpaceOnUse" x1="16.2842" y1="-296.3032" x2="20.5796" y2="-288.8633" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_198_)" d="M249.43,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C246.57,47.66,248,47.67,249.43,47.67z"/>
+
+ <linearGradient id="SVGID_199_" gradientUnits="userSpaceOnUse" x1="16.2764" y1="-307.356" x2="20.5742" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_199_)" d="M249.43,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C246.58,36.61,248.01,36.61,249.43,36.62z"/>
+
+ <linearGradient id="SVGID_200_" gradientUnits="userSpaceOnUse" x1="16.2686" y1="-318.4067" x2="20.5688" y2="-310.9584" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_200_)" d="M249.44,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C246.59,25.56,248.01,25.56,249.44,25.57z"/>
+
+ <linearGradient id="SVGID_201_" gradientUnits="userSpaceOnUse" x1="16.2598" y1="-329.4595" x2="20.564" y2="-322.0044" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_201_)" d="M249.44,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C246.6,14.51,248.02,14.51,249.44,14.51z"/>
+
+ <linearGradient id="SVGID_202_" gradientUnits="userSpaceOnUse" x1="17.3291" y1="-338.6255" x2="20.5488" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_202_)" d="M243.04-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C248.74-0.28,245.89-0.28,243.04-0.28z"/>
+
+ <linearGradient id="SVGID_203_" gradientUnits="userSpaceOnUse" x1="-16.3125" y1="-257.9639" x2="-13.1001" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_203_)" d="M284.17,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C278.46,82.27,281.32,82.28,284.17,82.29z"/>
+
+ <linearGradient id="SVGID_204_" gradientUnits="userSpaceOnUse" x1="-16.3208" y1="-269.0225" x2="-12.0166" y2="-261.5674" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_204_)" d="M282.03,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C279.18,74.95,280.61,74.96,282.03,74.96z"/>
+
+ <linearGradient id="SVGID_205_" gradientUnits="userSpaceOnUse" x1="-16.3237" y1="-280.0859" x2="-12.0176" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_205_)" d="M282.03,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C279.18,63.89,280.61,63.89,282.03,63.9z"
+ />
+
+ <linearGradient id="SVGID_206_" gradientUnits="userSpaceOnUse" x1="-16.3257" y1="-291.1484" x2="-12.02" y2="-283.6908" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_206_)" d="M282.03,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C279.18,52.83,280.61,52.83,282.03,52.83z"/>
+
+ <linearGradient id="SVGID_207_" gradientUnits="userSpaceOnUse" x1="-16.3281" y1="-302.2114" x2="-12.021" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_207_)" d="M282.04,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C279.18,41.77,280.61,41.77,282.04,41.77z"
+ />
+
+ <linearGradient id="SVGID_208_" gradientUnits="userSpaceOnUse" x1="-16.3296" y1="-313.2734" x2="-12.0229" y2="-305.8141" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_208_)" d="M282.04,30.71c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C279.19,30.7,280.61,30.71,282.04,30.71z"/>
+
+ <linearGradient id="SVGID_209_" gradientUnits="userSpaceOnUse" x1="-16.3325" y1="-324.3364" x2="-12.0244" y2="-316.8746" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_209_)" d="M282.04,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C279.19,19.64,280.61,19.64,282.04,19.64z"/>
+
+ <linearGradient id="SVGID_210_" gradientUnits="userSpaceOnUse" x1="-16.3354" y1="-335.4014" x2="-12.0269" y2="-327.9387" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_210_)" d="M282.04,8.58c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C279.19,8.58,280.62,8.58,282.04,8.58z"/>
+
+ <linearGradient id="SVGID_211_" gradientUnits="userSpaceOnUse" x1="-5.1348" y1="-263.1465" x2="-0.8486" y2="-255.7227" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_211_)" d="M270.86,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.28-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C268,80.8,269.43,80.82,270.86,80.83z"/>
+
+ <linearGradient id="SVGID_212_" gradientUnits="userSpaceOnUse" x1="-5.144" y1="-274.1987" x2="-0.855" y2="-266.7699" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_212_)" d="M270.86,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.13,3.76
+ C268,69.75,269.43,69.77,270.86,69.78z"/>
+
+ <linearGradient id="SVGID_213_" gradientUnits="userSpaceOnUse" x1="-5.1514" y1="-285.251" x2="-0.8599" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_213_)" d="M270.87,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.13,3.76
+ C268.01,58.7,269.44,58.72,270.87,58.73z"/>
+
+ <linearGradient id="SVGID_214_" gradientUnits="userSpaceOnUse" x1="-5.1597" y1="-296.3037" x2="-0.8643" y2="-288.8638" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_214_)" d="M270.87,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.76
+ C268.02,47.66,269.45,47.67,270.87,47.67z"/>
+
+ <linearGradient id="SVGID_215_" gradientUnits="userSpaceOnUse" x1="-5.1685" y1="-307.3564" x2="-0.8706" y2="-299.9124" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_215_)" d="M270.88,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C268.03,36.61,269.45,36.61,270.88,36.62z"/>
+
+ <linearGradient id="SVGID_216_" gradientUnits="userSpaceOnUse" x1="-5.1768" y1="-318.4067" x2="-0.8765" y2="-310.9584" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_216_)" d="M270.88,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C268.03,25.56,269.46,25.56,270.88,25.57z"/>
+
+ <linearGradient id="SVGID_217_" gradientUnits="userSpaceOnUse" x1="-5.186" y1="-329.4595" x2="-0.8818" y2="-322.0044" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_217_)" d="M270.89,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C268.04,14.51,269.46,14.51,270.89,14.51z"/>
+
+ <linearGradient id="SVGID_218_" gradientUnits="userSpaceOnUse" x1="-4.1157" y1="-338.6255" x2="-0.896" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_218_)" d="M264.49-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C270.19-0.28,267.34-0.28,264.49-0.28z"/>
+
+ <linearGradient id="SVGID_219_" gradientUnits="userSpaceOnUse" x1="-37.7573" y1="-257.9629" x2="-34.5454" y2="-252.3997" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_219_)" d="M305.62,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.28-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C299.9,82.27,302.76,82.28,305.62,82.29z"/>
+
+ <linearGradient id="SVGID_220_" gradientUnits="userSpaceOnUse" x1="-37.7656" y1="-269.0225" x2="-33.4614" y2="-261.5674" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_220_)" d="M303.47,74.96c0.72-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C300.62,74.95,302.05,74.96,303.47,74.96z"/>
+
+ <linearGradient id="SVGID_221_" gradientUnits="userSpaceOnUse" x1="-37.7686" y1="-280.0854" x2="-33.4629" y2="-272.6278" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_221_)" d="M303.48,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C300.62,63.89,302.05,63.89,303.48,63.9z"
+ />
+
+ <linearGradient id="SVGID_222_" gradientUnits="userSpaceOnUse" x1="-37.7705" y1="-291.1475" x2="-33.4653" y2="-283.6907" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_222_)" d="M303.48,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C300.62,52.83,302.05,52.83,303.48,52.83z"/>
+
+ <linearGradient id="SVGID_223_" gradientUnits="userSpaceOnUse" x1="-37.7734" y1="-302.2114" x2="-33.4663" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_223_)" d="M303.48,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C300.63,41.77,302.05,41.77,303.48,41.77z"
+ />
+
+ <linearGradient id="SVGID_224_" gradientUnits="userSpaceOnUse" x1="-37.7749" y1="-313.2734" x2="-33.4683" y2="-305.8141" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_224_)" d="M303.48,30.71c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C300.63,30.7,302.06,30.71,303.48,30.71z"/>
+
+ <linearGradient id="SVGID_225_" gradientUnits="userSpaceOnUse" x1="-37.7778" y1="-324.3364" x2="-33.4697" y2="-316.8746" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_225_)" d="M303.48,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C300.63,19.64,302.06,19.64,303.48,19.64z"/>
+
+ <linearGradient id="SVGID_226_" gradientUnits="userSpaceOnUse" x1="-37.7808" y1="-335.4014" x2="-33.4722" y2="-327.9387" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_226_)" d="M303.48,8.58c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C300.63,8.58,302.06,8.58,303.48,8.58z"/>
+
+ <linearGradient id="SVGID_227_" gradientUnits="userSpaceOnUse" x1="-26.5801" y1="-263.1465" x2="-22.2944" y2="-255.7235" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_227_)" d="M292.3,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.28-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C289.44,80.8,290.87,80.82,292.3,80.83z"/>
+
+ <linearGradient id="SVGID_228_" gradientUnits="userSpaceOnUse" x1="-26.5898" y1="-274.1987" x2="-22.3013" y2="-266.7707" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_228_)" d="M292.31,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.14,3.76
+ C289.45,69.75,290.88,69.77,292.31,69.78z"/>
+
+ <linearGradient id="SVGID_229_" gradientUnits="userSpaceOnUse" x1="-26.5967" y1="-285.251" x2="-22.3057" y2="-277.8187" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_229_)" d="M292.31,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.14,3.76
+ C289.46,58.7,290.88,58.72,292.31,58.73z"/>
+
+ <linearGradient id="SVGID_230_" gradientUnits="userSpaceOnUse" x1="-26.606" y1="-296.3032" x2="-22.311" y2="-288.8642" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_230_)" d="M292.32,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.14,3.76
+ C289.46,47.66,290.89,47.67,292.32,47.67z"/>
+
+ <linearGradient id="SVGID_231_" gradientUnits="userSpaceOnUse" x1="-26.6147" y1="-307.356" x2="-22.3169" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_231_)" d="M292.32,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C289.47,36.61,290.9,36.61,292.32,36.62z"/>
+
+ <linearGradient id="SVGID_232_" gradientUnits="userSpaceOnUse" x1="-26.623" y1="-318.4062" x2="-22.3232" y2="-310.9588" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_232_)" d="M292.33,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.27-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.74C289.48,25.56,290.9,25.56,292.33,25.57
+ z"/>
+
+ <linearGradient id="SVGID_233_" gradientUnits="userSpaceOnUse" x1="-26.6309" y1="-329.4595" x2="-22.3271" y2="-322.0052" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_233_)" d="M292.33,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C289.49,14.51,290.91,14.51,292.33,14.51z"/>
+
+ <linearGradient id="SVGID_234_" gradientUnits="userSpaceOnUse" x1="-25.561" y1="-338.6255" x2="-22.3413" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_234_)" d="M285.94-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C291.63-0.28,288.78-0.28,285.94-0.28z"/>
+
+ <linearGradient id="SVGID_235_" gradientUnits="userSpaceOnUse" x1="-59.2031" y1="-257.9639" x2="-55.9907" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_235_)" d="M327.06,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C321.35,82.27,324.21,82.28,327.06,82.29z"/>
+
+ <linearGradient id="SVGID_236_" gradientUnits="userSpaceOnUse" x1="-59.2119" y1="-269.022" x2="-54.9077" y2="-261.5669" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_236_)" d="M324.92,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C322.07,74.95,323.49,74.96,324.92,74.96z"/>
+
+ <linearGradient id="SVGID_237_" gradientUnits="userSpaceOnUse" x1="-59.2148" y1="-280.0859" x2="-54.9087" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_237_)" d="M324.92,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C322.07,63.89,323.5,63.89,324.92,63.9z"/>
+
+ <linearGradient id="SVGID_238_" gradientUnits="userSpaceOnUse" x1="-59.2163" y1="-291.1484" x2="-54.9106" y2="-283.6908" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_238_)" d="M324.92,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C322.07,52.83,323.5,52.83,324.92,52.83
+ z"/>
+
+ <linearGradient id="SVGID_239_" gradientUnits="userSpaceOnUse" x1="-59.2188" y1="-302.2114" x2="-54.9116" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_239_)" d="M324.93,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C322.07,41.77,323.5,41.77,324.93,41.77z"
+ />
+
+ <linearGradient id="SVGID_240_" gradientUnits="userSpaceOnUse" x1="-59.2217" y1="-313.2739" x2="-54.9146" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_240_)" d="M324.93,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C322.08,30.7,323.5,30.71,324.93,30.71z"/>
+
+ <linearGradient id="SVGID_241_" gradientUnits="userSpaceOnUse" x1="-59.2236" y1="-324.3369" x2="-54.915" y2="-316.8742" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_241_)" d="M324.93,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C322.08,19.64,323.5,19.64,324.93,19.64z"/>
+
+ <linearGradient id="SVGID_242_" gradientUnits="userSpaceOnUse" x1="-59.2275" y1="-335.4014" x2="-54.9185" y2="-327.9378" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_242_)" d="M324.93,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.43,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C322.08,8.58,323.5,8.58,324.93,8.58z"/>
+
+ <linearGradient id="SVGID_243_" gradientUnits="userSpaceOnUse" x1="-48.0254" y1="-263.1465" x2="-43.7397" y2="-255.7235" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_243_)" d="M313.75,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.28-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C310.89,80.8,312.32,80.82,313.75,80.83z"/>
+
+ <linearGradient id="SVGID_244_" gradientUnits="userSpaceOnUse" x1="-48.0352" y1="-274.1987" x2="-43.7466" y2="-266.7707" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_244_)" d="M313.75,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.76
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.14,3.76
+ C310.89,69.75,312.32,69.77,313.75,69.78z"/>
+
+ <linearGradient id="SVGID_245_" gradientUnits="userSpaceOnUse" x1="-48.042" y1="-285.251" x2="-43.751" y2="-277.8187" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_245_)" d="M313.76,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.14,3.76
+ C310.9,58.7,312.33,58.72,313.76,58.73z"/>
+
+ <linearGradient id="SVGID_246_" gradientUnits="userSpaceOnUse" x1="-48.0513" y1="-296.3032" x2="-43.7563" y2="-288.8642" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_246_)" d="M313.76,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.14,3.76
+ C310.91,47.66,312.34,47.67,313.76,47.67z"/>
+
+ <linearGradient id="SVGID_247_" gradientUnits="userSpaceOnUse" x1="-48.0596" y1="-307.356" x2="-43.7617" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_247_)" d="M313.77,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C310.92,36.61,312.34,36.61,313.77,36.62z"/>
+
+ <linearGradient id="SVGID_248_" gradientUnits="userSpaceOnUse" x1="-48.0684" y1="-318.4062" x2="-43.7686" y2="-310.9588" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_248_)" d="M313.78,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.27-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.74
+ C310.92,25.56,312.35,25.56,313.78,25.57z"/>
+
+ <linearGradient id="SVGID_249_" gradientUnits="userSpaceOnUse" x1="-48.0762" y1="-329.4595" x2="-43.7725" y2="-322.0052" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_249_)" d="M313.78,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C310.93,14.51,312.36,14.51,313.78,14.51z"/>
+
+ <linearGradient id="SVGID_250_" gradientUnits="userSpaceOnUse" x1="-47.0068" y1="-338.6255" x2="-43.7871" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_250_)" d="M307.38-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C313.08-0.28,310.23-0.28,307.38-0.28z"/>
+
+ <linearGradient id="SVGID_251_" gradientUnits="userSpaceOnUse" x1="-80.6489" y1="-257.9639" x2="-77.4365" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_251_)" d="M348.51,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C342.79,82.27,345.65,82.28,348.51,82.29z"/>
+
+ <linearGradient id="SVGID_252_" gradientUnits="userSpaceOnUse" x1="-80.6572" y1="-269.022" x2="-76.353" y2="-261.5669" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_252_)" d="M346.37,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C343.51,74.95,344.94,74.96,346.37,74.96z"/>
+
+ <linearGradient id="SVGID_253_" gradientUnits="userSpaceOnUse" x1="-80.6602" y1="-280.0859" x2="-76.354" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_253_)" d="M346.37,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C343.51,63.89,344.94,63.89,346.37,63.9z"
+ />
+
+ <linearGradient id="SVGID_254_" gradientUnits="userSpaceOnUse" x1="-80.6616" y1="-291.1484" x2="-76.356" y2="-283.6908" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_254_)" d="M346.37,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C343.52,52.83,344.94,52.83,346.37,52.83z"/>
+
+ <linearGradient id="SVGID_255_" gradientUnits="userSpaceOnUse" x1="-80.6636" y1="-302.2114" x2="-76.3564" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_255_)" d="M346.37,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C343.52,41.77,344.94,41.77,346.37,41.77z"
+ />
+
+ <linearGradient id="SVGID_256_" gradientUnits="userSpaceOnUse" x1="-80.667" y1="-313.2739" x2="-76.3599" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_256_)" d="M346.37,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C343.52,30.7,344.95,30.71,346.37,30.71z"/>
+
+ <linearGradient id="SVGID_257_" gradientUnits="userSpaceOnUse" x1="-80.6689" y1="-324.3369" x2="-76.3604" y2="-316.8742" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_257_)" d="M346.37,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C343.52,19.64,344.95,19.64,346.37,19.64z"/>
+
+ <linearGradient id="SVGID_258_" gradientUnits="userSpaceOnUse" x1="-80.6729" y1="-335.4014" x2="-76.3638" y2="-327.9378" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_258_)" d="M346.38,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.43,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C343.53,8.58,344.95,8.58,346.38,8.58z"/>
+
+ <linearGradient id="SVGID_259_" gradientUnits="userSpaceOnUse" x1="-69.4707" y1="-263.1465" x2="-65.1851" y2="-255.7235" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_259_)" d="M335.19,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.28-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C332.33,80.8,333.76,80.82,335.19,80.83z"/>
+
+ <linearGradient id="SVGID_260_" gradientUnits="userSpaceOnUse" x1="-69.48" y1="-274.1987" x2="-65.1914" y2="-266.7707" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_260_)" d="M335.2,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.76
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C332.34,69.75,333.77,69.77,335.2,69.78z"/>
+
+ <linearGradient id="SVGID_261_" gradientUnits="userSpaceOnUse" x1="-69.4873" y1="-285.251" x2="-65.1963" y2="-277.8187" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_261_)" d="M335.2,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C332.35,58.7,333.77,58.72,335.2,58.73z"/>
+
+ <linearGradient id="SVGID_262_" gradientUnits="userSpaceOnUse" x1="-69.4966" y1="-296.3032" x2="-65.2017" y2="-288.8642" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_262_)" d="M335.21,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C332.35,47.66,333.78,47.67,335.21,47.67z"/>
+
+ <linearGradient id="SVGID_263_" gradientUnits="userSpaceOnUse" x1="-69.5054" y1="-307.356" x2="-65.2075" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_263_)" d="M335.21,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C332.36,36.61,333.79,36.61,335.21,36.62z"/>
+
+ <linearGradient id="SVGID_264_" gradientUnits="userSpaceOnUse" x1="-69.5132" y1="-318.4067" x2="-65.2134" y2="-310.9593" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_264_)" d="M335.22,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.74
+ C332.37,25.56,333.79,25.56,335.22,25.57z"/>
+
+ <linearGradient id="SVGID_265_" gradientUnits="userSpaceOnUse" x1="-69.5215" y1="-329.4595" x2="-65.2173" y2="-322.0044" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_265_)" d="M335.22,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C332.38,14.51,333.8,14.51,335.22,14.51z"/>
+
+ <linearGradient id="SVGID_266_" gradientUnits="userSpaceOnUse" x1="-68.4521" y1="-338.6255" x2="-65.2324" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_266_)" d="M328.83-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C334.52-0.28,331.67-0.28,328.83-0.28z"/>
+
+ <linearGradient id="SVGID_267_" gradientUnits="userSpaceOnUse" x1="-102.0942" y1="-257.9639" x2="-98.8813" y2="-252.399" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_267_)" d="M369.95,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C364.24,82.27,367.1,82.28,369.95,82.29z"/>
+
+ <linearGradient id="SVGID_268_" gradientUnits="userSpaceOnUse" x1="-102.1025" y1="-269.022" x2="-97.7983" y2="-261.5669" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_268_)" d="M367.81,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C364.96,74.95,366.38,74.96,367.81,74.96z"/>
+
+ <linearGradient id="SVGID_269_" gradientUnits="userSpaceOnUse" x1="-102.1055" y1="-280.0859" x2="-97.7993" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_269_)" d="M367.81,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C364.96,63.89,366.39,63.89,367.81,63.9z"
+ />
+
+ <linearGradient id="SVGID_270_" gradientUnits="userSpaceOnUse" x1="-102.1069" y1="-291.1484" x2="-97.8013" y2="-283.6908" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_270_)" d="M367.81,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C364.96,52.83,366.39,52.83,367.81,52.83z"/>
+
+ <linearGradient id="SVGID_271_" gradientUnits="userSpaceOnUse" x1="-102.1089" y1="-302.2114" x2="-97.8018" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_271_)" d="M367.82,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C364.96,41.77,366.39,41.77,367.82,41.77z"
+ />
+
+ <linearGradient id="SVGID_272_" gradientUnits="userSpaceOnUse" x1="-102.1123" y1="-313.2739" x2="-97.8052" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_272_)" d="M367.82,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.14,3.75C364.97,30.7,366.39,30.71,367.82,30.71z"/>
+
+ <linearGradient id="SVGID_273_" gradientUnits="userSpaceOnUse" x1="-102.1147" y1="-324.3369" x2="-97.8062" y2="-316.8742" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_273_)" d="M367.82,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.43,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C364.97,19.64,366.39,19.64,367.82,19.64z"/>
+
+ <linearGradient id="SVGID_274_" gradientUnits="userSpaceOnUse" x1="-102.1182" y1="-335.4019" x2="-97.8091" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_274_)" d="M367.82,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.43,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C364.97,8.58,366.39,8.58,367.82,8.58z"/>
+
+ <linearGradient id="SVGID_275_" gradientUnits="userSpaceOnUse" x1="-90.916" y1="-263.1475" x2="-86.6299" y2="-255.7237" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_275_)" d="M356.64,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C353.78,80.8,355.21,80.82,356.64,80.83z"/>
+
+ <linearGradient id="SVGID_276_" gradientUnits="userSpaceOnUse" x1="-90.9258" y1="-274.1997" x2="-86.6367" y2="-266.7708" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_276_)" d="M356.64,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C353.79,69.75,355.21,69.77,356.64,69.78z"/>
+
+ <linearGradient id="SVGID_277_" gradientUnits="userSpaceOnUse" x1="-90.9336" y1="-285.2505" x2="-86.6426" y2="-277.8182" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_277_)" d="M356.65,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C353.79,58.7,355.22,58.72,356.65,58.73z"/>
+
+ <linearGradient id="SVGID_278_" gradientUnits="userSpaceOnUse" x1="-90.9419" y1="-296.3032" x2="-86.647" y2="-288.8642" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_278_)" d="M356.65,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.42,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C353.8,47.66,355.23,47.67,356.65,47.67z"/>
+
+ <linearGradient id="SVGID_279_" gradientUnits="userSpaceOnUse" x1="-90.9507" y1="-307.356" x2="-86.6528" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_279_)" d="M356.66,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.42,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C353.81,36.61,355.23,36.61,356.66,36.62z"/>
+
+ <linearGradient id="SVGID_280_" gradientUnits="userSpaceOnUse" x1="-90.959" y1="-318.4077" x2="-86.6582" y2="-310.9586" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_280_)" d="M356.67,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C353.81,25.56,355.24,25.56,356.67,25.57z"/>
+
+ <linearGradient id="SVGID_281_" gradientUnits="userSpaceOnUse" x1="-90.9683" y1="-329.46" x2="-86.6636" y2="-322.004" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_281_)" d="M356.67,14.51c0.71-1.24,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C353.82,14.51,355.25,14.51,356.67,14.51z"/>
+
+ <linearGradient id="SVGID_282_" gradientUnits="userSpaceOnUse" x1="-89.8975" y1="-338.6255" x2="-86.6777" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_282_)" d="M350.27-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C355.97-0.28,353.12-0.28,350.27-0.28z"/>
+
+ <linearGradient id="SVGID_283_" gradientUnits="userSpaceOnUse" x1="-123.5396" y1="-257.9639" x2="-120.3271" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_283_)" d="M391.4,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C385.69,82.27,388.54,82.28,391.4,82.29z"/>
+
+ <linearGradient id="SVGID_284_" gradientUnits="userSpaceOnUse" x1="-123.5479" y1="-269.022" x2="-119.2437" y2="-261.5669" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_284_)" d="M389.26,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75C386.4,74.95,387.83,74.96,389.26,74.96
+ z"/>
+
+ <linearGradient id="SVGID_285_" gradientUnits="userSpaceOnUse" x1="-123.5508" y1="-280.0859" x2="-119.2446" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_285_)" d="M389.26,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C386.4,63.89,387.83,63.89,389.26,63.9z"/>
+
+ <linearGradient id="SVGID_286_" gradientUnits="userSpaceOnUse" x1="-123.5522" y1="-291.1479" x2="-119.2466" y2="-283.6903" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_286_)" d="M389.26,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C386.41,52.83,387.83,52.83,389.26,52.83z"/>
+
+ <linearGradient id="SVGID_287_" gradientUnits="userSpaceOnUse" x1="-123.5547" y1="-302.2114" x2="-119.2476" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_287_)" d="M389.26,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C386.41,41.77,387.84,41.77,389.26,41.77z"
+ />
+
+ <linearGradient id="SVGID_288_" gradientUnits="userSpaceOnUse" x1="-123.5576" y1="-313.2739" x2="-119.2505" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_288_)" d="M389.26,30.71c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C386.41,30.7,387.84,30.71,389.26,30.71z"/>
+
+ <linearGradient id="SVGID_289_" gradientUnits="userSpaceOnUse" x1="-123.5596" y1="-324.3374" x2="-119.251" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_289_)" d="M389.26,19.64c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C386.41,19.64,387.84,19.64,389.26,19.64z"/>
+
+ <linearGradient id="SVGID_290_" gradientUnits="userSpaceOnUse" x1="-123.5625" y1="-335.4019" x2="-119.2534" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_290_)" d="M389.27,8.58c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.42,2.5-2.13,3.74c0.71,1.25,1.42,2.49,2.13,3.74C386.42,8.58,387.84,8.58,389.27,8.58z"/>
+
+ <linearGradient id="SVGID_291_" gradientUnits="userSpaceOnUse" x1="-112.3608" y1="-263.1479" x2="-108.0747" y2="-255.7242" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_291_)" d="M378.08,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C375.22,80.8,376.65,80.82,378.08,80.83z"/>
+
+ <linearGradient id="SVGID_292_" gradientUnits="userSpaceOnUse" x1="-112.3706" y1="-274.1997" x2="-108.0811" y2="-266.77" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_292_)" d="M378.09,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.29-0.04c-0.71,1.24-1.42,2.47-2.14,3.71c0.71,1.25,1.43,2.51,2.14,3.76
+ C375.23,69.75,376.66,69.77,378.09,69.78z"/>
+
+ <linearGradient id="SVGID_293_" gradientUnits="userSpaceOnUse" x1="-112.3784" y1="-285.251" x2="-108.0869" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_293_)" d="M378.09,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.42,2.48-2.14,3.72c0.71,1.25,1.43,2.51,2.14,3.76
+ C375.24,58.7,376.66,58.72,378.09,58.73z"/>
+
+ <linearGradient id="SVGID_294_" gradientUnits="userSpaceOnUse" x1="-112.3872" y1="-296.3032" x2="-108.0918" y2="-288.8633" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_294_)" d="M378.1,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.42,2.48-2.14,3.72c0.71,1.25,1.43,2.5,2.14,3.76
+ C375.24,47.66,376.67,47.67,378.1,47.67z"/>
+
+ <linearGradient id="SVGID_295_" gradientUnits="userSpaceOnUse" x1="-112.396" y1="-307.356" x2="-108.0981" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_295_)" d="M378.11,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C375.25,36.61,376.68,36.61,378.11,36.62z"/>
+
+ <linearGradient id="SVGID_296_" gradientUnits="userSpaceOnUse" x1="-112.4043" y1="-318.4072" x2="-108.1035" y2="-310.9581" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_296_)" d="M378.11,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C375.26,25.56,376.68,25.56,378.11,25.57z"/>
+
+ <linearGradient id="SVGID_297_" gradientUnits="userSpaceOnUse" x1="-112.4136" y1="-329.4595" x2="-108.1089" y2="-322.0035" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_297_)" d="M378.12,14.51c0.71-1.24,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C375.27,14.51,376.69,14.51,378.12,14.51z"/>
+
+ <linearGradient id="SVGID_298_" gradientUnits="userSpaceOnUse" x1="-111.3423" y1="-338.6255" x2="-108.1226" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_298_)" d="M371.72-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C377.41-0.28,374.57-0.28,371.72-0.28z"/>
+
+ <linearGradient id="SVGID_299_" gradientUnits="userSpaceOnUse" x1="-144.9844" y1="-257.9639" x2="-141.772" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_299_)" d="M412.84,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C407.13,82.27,409.99,82.28,412.84,82.29z"/>
+
+ <linearGradient id="SVGID_300_" gradientUnits="userSpaceOnUse" x1="-144.9932" y1="-269.022" x2="-140.689" y2="-261.5669" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_300_)" d="M410.7,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75C407.85,74.95,409.28,74.96,410.7,74.96
+ z"/>
+
+ <linearGradient id="SVGID_301_" gradientUnits="userSpaceOnUse" x1="-144.9961" y1="-280.0859" x2="-140.6899" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_301_)" d="M410.71,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C407.85,63.89,409.28,63.89,410.71,63.9z"
+ />
+
+ <linearGradient id="SVGID_302_" gradientUnits="userSpaceOnUse" x1="-144.9976" y1="-291.1479" x2="-140.6919" y2="-283.6903" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_302_)" d="M410.71,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75
+ C407.85,52.83,409.28,52.83,410.71,52.83z"/>
+
+ <linearGradient id="SVGID_303_" gradientUnits="userSpaceOnUse" x1="-145" y1="-302.2114" x2="-140.6929" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_303_)" d="M410.71,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C407.86,41.77,409.28,41.77,410.71,41.77z"
+ />
+
+ <linearGradient id="SVGID_304_" gradientUnits="userSpaceOnUse" x1="-145.0029" y1="-313.2739" x2="-140.6958" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_304_)" d="M410.71,30.71c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C407.86,30.7,409.28,30.71,410.71,30.71z"/>
+
+ <linearGradient id="SVGID_305_" gradientUnits="userSpaceOnUse" x1="-145.0049" y1="-324.3374" x2="-140.6963" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_305_)" d="M410.71,19.64c0.71-1.25,1.43-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C407.86,19.64,409.29,19.64,410.71,19.64z"/>
+
+ <linearGradient id="SVGID_306_" gradientUnits="userSpaceOnUse" x1="-145.0088" y1="-335.4014" x2="-140.6997" y2="-327.9378" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_306_)" d="M410.71,8.58c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C407.86,8.58,409.29,8.58,410.71,8.58z"/>
+
+ <linearGradient id="SVGID_307_" gradientUnits="userSpaceOnUse" x1="-133.8071" y1="-263.1475" x2="-129.5205" y2="-255.7228" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_307_)" d="M399.53,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C396.67,80.8,398.1,80.82,399.53,80.83z"/>
+
+ <linearGradient id="SVGID_308_" gradientUnits="userSpaceOnUse" x1="-133.8159" y1="-274.1997" x2="-129.5264" y2="-266.77" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_308_)" d="M399.53,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.29-0.04c-0.71,1.24-1.42,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.13,3.76
+ C396.68,69.75,398.1,69.77,399.53,69.78z"/>
+
+ <linearGradient id="SVGID_309_" gradientUnits="userSpaceOnUse" x1="-133.8237" y1="-285.251" x2="-129.5322" y2="-277.8179" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_309_)" d="M399.54,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.13,3.76
+ C396.68,58.7,398.11,58.72,399.54,58.73z"/>
+
+ <linearGradient id="SVGID_310_" gradientUnits="userSpaceOnUse" x1="-133.8325" y1="-296.3032" x2="-129.5371" y2="-288.8633" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_310_)" d="M399.54,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.76
+ C396.69,47.66,398.12,47.67,399.54,47.67z"/>
+
+ <linearGradient id="SVGID_311_" gradientUnits="userSpaceOnUse" x1="-133.8413" y1="-307.356" x2="-129.5435" y2="-299.9119" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_311_)" d="M399.55,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C396.7,36.61,398.12,36.61,399.55,36.62z"/>
+
+ <linearGradient id="SVGID_312_" gradientUnits="userSpaceOnUse" x1="-133.8496" y1="-318.4072" x2="-129.5488" y2="-310.9581" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_312_)" d="M399.56,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.42,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C396.71,25.56,398.13,25.56,399.56,25.57z"/>
+
+ <linearGradient id="SVGID_313_" gradientUnits="userSpaceOnUse" x1="-133.8589" y1="-329.4595" x2="-129.5542" y2="-322.0035" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_313_)" d="M399.56,14.51c0.71-1.24,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C396.71,14.51,398.14,14.51,399.56,14.51z"/>
+
+ <linearGradient id="SVGID_314_" gradientUnits="userSpaceOnUse" x1="-132.7886" y1="-338.625" x2="-129.5688" y2="-333.0483" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_314_)" d="M393.16-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C398.86-0.28,396.01-0.28,393.16-0.28z"/>
+
+ <linearGradient id="SVGID_315_" gradientUnits="userSpaceOnUse" x1="-166.4292" y1="-257.9639" x2="-163.2168" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_315_)" d="M434.29,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C428.58,82.27,431.43,82.28,434.29,82.29z"/>
+
+ <linearGradient id="SVGID_316_" gradientUnits="userSpaceOnUse" x1="-166.438" y1="-269.0225" x2="-162.1338" y2="-261.5674" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_316_)" d="M432.15,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C429.29,74.95,430.72,74.96,432.15,74.96z"/>
+
+ <linearGradient id="SVGID_317_" gradientUnits="userSpaceOnUse" x1="-166.4414" y1="-280.0859" x2="-162.1353" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_317_)" d="M432.15,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C429.29,63.89,430.72,63.89,432.15,63.9z"
+ />
+
+ <linearGradient id="SVGID_318_" gradientUnits="userSpaceOnUse" x1="-166.4434" y1="-291.1479" x2="-162.1377" y2="-283.6903" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_318_)" d="M432.15,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C429.3,52.83,430.72,52.83,432.15,52.83
+ z"/>
+
+ <linearGradient id="SVGID_319_" gradientUnits="userSpaceOnUse" x1="-166.4453" y1="-302.2114" x2="-162.1382" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_319_)" d="M432.15,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C429.3,41.77,430.73,41.77,432.15,41.77z"
+ />
+
+ <linearGradient id="SVGID_320_" gradientUnits="userSpaceOnUse" x1="-166.4482" y1="-313.2739" x2="-162.1411" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_320_)" d="M432.15,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C429.3,30.7,430.73,30.71,432.15,30.71z"/>
+
+ <linearGradient id="SVGID_321_" gradientUnits="userSpaceOnUse" x1="-166.4502" y1="-324.3369" x2="-162.1416" y2="-316.8742" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_321_)" d="M432.15,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C429.3,19.64,430.73,19.64,432.15,19.64z"/>
+
+ <linearGradient id="SVGID_322_" gradientUnits="userSpaceOnUse" x1="-166.4536" y1="-335.4019" x2="-162.1445" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_322_)" d="M432.16,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C429.31,8.58,430.73,8.58,432.16,8.58z"/>
+
+ <linearGradient id="SVGID_323_" gradientUnits="userSpaceOnUse" x1="-155.2524" y1="-263.1475" x2="-150.9663" y2="-255.7237" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_323_)" d="M420.97,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C418.12,80.8,419.54,80.82,420.97,80.83z"/>
+
+ <linearGradient id="SVGID_324_" gradientUnits="userSpaceOnUse" x1="-155.2622" y1="-274.1992" x2="-150.9731" y2="-266.7704" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_324_)" d="M420.98,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.14,3.76
+ C418.12,69.75,419.55,69.77,420.98,69.78z"/>
+
+ <linearGradient id="SVGID_325_" gradientUnits="userSpaceOnUse" x1="-155.27" y1="-285.2505" x2="-150.979" y2="-277.8182" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_325_)" d="M420.98,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.14,3.76
+ C418.13,58.7,419.56,58.72,420.98,58.73z"/>
+
+ <linearGradient id="SVGID_326_" gradientUnits="userSpaceOnUse" x1="-155.2788" y1="-296.3027" x2="-150.9839" y2="-288.8637" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_326_)" d="M420.99,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.14,3.76
+ C418.13,47.66,419.56,47.67,420.99,47.67z"/>
+
+ <linearGradient id="SVGID_327_" gradientUnits="userSpaceOnUse" x1="-155.2876" y1="-307.3555" x2="-150.9897" y2="-299.9114" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_327_)" d="M421,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C418.14,36.61,419.57,36.61,421,36.62z"/>
+
+ <linearGradient id="SVGID_328_" gradientUnits="userSpaceOnUse" x1="-155.2959" y1="-318.4067" x2="-150.9956" y2="-310.9584" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_328_)" d="M421,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74C418.15,25.56,419.58,25.56,421,25.57z"
+ />
+
+ <linearGradient id="SVGID_329_" gradientUnits="userSpaceOnUse" x1="-155.3027" y1="-329.4595" x2="-150.999" y2="-322.0052" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_329_)" d="M421.01,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C418.16,14.51,419.58,14.51,421.01,14.51z"/>
+
+ <linearGradient id="SVGID_330_" gradientUnits="userSpaceOnUse" x1="-154.2339" y1="-338.625" x2="-151.0142" y2="-333.0483" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_330_)" d="M414.61-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C420.3-0.28,417.46-0.28,414.61-0.28z"/>
+
+ <linearGradient id="SVGID_331_" gradientUnits="userSpaceOnUse" x1="-187.875" y1="-257.9639" x2="-184.6626" y2="-252.3998" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_331_)" d="M455.73,82.29c-0.71-1.25-1.43-2.5-2.14-3.75c-1.43,0-2.86-0.01-4.29-0.02
+ c-0.71,1.24-1.43,2.49-2.14,3.72C450.02,82.27,452.88,82.28,455.73,82.29z"/>
+
+ <linearGradient id="SVGID_332_" gradientUnits="userSpaceOnUse" x1="-187.8833" y1="-269.0225" x2="-183.5791" y2="-261.5674" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_332_)" d="M453.59,74.96c0.71-1.25,1.43-2.49,2.14-3.74c-0.72-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.14,3.75
+ C450.74,74.95,452.17,74.96,453.59,74.96z"/>
+
+ <linearGradient id="SVGID_333_" gradientUnits="userSpaceOnUse" x1="-187.8872" y1="-280.0859" x2="-183.5811" y2="-272.6275" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_333_)" d="M453.6,63.9c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85,0-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C450.74,63.89,452.17,63.89,453.6,63.9z"/>
+
+ <linearGradient id="SVGID_334_" gradientUnits="userSpaceOnUse" x1="-187.8887" y1="-291.1479" x2="-183.583" y2="-283.6903" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_334_)" d="M453.6,52.83c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.43-2.5-2.14-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.43,2.5,2.14,3.75C450.74,52.83,452.17,52.83,453.6,52.83
+ z"/>
+
+ <linearGradient id="SVGID_335_" gradientUnits="userSpaceOnUse" x1="-187.8906" y1="-302.2114" x2="-183.5835" y2="-294.7513" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_335_)" d="M453.6,41.77c0.71-1.25,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85,0-4.28-0.01c-0.71,1.25-1.43,2.49-2.14,3.74c0.71,1.25,1.42,2.5,2.13,3.75C450.75,41.77,452.17,41.77,453.6,41.77z"
+ />
+
+ <linearGradient id="SVGID_336_" gradientUnits="userSpaceOnUse" x1="-187.8931" y1="-313.2739" x2="-183.5859" y2="-305.8138" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_336_)" d="M453.6,30.71c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C450.75,30.7,452.17,30.71,453.6,30.71z"/>
+
+ <linearGradient id="SVGID_337_" gradientUnits="userSpaceOnUse" x1="-187.895" y1="-324.3374" x2="-183.5864" y2="-316.8747" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_337_)" d="M453.6,19.64c0.71-1.25,1.42-2.5,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.42,0-2.85,0-4.28,0
+ c-0.71,1.25-1.42,2.49-2.13,3.74c0.71,1.25,1.42,2.5,2.13,3.75C450.75,19.64,452.18,19.64,453.6,19.64z"/>
+
+ <linearGradient id="SVGID_338_" gradientUnits="userSpaceOnUse" x1="-187.8989" y1="-335.4019" x2="-183.5898" y2="-327.9383" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_338_)" d="M453.6,8.58c0.71-1.25,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.75c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.25-1.43,2.5-2.14,3.74c0.71,1.25,1.42,2.49,2.13,3.74C450.75,8.58,452.18,8.58,453.6,8.58z"/>
+
+ <linearGradient id="SVGID_339_" gradientUnits="userSpaceOnUse" x1="-176.6978" y1="-263.147" x2="-172.4116" y2="-255.7232" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_339_)" d="M442.42,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C439.56,80.8,440.99,80.82,442.42,80.83z"/>
+
+ <linearGradient id="SVGID_340_" gradientUnits="userSpaceOnUse" x1="-176.7075" y1="-274.1992" x2="-172.4185" y2="-266.7704" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_340_)" d="M442.42,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.14,3.76
+ C439.57,69.75,441,69.77,442.42,69.78z"/>
+
+ <linearGradient id="SVGID_341_" gradientUnits="userSpaceOnUse" x1="-176.7144" y1="-285.251" x2="-172.4233" y2="-277.8187" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_341_)" d="M442.43,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.14,3.76
+ C439.57,58.7,441,58.72,442.43,58.73z"/>
+
+ <linearGradient id="SVGID_342_" gradientUnits="userSpaceOnUse" x1="-176.7231" y1="-296.3032" x2="-172.4282" y2="-288.8642" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_342_)" d="M442.43,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.14,3.76
+ C439.58,47.66,441.01,47.67,442.43,47.67z"/>
+
+ <linearGradient id="SVGID_343_" gradientUnits="userSpaceOnUse" x1="-176.7319" y1="-307.3555" x2="-172.4341" y2="-299.9114" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_343_)" d="M442.44,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C439.59,36.61,441.02,36.61,442.44,36.62z"/>
+
+ <linearGradient id="SVGID_344_" gradientUnits="userSpaceOnUse" x1="-176.7397" y1="-318.4067" x2="-172.4399" y2="-310.9593" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_344_)" d="M442.45,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42,0-2.85-0.01-4.27-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74C439.6,25.56,441.02,25.56,442.45,25.57
+ z"/>
+
+ <linearGradient id="SVGID_345_" gradientUnits="userSpaceOnUse" x1="-176.748" y1="-329.4595" x2="-172.4443" y2="-322.0052" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_345_)" d="M442.45,14.51c0.71-1.24,1.43-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.14-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C439.6,14.51,441.03,14.51,442.45,14.51z"/>
+
+ <linearGradient id="SVGID_346_" gradientUnits="userSpaceOnUse" x1="-175.6792" y1="-338.625" x2="-172.4595" y2="-333.0483" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_346_)" d="M436.05-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C441.75-0.28,438.9-0.28,436.05-0.28z"/>
+
+ <linearGradient id="SVGID_347_" gradientUnits="userSpaceOnUse" x1="-198.1436" y1="-263.147" x2="-193.8574" y2="-255.7232" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_347_)" d="M463.86,80.83c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.51-2.14-3.76
+ c-1.43-0.02-2.86-0.03-4.29-0.05c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.26,1.43,2.51,2.14,3.77
+ C461.01,80.8,462.44,80.82,463.86,80.83z"/>
+
+ <linearGradient id="SVGID_348_" gradientUnits="userSpaceOnUse" x1="-198.1533" y1="-274.1992" x2="-193.8643" y2="-266.7704" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_348_)" d="M463.87,69.78c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.43-2.5-2.14-3.76
+ c-1.43-0.01-2.86-0.03-4.28-0.04c-0.71,1.24-1.43,2.47-2.14,3.71c0.71,1.25,1.42,2.51,2.14,3.76
+ C461.01,69.75,462.44,69.77,463.87,69.78z"/>
+
+ <linearGradient id="SVGID_349_" gradientUnits="userSpaceOnUse" x1="-198.1606" y1="-285.25" x2="-193.8696" y2="-277.8177" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_349_)" d="M463.88,58.73c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.04c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.51,2.14,3.76
+ C461.02,58.7,462.45,58.72,463.88,58.73z"/>
+
+ <linearGradient id="SVGID_350_" gradientUnits="userSpaceOnUse" x1="-198.1689" y1="-296.3027" x2="-193.874" y2="-288.8637" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_350_)" d="M463.88,47.67c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.14,3.76
+ C461.03,47.66,462.46,47.67,463.88,47.67z"/>
+
+ <linearGradient id="SVGID_351_" gradientUnits="userSpaceOnUse" x1="-198.1777" y1="-307.3555" x2="-193.8799" y2="-299.9114" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_351_)" d="M463.89,36.62c0.71-1.24,1.43-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.01-4.28-0.02c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.5,2.13,3.75
+ C461.03,36.61,462.46,36.61,463.89,36.62z"/>
+
+ <linearGradient id="SVGID_352_" gradientUnits="userSpaceOnUse" x1="-198.186" y1="-318.4072" x2="-193.8857" y2="-310.9589" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_352_)" d="M463.89,25.57c0.71-1.24,1.42-2.49,2.14-3.73c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43,0-2.85-0.01-4.28-0.01c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.5,2.13,3.74
+ C461.04,25.56,462.46,25.56,463.89,25.57z"/>
+
+ <linearGradient id="SVGID_353_" gradientUnits="userSpaceOnUse" x1="-198.1948" y1="-329.46" x2="-193.8906" y2="-322.0049" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_353_)" d="M463.9,14.51c0.71-1.24,1.42-2.49,2.14-3.74c-0.71-1.25-1.42-2.5-2.13-3.74c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.25,1.42,2.49,2.13,3.74C461.05,14.51,462.47,14.51,463.9,14.51z"/>
+
+ <linearGradient id="SVGID_354_" gradientUnits="userSpaceOnUse" x1="-197.124" y1="-338.6255" x2="-193.9043" y2="-333.0488" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_354_)" d="M457.5-0.28c0.71,1.24,1.42,2.49,2.13,3.74c1.42,0,2.85,0,4.27,0c0.71-1.25,1.42-2.49,2.14-3.74
+ C463.19-0.28,460.35-0.28,457.5-0.28z"/>
+
+ <linearGradient id="SVGID_355_" gradientUnits="userSpaceOnUse" x1="112.9204" y1="-258.2065" x2="116.082" y2="-252.7305" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_355_)" d="M154.96,82.08c-0.71-1.26-1.43-2.51-2.14-3.77c-1.43-0.03-2.86-0.06-4.29-0.09
+ c-0.71,1.23-1.43,2.45-2.14,3.68C149.24,81.97,152.1,82.03,154.96,82.08z"/>
+
+ <linearGradient id="SVGID_356_" gradientUnits="userSpaceOnUse" x1="112.9058" y1="-269.2368" x2="117.1743" y2="-261.8435" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_356_)" d="M152.82,74.74c0.71-1.23,1.43-2.46,2.14-3.7c-0.71-1.25-1.43-2.51-2.14-3.77
+ c-1.43-0.02-2.85-0.05-4.28-0.07c-0.72,1.23-1.43,2.46-2.15,3.68c0.71,1.25,1.42,2.51,2.14,3.77
+ C149.97,74.68,151.39,74.71,152.82,74.74z"/>
+
+ <linearGradient id="SVGID_357_" gradientUnits="userSpaceOnUse" x1="112.8926" y1="-280.2642" x2="117.1646" y2="-272.8649" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_357_)" d="M152.83,63.71c0.71-1.23,1.43-2.47,2.14-3.7c-0.71-1.26-1.43-2.51-2.14-3.76
+ c-1.42-0.02-2.85-0.04-4.28-0.06c-0.72,1.23-1.43,2.46-2.14,3.69c0.71,1.25,1.42,2.51,2.14,3.76
+ C149.98,63.66,151.4,63.69,152.83,63.71z"/>
+
+ <linearGradient id="SVGID_358_" gradientUnits="userSpaceOnUse" x1="112.8804" y1="-291.293" x2="117.1567" y2="-283.8861" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_358_)" d="M152.84,52.68c0.71-1.24,1.43-2.47,2.14-3.71c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.42-0.01-2.85-0.03-4.28-0.05c-0.71,1.23-1.43,2.46-2.14,3.69c0.71,1.25,1.42,2.5,2.14,3.76
+ C149.99,52.64,151.42,52.66,152.84,52.68z"/>
+
+ <linearGradient id="SVGID_359_" gradientUnits="userSpaceOnUse" x1="112.8647" y1="-302.3213" x2="117.1465" y2="-294.9051" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_359_)" d="M152.85,41.64c0.71-1.23,1.43-2.47,2.14-3.71c-0.71-1.25-1.42-2.5-2.14-3.75
+ c-1.42-0.01-2.85-0.02-4.27-0.04c-0.71,1.24-1.43,2.47-2.14,3.7c0.71,1.25,1.42,2.5,2.13,3.75C150,41.62,151.43,41.63,152.85,41.64
+ z"/>
+
+ <linearGradient id="SVGID_360_" gradientUnits="userSpaceOnUse" x1="112.8496" y1="-313.3501" x2="117.1362" y2="-305.9254" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_360_)" d="M152.86,30.61c0.72-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.42-0.01-2.85-0.02-4.27-0.03c-0.71,1.24-1.43,2.48-2.14,3.71c0.71,1.25,1.42,2.49,2.13,3.74
+ C150.01,30.59,151.44,30.6,152.86,30.61z"/>
+
+ <linearGradient id="SVGID_361_" gradientUnits="userSpaceOnUse" x1="112.8354" y1="-324.3779" x2="117.1284" y2="-316.9423" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_361_)" d="M152.87,19.58c0.71-1.24,1.43-2.48,2.14-3.72c-0.71-1.25-1.42-2.49-2.14-3.74
+ c-1.42,0-2.85-0.01-4.27-0.01c-0.71,1.24-1.43,2.48-2.14,3.72c0.71,1.25,1.42,2.49,2.13,3.74
+ C150.02,19.57,151.45,19.58,152.87,19.58z"/>
+
+ <linearGradient id="SVGID_362_" gradientUnits="userSpaceOnUse" x1="112.8232" y1="-335.4092" x2="117.1201" y2="-327.9668" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_362_)" d="M152.88,8.55c0.71-1.24,1.43-2.48,2.14-3.73c-0.71-1.25-1.42-2.49-2.13-3.74
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.24-1.43,2.49-2.14,3.73c0.71,1.24,1.42,2.49,2.13,3.73C150.03,8.54,151.46,8.55,152.88,8.55z"/>
+
+ <linearGradient id="SVGID_363_" gradientUnits="userSpaceOnUse" x1="124.0977" y1="-263.5513" x2="128.3364" y2="-256.2095" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_363_)" d="M141.64,80.41c0.71-1.22,1.43-2.44,2.14-3.66c-0.71-1.26-1.42-2.52-2.13-3.78
+ c-1.43-0.04-2.86-0.08-4.28-0.12c-0.71,1.22-1.43,2.43-2.15,3.65c0.71,1.26,1.43,2.52,2.13,3.78
+ C138.79,80.32,140.21,80.37,141.64,80.41z"/>
+
+ <linearGradient id="SVGID_364_" gradientUnits="userSpaceOnUse" x1="124.0786" y1="-274.5439" x2="128.3242" y2="-267.1903" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_364_)" d="M141.66,69.41c0.71-1.22,1.43-2.45,2.14-3.67c-0.71-1.26-1.42-2.51-2.13-3.77
+ c-1.43-0.03-2.86-0.06-4.28-0.1c-0.71,1.22-1.43,2.44-2.14,3.66c0.71,1.25,1.42,2.51,2.13,3.77
+ C138.8,69.34,140.23,69.38,141.66,69.41z"/>
+
+ <linearGradient id="SVGID_365_" gradientUnits="userSpaceOnUse" x1="124.0596" y1="-285.5361" x2="128.313" y2="-278.169" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_365_)" d="M141.67,58.42c0.71-1.23,1.43-2.45,2.14-3.68c-0.71-1.25-1.42-2.51-2.13-3.76
+ c-1.43-0.02-2.85-0.05-4.28-0.08c-0.71,1.22-1.43,2.44-2.14,3.67c0.71,1.25,1.42,2.51,2.13,3.76
+ C138.82,58.36,140.24,58.39,141.67,58.42z"/>
+
+ <linearGradient id="SVGID_366_" gradientUnits="userSpaceOnUse" x1="124.0405" y1="-296.5273" x2="128.3013" y2="-289.1475" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_366_)" d="M141.68,47.42c0.72-1.23,1.43-2.46,2.15-3.69c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.02-2.85-0.04-4.28-0.06c-0.71,1.23-1.43,2.45-2.14,3.67c0.71,1.25,1.42,2.5,2.13,3.75
+ C138.83,47.37,140.26,47.4,141.68,47.42z"/>
+
+ <linearGradient id="SVGID_367_" gradientUnits="userSpaceOnUse" x1="124.02" y1="-307.5225" x2="128.2886" y2="-300.1291" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_367_)" d="M141.7,36.43c0.71-1.23,1.43-2.46,2.14-3.69c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.01-2.85-0.03-4.28-0.04c-0.71,1.23-1.43,2.46-2.14,3.69c0.71,1.25,1.42,2.49,2.13,3.74
+ C138.85,36.39,140.27,36.41,141.7,36.43z"/>
+
+ <linearGradient id="SVGID_368_" gradientUnits="userSpaceOnUse" x1="124.0034" y1="-318.5122" x2="128.2773" y2="-311.1096" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_368_)" d="M141.71,25.43c0.71-1.23,1.43-2.47,2.14-3.7c-0.71-1.25-1.42-2.49-2.13-3.73
+ c-1.42-0.01-2.85-0.02-4.27-0.03c-0.71,1.23-1.43,2.46-2.14,3.69c0.71,1.25,1.42,2.49,2.13,3.73
+ C138.87,25.41,140.29,25.42,141.71,25.43z"/>
+
+ <linearGradient id="SVGID_369_" gradientUnits="userSpaceOnUse" x1="123.9839" y1="-329.5044" x2="128.2651" y2="-322.0891" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_369_)" d="M141.73,14.44c0.71-1.24,1.43-2.48,2.14-3.71c-0.71-1.24-1.42-2.48-2.13-3.72
+ c-1.43,0-2.85-0.01-4.27-0.01c-0.71,1.24-1.43,2.47-2.14,3.7c0.71,1.24,1.42,2.48,2.13,3.72C138.88,14.42,140.3,14.43,141.73,14.44
+ z"/>
+
+ <linearGradient id="SVGID_370_" gradientUnits="userSpaceOnUse" x1="125.0405" y1="-338.6304" x2="128.252" y2="-333.068" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_370_)" d="M135.34-0.28c0.71,1.24,1.42,2.48,2.13,3.71c1.42,0,2.85,0,4.27,0.01
+ c0.71-1.24,1.43-2.48,2.14-3.72C141.04-0.28,138.19-0.28,135.34-0.28z"/>
+
+ <linearGradient id="SVGID_371_" gradientUnits="userSpaceOnUse" x1="134.9282" y1="-258.8154" x2="138.0298" y2="-253.4434" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_371_)" d="M132.97,81.5c-0.71-1.26-1.42-2.52-2.13-3.78c-1.43-0.05-2.85-0.1-4.28-0.16
+ c-0.71,1.21-1.43,2.41-2.15,3.61C127.26,81.29,130.12,81.39,132.97,81.5z"/>
+
+ <linearGradient id="SVGID_372_" gradientUnits="userSpaceOnUse" x1="134.9053" y1="-269.7573" x2="139.1196" y2="-262.4579" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_372_)" d="M130.84,74.17c0.72-1.21,1.43-2.42,2.15-3.64c-0.71-1.26-1.42-2.51-2.13-3.77
+ c-1.43-0.04-2.85-0.09-4.28-0.14c-0.71,1.21-1.43,2.41-2.14,3.62c0.71,1.25,1.42,2.51,2.13,3.77
+ C127.99,74.07,129.42,74.12,130.84,74.17z"/>
+
+ <linearGradient id="SVGID_373_" gradientUnits="userSpaceOnUse" x1="134.8804" y1="-280.707" x2="139.1064" y2="-273.3873" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_373_)" d="M130.86,63.22c0.71-1.21,1.43-2.43,2.15-3.65c-0.71-1.25-1.42-2.5-2.13-3.76
+ c-1.43-0.03-2.85-0.07-4.28-0.11c-0.71,1.21-1.43,2.42-2.14,3.63c0.71,1.25,1.42,2.5,2.13,3.76
+ C128.01,63.14,129.44,63.19,130.86,63.22z"/>
+
+ <linearGradient id="SVGID_374_" gradientUnits="userSpaceOnUse" x1="134.8579" y1="-291.6499" x2="139.0913" y2="-284.3174" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_374_)" d="M130.88,52.28c0.71-1.22,1.43-2.44,2.14-3.66c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.03-2.85-0.06-4.28-0.09c-0.71,1.22-1.43,2.43-2.14,3.64c0.71,1.25,1.42,2.5,2.13,3.75
+ C128.03,52.21,129.45,52.24,130.88,52.28z"/>
+
+ <linearGradient id="SVGID_375_" gradientUnits="userSpaceOnUse" x1="134.8335" y1="-302.5942" x2="139.0767" y2="-295.2449" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_375_)" d="M130.9,41.33c0.71-1.22,1.43-2.44,2.14-3.67c-0.71-1.25-1.42-2.49-2.13-3.74
+ c-1.43-0.02-2.85-0.04-4.28-0.07c-0.72,1.22-1.43,2.44-2.15,3.66c0.71,1.24,1.42,2.49,2.13,3.74
+ C128.05,41.27,129.47,41.3,130.9,41.33z"/>
+
+ <linearGradient id="SVGID_376_" gradientUnits="userSpaceOnUse" x1="134.8101" y1="-313.5381" x2="139.062" y2="-306.1735" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_376_)" d="M130.92,30.38c0.71-1.22,1.43-2.45,2.14-3.68c-0.71-1.24-1.42-2.49-2.13-3.73
+ c-1.42-0.01-2.85-0.03-4.28-0.05c-0.71,1.22-1.43,2.44-2.14,3.67c0.71,1.24,1.42,2.48,2.13,3.72
+ C128.07,30.34,129.49,30.36,130.92,30.38z"/>
+
+ <linearGradient id="SVGID_377_" gradientUnits="userSpaceOnUse" x1="134.7881" y1="-324.4824" x2="139.0493" y2="-317.1017" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_377_)" d="M130.94,19.44c0.71-1.23,1.43-2.46,2.14-3.69c-0.71-1.24-1.42-2.48-2.13-3.72
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.23-1.43,2.45-2.14,3.68c0.71,1.24,1.42,2.47,2.13,3.71
+ C128.09,19.41,129.51,19.42,130.94,19.44z"/>
+
+ <linearGradient id="SVGID_378_" gradientUnits="userSpaceOnUse" x1="134.7637" y1="-335.4282" x2="139.0337" y2="-328.0323" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_378_)" d="M130.95,8.48c0.71-1.23,1.43-2.46,2.14-3.7c-0.71-1.24-1.42-2.47-2.13-3.71c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.23-1.43,2.46-2.14,3.69c0.71,1.23,1.42,2.46,2.13,3.7C128.1,8.47,129.53,8.48,130.95,8.48z"/>
+
+ <linearGradient id="SVGID_379_" gradientUnits="userSpaceOnUse" x1="146.1016" y1="-264.2944" x2="150.2773" y2="-257.0618" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_379_)" d="M119.67,79.61c0.72-1.2,1.43-2.39,2.14-3.59c-0.71-1.26-1.42-2.52-2.13-3.77
+ c-1.43-0.06-2.85-0.12-4.28-0.18c-0.72,1.19-1.43,2.39-2.15,3.58c0.71,1.26,1.42,2.51,2.13,3.77
+ C116.81,79.48,118.24,79.54,119.67,79.61z"/>
+
+ <linearGradient id="SVGID_380_" gradientUnits="userSpaceOnUse" x1="146.0728" y1="-275.1763" x2="150.2603" y2="-267.9233" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_380_)" d="M119.69,68.72c0.72-1.2,1.43-2.4,2.15-3.6c-0.71-1.25-1.42-2.51-2.13-3.76
+ c-1.43-0.05-2.85-0.1-4.28-0.15c-0.71,1.2-1.43,2.39-2.15,3.59c0.71,1.25,1.42,2.5,2.13,3.76
+ C116.84,68.61,118.26,68.67,119.69,68.72z"/>
+
+ <linearGradient id="SVGID_381_" gradientUnits="userSpaceOnUse" x1="146.0444" y1="-286.0601" x2="150.2437" y2="-278.7868" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_381_)" d="M119.71,57.84c0.72-1.2,1.43-2.41,2.15-3.62c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.04-2.85-0.08-4.28-0.13c-0.71,1.2-1.43,2.4-2.14,3.6c0.71,1.25,1.42,2.49,2.13,3.74
+ C116.86,57.74,118.28,57.79,119.71,57.84z"/>
+
+ <linearGradient id="SVGID_382_" gradientUnits="userSpaceOnUse" x1="146.0161" y1="-296.9409" x2="150.2271" y2="-289.6474" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_382_)" d="M119.73,46.95c0.72-1.21,1.43-2.42,2.14-3.63c-0.71-1.25-1.42-2.49-2.13-3.73
+ c-1.43-0.03-2.85-0.07-4.28-0.1c-0.71,1.21-1.43,2.41-2.14,3.62c0.71,1.24,1.42,2.49,2.13,3.73
+ C116.88,46.87,118.3,46.91,119.73,46.95z"/>
+
+ <linearGradient id="SVGID_383_" gradientUnits="userSpaceOnUse" x1="145.9873" y1="-307.8242" x2="150.21" y2="-300.5104" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_383_)" d="M119.75,36.06c0.71-1.21,1.43-2.43,2.14-3.64c-0.71-1.24-1.42-2.48-2.13-3.72
+ c-1.42-0.02-2.85-0.05-4.28-0.07c-0.71,1.21-1.43,2.42-2.14,3.63c0.71,1.24,1.42,2.47,2.13,3.71
+ C116.9,36,118.33,36.04,119.75,36.06z"/>
+
+ <linearGradient id="SVGID_384_" gradientUnits="userSpaceOnUse" x1="145.9595" y1="-318.7065" x2="150.1938" y2="-311.3724" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_384_)" d="M119.77,25.18c0.71-1.22,1.43-2.44,2.14-3.66c-0.71-1.24-1.42-2.47-2.13-3.71
+ c-1.42-0.01-2.85-0.03-4.28-0.04c-0.71,1.22-1.43,2.43-2.14,3.64c0.71,1.23,1.42,2.47,2.13,3.7
+ C116.92,25.14,118.35,25.16,119.77,25.18z"/>
+
+ <linearGradient id="SVGID_385_" gradientUnits="userSpaceOnUse" x1="145.9312" y1="-329.5879" x2="150.1763" y2="-322.2351" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_385_)" d="M119.79,14.29c0.71-1.22,1.43-2.45,2.14-3.67c-0.71-1.23-1.42-2.47-2.13-3.69
+ c-1.43,0-2.85-0.01-4.28-0.02c-0.71,1.22-1.43,2.44-2.14,3.66c0.71,1.23,1.42,2.46,2.13,3.69
+ C116.95,14.27,118.37,14.28,119.79,14.29z"/>
+
+ <linearGradient id="SVGID_386_" gradientUnits="userSpaceOnUse" x1="146.9658" y1="-338.6309" x2="150.1602" y2="-333.0981" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_386_)" d="M113.42-0.28c0.71,1.22,1.42,2.45,2.13,3.67c1.42,0,2.85,0,4.27,0.01
+ c0.71-1.23,1.43-2.45,2.14-3.68C119.11-0.28,116.27-0.28,113.42-0.28z"/>
+
+ <linearGradient id="SVGID_387_" gradientUnits="userSpaceOnUse" x1="156.9312" y1="-259.7856" x2="159.9639" y2="-254.5328" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_387_)" d="M111,80.54c-0.71-1.26-1.42-2.52-2.13-3.77c-1.43-0.08-2.85-0.15-4.28-0.23
+ c-0.71,1.18-1.43,2.35-2.14,3.52C105.3,80.23,108.15,80.39,111,80.54z"/>
+
+ <linearGradient id="SVGID_388_" gradientUnits="userSpaceOnUse" x1="156.9004" y1="-270.5967" x2="161.0474" y2="-263.4139" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_388_)" d="M108.88,73.27c0.71-1.19,1.43-2.37,2.15-3.56c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.06-2.85-0.13-4.28-0.2c-0.72,1.18-1.43,2.36-2.15,3.54c0.71,1.25,1.42,2.5,2.13,3.75
+ C106.03,73.12,107.45,73.2,108.88,73.27z"/>
+
+ <linearGradient id="SVGID_389_" gradientUnits="userSpaceOnUse" x1="156.8677" y1="-281.4067" x2="161.0288" y2="-274.1994" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_389_)" d="M108.9,62.45c0.71-1.19,1.43-2.38,2.14-3.57c-0.71-1.25-1.42-2.5-2.13-3.74
+ c-1.42-0.05-2.85-0.11-4.28-0.16c-0.71,1.18-1.43,2.37-2.14,3.55c0.71,1.25,1.42,2.49,2.13,3.74
+ C106.05,62.33,107.48,62.39,108.9,62.45z"/>
+
+ <linearGradient id="SVGID_390_" gradientUnits="userSpaceOnUse" x1="156.8359" y1="-292.2158" x2="161.0098" y2="-284.9865" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_390_)" d="M108.93,51.64c0.72-1.2,1.43-2.39,2.15-3.59c-0.71-1.24-1.42-2.49-2.13-3.73
+ c-1.42-0.04-2.85-0.09-4.27-0.13c-0.71,1.19-1.43,2.38-2.14,3.57c0.71,1.24,1.42,2.48,2.13,3.72
+ C106.08,51.54,107.5,51.59,108.93,51.64z"/>
+
+ <linearGradient id="SVGID_391_" gradientUnits="userSpaceOnUse" x1="156.8042" y1="-303.0273" x2="160.9932" y2="-295.7719" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_391_)" d="M108.95,40.82c0.72-1.2,1.43-2.4,2.15-3.61c-0.71-1.24-1.42-2.48-2.13-3.71
+ c-1.42-0.03-2.85-0.06-4.27-0.1c-0.71,1.2-1.43,2.4-2.15,3.59c0.71,1.23,1.42,2.47,2.13,3.71
+ C106.1,40.74,107.53,40.78,108.95,40.82z"/>
+
+ <linearGradient id="SVGID_392_" gradientUnits="userSpaceOnUse" x1="156.7739" y1="-313.8354" x2="160.9746" y2="-306.5597" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_392_)" d="M108.97,30.01c0.71-1.2,1.43-2.41,2.15-3.62c-0.71-1.23-1.42-2.46-2.13-3.69
+ c-1.42-0.02-2.85-0.05-4.27-0.07c-0.71,1.2-1.43,2.41-2.15,3.61c0.71,1.23,1.42,2.46,2.13,3.69
+ C106.12,29.95,107.55,29.98,108.97,30.01z"/>
+
+ <linearGradient id="SVGID_393_" gradientUnits="userSpaceOnUse" x1="156.7407" y1="-324.646" x2="160.9561" y2="-317.3448" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_393_)" d="M109,19.19c0.71-1.21,1.43-2.42,2.14-3.63c-0.71-1.23-1.42-2.46-2.13-3.68
+ c-1.42-0.01-2.85-0.02-4.27-0.04c-0.71,1.21-1.43,2.42-2.14,3.62c0.71,1.22,1.42,2.45,2.13,3.67
+ C106.15,19.16,107.57,19.17,109,19.19z"/>
+
+ <linearGradient id="SVGID_394_" gradientUnits="userSpaceOnUse" x1="156.708" y1="-335.4565" x2="160.936" y2="-328.1334" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_394_)" d="M109.02,8.38c0.71-1.21,1.43-2.43,2.14-3.65c-0.71-1.22-1.42-2.44-2.13-3.67
+ c-1.42,0-2.85,0-4.27,0c-0.71,1.21-1.43,2.43-2.14,3.64c0.71,1.21,1.42,2.43,2.13,3.65C106.18,8.36,107.6,8.37,109.02,8.38z"/>
+
+ <linearGradient id="SVGID_395_" gradientUnits="userSpaceOnUse" x1="168.0923" y1="-265.375" x2="172.1914" y2="-258.2751" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_395_)" d="M97.71,78.44c0.71-1.17,1.43-2.33,2.14-3.5c-0.71-1.25-1.42-2.5-2.13-3.75
+ c-1.43-0.08-2.85-0.16-4.28-0.25c-0.71,1.16-1.43,2.33-2.14,3.48c0.71,1.25,1.42,2.5,2.12,3.75
+ C94.86,78.26,96.28,78.35,97.71,78.44z"/>
+
+ <linearGradient id="SVGID_396_" gradientUnits="userSpaceOnUse" x1="168.0586" y1="-276.0962" x2="172.1719" y2="-268.9718" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_396_)" d="M97.73,67.71c0.71-1.17,1.43-2.34,2.15-3.52c-0.71-1.25-1.42-2.49-2.13-3.73
+ c-1.42-0.07-2.85-0.14-4.27-0.21c-0.72,1.17-1.43,2.34-2.15,3.5c0.71,1.24,1.42,2.49,2.13,3.73
+ C94.88,67.56,96.31,67.64,97.73,67.71z"/>
+
+ <linearGradient id="SVGID_397_" gradientUnits="userSpaceOnUse" x1="168.0234" y1="-286.8203" x2="172.1543" y2="-279.6655" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_397_)" d="M97.76,56.99c0.72-1.18,1.43-2.36,2.15-3.54c-0.71-1.24-1.42-2.48-2.13-3.72
+ c-1.43-0.06-2.85-0.12-4.28-0.17c-0.72,1.18-1.43,2.35-2.14,3.52c0.71,1.23,1.42,2.47,2.13,3.71
+ C94.91,56.86,96.34,56.92,97.76,56.99z"/>
+
+ <linearGradient id="SVGID_398_" gradientUnits="userSpaceOnUse" x1="167.9888" y1="-297.542" x2="172.1348" y2="-290.3609" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_398_)" d="M97.79,46.26c0.71-1.18,1.43-2.37,2.14-3.56c-0.71-1.23-1.42-2.47-2.13-3.7
+ c-1.42-0.04-2.85-0.09-4.27-0.13c-0.72,1.18-1.43,2.36-2.15,3.54c0.71,1.23,1.42,2.46,2.13,3.69
+ C94.94,46.15,96.36,46.21,97.79,46.26z"/>
+
+ <linearGradient id="SVGID_399_" gradientUnits="userSpaceOnUse" x1="167.9531" y1="-308.2676" x2="172.1167" y2="-301.0561" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_399_)" d="M97.81,35.53c0.72-1.19,1.43-2.38,2.14-3.57c-0.71-1.23-1.42-2.46-2.12-3.69
+ c-1.43-0.03-2.85-0.06-4.28-0.1c-0.71,1.19-1.43,2.37-2.14,3.56c0.71,1.22,1.42,2.45,2.12,3.67
+ C94.96,35.45,96.39,35.49,97.81,35.53z"/>
+
+ <linearGradient id="SVGID_400_" gradientUnits="userSpaceOnUse" x1="167.9194" y1="-318.9868" x2="172.0981" y2="-311.7491" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_400_)" d="M97.84,24.81c0.71-1.2,1.43-2.39,2.14-3.59c-0.71-1.22-1.42-2.44-2.13-3.66
+ c-1.42-0.02-2.85-0.04-4.27-0.06c-0.72,1.19-1.43,2.39-2.14,3.58c0.71,1.22,1.42,2.43,2.12,3.66
+ C94.99,24.75,96.42,24.78,97.84,24.81z"/>
+
+ <linearGradient id="SVGID_401_" gradientUnits="userSpaceOnUse" x1="167.8838" y1="-329.7104" x2="172.0776" y2="-322.4465" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_401_)" d="M97.87,14.08c0.71-1.2,1.43-2.4,2.14-3.61c-0.71-1.22-1.42-2.43-2.13-3.65
+ c-1.42-0.01-2.85-0.01-4.27-0.02c-0.72,1.2-1.43,2.4-2.14,3.6c0.71,1.21,1.42,2.42,2.13,3.63C95.02,14.05,96.44,14.06,97.87,14.08z
+ "/>
+
+ <linearGradient id="SVGID_402_" gradientUnits="userSpaceOnUse" x1="168.8901" y1="-338.6313" x2="172.0601" y2="-333.1409" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_402_)" d="M91.49-0.28c0.71,1.2,1.42,2.41,2.13,3.62c1.42,0,2.85,0.01,4.27,0.01
+ c0.71-1.21,1.43-2.42,2.14-3.63C97.19-0.28,94.34-0.28,91.49-0.28z"/>
+
+ <linearGradient id="SVGID_403_" gradientUnits="userSpaceOnUse" x1="178.9194" y1="-261.1211" x2="181.877" y2="-255.9985" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_403_)" d="M89.05,79.2c-0.71-1.25-1.42-2.5-2.13-3.75c-1.42-0.1-2.85-0.19-4.27-0.3
+ c-0.71,1.14-1.43,2.29-2.14,3.42C83.35,78.79,86.2,79,89.05,79.2z"/>
+
+ <linearGradient id="SVGID_404_" gradientUnits="userSpaceOnUse" x1="178.8828" y1="-271.7446" x2="182.9463" y2="-264.7065" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_404_)" d="M86.93,72.01c0.71-1.15,1.43-2.31,2.15-3.46c-0.71-1.24-1.42-2.48-2.13-3.73
+ c-1.42-0.08-2.85-0.17-4.27-0.25c-0.71,1.15-1.43,2.3-2.14,3.44c0.71,1.24,1.42,2.48,2.12,3.72
+ C84.08,71.83,85.51,71.92,86.93,72.01z"/>
+
+ <linearGradient id="SVGID_405_" gradientUnits="userSpaceOnUse" x1="178.8457" y1="-282.3716" x2="182.9292" y2="-275.2988" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_405_)" d="M86.96,61.38c0.71-1.16,1.43-2.32,2.15-3.48c-0.71-1.24-1.42-2.47-2.13-3.71
+ c-1.43-0.07-2.85-0.14-4.28-0.21c-0.71,1.16-1.43,2.31-2.14,3.46c0.71,1.23,1.42,2.46,2.12,3.7
+ C84.11,61.23,85.54,61.31,86.96,61.38z"/>
+
+ <linearGradient id="SVGID_406_" gradientUnits="userSpaceOnUse" x1="178.8086" y1="-292.9961" x2="182.9087" y2="-285.8945" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_406_)" d="M86.99,50.75c0.71-1.17,1.43-2.33,2.15-3.51c-0.71-1.23-1.42-2.46-2.13-3.68
+ c-1.43-0.06-2.85-0.12-4.28-0.17c-0.71,1.17-1.43,2.33-2.14,3.49c0.71,1.22,1.42,2.45,2.13,3.68
+ C84.14,50.62,85.56,50.69,86.99,50.75z"/>
+
+ <linearGradient id="SVGID_407_" gradientUnits="userSpaceOnUse" x1="178.7725" y1="-303.6211" x2="182.8911" y2="-296.4874" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_407_)" d="M87.01,40.12c0.72-1.17,1.43-2.35,2.15-3.53c-0.71-1.22-1.42-2.45-2.13-3.67
+ c-1.42-0.04-2.85-0.09-4.27-0.13c-0.72,1.17-1.43,2.34-2.14,3.51c0.71,1.22,1.42,2.44,2.12,3.66
+ C84.17,40.02,85.59,40.07,87.01,40.12z"/>
+
+ <linearGradient id="SVGID_408_" gradientUnits="userSpaceOnUse" x1="178.7358" y1="-314.2451" x2="182.8716" y2="-307.0818" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_408_)" d="M87.04,29.49c0.72-1.18,1.43-2.36,2.15-3.54c-0.71-1.22-1.42-2.43-2.13-3.64
+ c-1.42-0.03-2.85-0.06-4.27-0.09c-0.71,1.18-1.43,2.36-2.14,3.53c0.71,1.21,1.42,2.42,2.13,3.64
+ C84.19,29.41,85.62,29.45,87.04,29.49z"/>
+
+ <linearGradient id="SVGID_409_" gradientUnits="userSpaceOnUse" x1="178.6992" y1="-324.8711" x2="182.853" y2="-317.6765" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_409_)" d="M87.07,18.86c0.71-1.19,1.43-2.38,2.14-3.57c-0.71-1.21-1.42-2.42-2.12-3.62
+ c-1.42-0.02-2.85-0.03-4.27-0.05c-0.71,1.19-1.43,2.37-2.14,3.55c0.71,1.2,1.42,2.41,2.12,3.61
+ C84.22,18.81,85.65,18.84,87.07,18.86z"/>
+
+ <linearGradient id="SVGID_410_" gradientUnits="userSpaceOnUse" x1="178.6616" y1="-335.4951" x2="182.8325" y2="-328.2709" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_410_)" d="M87.1,8.23c0.71-1.19,1.43-2.39,2.14-3.58c-0.71-1.21-1.42-2.41-2.13-3.61c-1.42,0-2.85,0-4.27,0
+ c-0.71,1.19-1.43,2.38-2.14,3.57C81.41,5.8,82.12,7,82.83,8.2C84.25,8.21,85.67,8.22,87.1,8.23z"/>
+
+ <linearGradient id="SVGID_411_" gradientUnits="userSpaceOnUse" x1="190.0698" y1="-266.7964" x2="194.0757" y2="-259.858" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_411_)" d="M75.77,76.91c0.71-1.13,1.43-2.26,2.14-3.4c-0.71-1.24-1.42-2.48-2.12-3.72
+ c-1.42-0.1-2.85-0.21-4.27-0.31c-0.71,1.13-1.43,2.25-2.14,3.38c0.71,1.23,1.42,2.47,2.12,3.71
+ C72.93,76.68,74.35,76.79,75.77,76.91z"/>
+
+ <linearGradient id="SVGID_412_" gradientUnits="userSpaceOnUse" x1="190.0327" y1="-277.3081" x2="194.0586" y2="-270.3351" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_412_)" d="M75.8,66.39c0.71-1.14,1.43-2.28,2.14-3.42c-0.71-1.23-1.42-2.46-2.12-3.69
+ c-1.42-0.09-2.85-0.17-4.27-0.26c-0.71,1.14-1.43,2.27-2.14,3.4c0.71,1.23,1.42,2.45,2.12,3.69C72.95,66.19,74.38,66.29,75.8,66.39
+ z"/>
+
+ <linearGradient id="SVGID_413_" gradientUnits="userSpaceOnUse" x1="189.9941" y1="-287.8203" x2="194.04" y2="-280.8126" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_413_)" d="M75.83,55.87c0.71-1.15,1.43-2.29,2.14-3.44c-0.71-1.23-1.42-2.45-2.13-3.67
+ c-1.42-0.07-2.85-0.15-4.27-0.22c-0.71,1.14-1.43,2.28-2.14,3.42c0.71,1.22,1.42,2.44,2.12,3.66
+ C72.98,55.71,74.4,55.79,75.83,55.87z"/>
+
+ <linearGradient id="SVGID_414_" gradientUnits="userSpaceOnUse" x1="189.957" y1="-298.3311" x2="194.0229" y2="-291.2887" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_414_)" d="M75.86,45.35c0.71-1.15,1.43-2.31,2.14-3.47c-0.71-1.22-1.42-2.43-2.13-3.65
+ c-1.42-0.06-2.85-0.11-4.27-0.17c-0.71,1.15-1.43,2.3-2.14,3.44c0.71,1.21,1.42,2.42,2.12,3.64
+ C73.01,45.22,74.43,45.29,75.86,45.35z"/>
+
+ <linearGradient id="SVGID_415_" gradientUnits="userSpaceOnUse" x1="189.918" y1="-308.8442" x2="194.0044" y2="-301.7663" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_415_)" d="M75.88,34.84c0.71-1.16,1.43-2.33,2.14-3.49c-0.71-1.21-1.42-2.42-2.12-3.63
+ c-1.43-0.04-2.85-0.08-4.27-0.12c-0.71,1.16-1.43,2.32-2.14,3.47c0.71,1.2,1.42,2.41,2.13,3.61
+ C73.04,34.73,74.46,34.78,75.88,34.84z"/>
+
+ <linearGradient id="SVGID_416_" gradientUnits="userSpaceOnUse" x1="189.8809" y1="-319.356" x2="193.9873" y2="-312.2434" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_416_)" d="M75.91,24.32c0.71-1.17,1.43-2.34,2.14-3.51c-0.71-1.2-1.42-2.4-2.12-3.6
+ c-1.43-0.02-2.85-0.05-4.28-0.08c-0.71,1.16-1.43,2.33-2.14,3.49c0.71,1.2,1.42,2.39,2.13,3.59
+ C73.06,24.24,74.49,24.28,75.91,24.32z"/>
+
+ <linearGradient id="SVGID_417_" gradientUnits="userSpaceOnUse" x1="189.8408" y1="-329.8691" x2="193.9688" y2="-322.7194" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_417_)" d="M75.94,13.8c0.71-1.18,1.43-2.35,2.15-3.54c-0.71-1.2-1.42-2.39-2.12-3.58
+ c-1.43-0.01-2.85-0.02-4.28-0.03c-0.71,1.17-1.43,2.35-2.14,3.52c0.71,1.19,1.42,2.37,2.13,3.57
+ C73.09,13.76,74.52,13.78,75.94,13.8z"/>
+
+ <linearGradient id="SVGID_418_" gradientUnits="userSpaceOnUse" x1="190.8145" y1="-338.6304" x2="193.9517" y2="-333.1966" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_418_)" d="M69.57-0.28c0.71,1.18,1.42,2.36,2.13,3.54c1.42,0.01,2.85,0.01,4.27,0.02
+ c0.71-1.18,1.43-2.37,2.14-3.56C75.26-0.28,72.42-0.28,69.57-0.28z"/>
+
+ <linearGradient id="SVGID_419_" gradientUnits="userSpaceOnUse" x1="200.8877" y1="-262.8164" x2="203.7612" y2="-257.8393" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_419_)" d="M67.13,77.49c-0.71-1.24-1.42-2.47-2.12-3.7c-1.42-0.12-2.85-0.24-4.27-0.37
+ c-0.71,1.1-1.43,2.2-2.14,3.3C61.44,76.99,64.28,77.24,67.13,77.49z"/>
+
+ <linearGradient id="SVGID_420_" gradientUnits="userSpaceOnUse" x1="200.8506" y1="-273.207" x2="204.8164" y2="-266.338" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_420_)" d="M65.01,70.42c0.71-1.12,1.43-2.23,2.14-3.36c-0.71-1.23-1.42-2.45-2.12-3.68
+ c-1.43-0.1-2.85-0.21-4.27-0.32c-0.71,1.11-1.43,2.22-2.14,3.33c0.71,1.22,1.42,2.44,2.12,3.67
+ C62.17,70.19,63.59,70.31,65.01,70.42z"/>
+
+ <linearGradient id="SVGID_421_" gradientUnits="userSpaceOnUse" x1="200.8115" y1="-283.5967" x2="204.8003" y2="-276.6879" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_421_)" d="M65.04,60.03c0.71-1.12,1.43-2.25,2.14-3.38c-0.71-1.22-1.42-2.44-2.12-3.65
+ c-1.43-0.09-2.85-0.17-4.27-0.26c-0.71,1.12-1.43,2.24-2.14,3.35c0.71,1.21,1.41,2.42,2.12,3.64
+ C62.19,59.83,63.62,59.93,65.04,60.03z"/>
+
+ <linearGradient id="SVGID_422_" gradientUnits="userSpaceOnUse" x1="200.7739" y1="-293.9863" x2="204.7837" y2="-287.0412" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_422_)" d="M65.07,49.63c0.71-1.13,1.43-2.27,2.14-3.4c-0.71-1.21-1.42-2.42-2.12-3.63
+ c-1.43-0.07-2.85-0.14-4.27-0.21c-0.71,1.13-1.43,2.26-2.14,3.38c0.71,1.2,1.42,2.41,2.12,3.62
+ C62.22,49.47,63.64,49.55,65.07,49.63z"/>
+
+ <linearGradient id="SVGID_423_" gradientUnits="userSpaceOnUse" x1="200.7354" y1="-304.377" x2="204.7686" y2="-297.3912" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_423_)" d="M65.09,39.23c0.71-1.14,1.43-2.28,2.14-3.43c-0.71-1.2-1.42-2.4-2.12-3.6
+ c-1.42-0.05-2.85-0.11-4.27-0.16c-0.71,1.14-1.43,2.27-2.14,3.41c0.71,1.19,1.42,2.39,2.12,3.59
+ C62.25,39.1,63.67,39.17,65.09,39.23z"/>
+
+ <linearGradient id="SVGID_424_" gradientUnits="userSpaceOnUse" x1="200.6973" y1="-314.7651" x2="204.751" y2="-307.7439" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_424_)" d="M65.12,28.84c0.71-1.15,1.43-2.3,2.14-3.45c-0.71-1.19-1.42-2.39-2.13-3.58
+ c-1.42-0.04-2.85-0.07-4.27-0.11c-0.71,1.15-1.43,2.29-2.14,3.43c0.71,1.19,1.42,2.37,2.13,3.56
+ C62.27,28.74,63.7,28.79,65.12,28.84z"/>
+
+ <linearGradient id="SVGID_425_" gradientUnits="userSpaceOnUse" x1="200.6582" y1="-325.1562" x2="204.7363" y2="-318.0927" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_425_)" d="M65.15,18.44c0.72-1.16,1.43-2.32,2.15-3.48c-0.71-1.19-1.42-2.37-2.13-3.55
+ c-1.42-0.02-2.85-0.04-4.27-0.06c-0.71,1.16-1.43,2.31-2.14,3.46c0.71,1.18,1.42,2.36,2.13,3.54
+ C62.3,18.38,63.72,18.41,65.15,18.44z"/>
+
+ <linearGradient id="SVGID_426_" gradientUnits="userSpaceOnUse" x1="200.6187" y1="-335.5449" x2="204.7178" y2="-328.445" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_426_)" d="M65.17,8.04c0.71-1.17,1.43-2.33,2.15-3.5c-0.71-1.18-1.42-2.36-2.13-3.53c-1.42,0-2.85,0-4.27,0
+ c-0.72,1.17-1.43,2.33-2.14,3.49C59.49,5.66,60.19,6.83,60.9,8C62.33,8.02,63.75,8.03,65.17,8.04z"/>
+
+ <linearGradient id="SVGID_427_" gradientUnits="userSpaceOnUse" x1="212.0288" y1="-268.5566" x2="215.9248" y2="-261.8086" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_427_)" d="M53.87,75c0.71-1.09,1.43-2.18,2.14-3.28c-0.71-1.22-1.42-2.44-2.12-3.66
+ c-1.42-0.12-2.85-0.25-4.27-0.38c-0.71,1.09-1.42,2.17-2.14,3.25c0.71,1.21,1.42,2.43,2.12,3.65C51.02,74.72,52.45,74.86,53.87,75z
+ "/>
+
+ <linearGradient id="SVGID_428_" gradientUnits="userSpaceOnUse" x1="211.9917" y1="-278.8057" x2="215.9116" y2="-272.0162" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_428_)" d="M53.89,64.74c0.71-1.1,1.43-2.2,2.14-3.3c-0.71-1.22-1.42-2.43-2.12-3.63
+ c-1.42-0.1-2.84-0.21-4.27-0.32c-0.71,1.1-1.43,2.19-2.14,3.28c0.71,1.21,1.42,2.41,2.12,3.62C51.05,64.5,52.47,64.62,53.89,64.74z
+ "/>
+
+ <linearGradient id="SVGID_429_" gradientUnits="userSpaceOnUse" x1="211.9541" y1="-289.0591" x2="215.8999" y2="-282.2248" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_429_)" d="M53.92,54.48c0.71-1.11,1.43-2.22,2.14-3.33c-0.71-1.2-1.41-2.41-2.12-3.61
+ c-1.42-0.09-2.85-0.17-4.27-0.26c-0.71,1.1-1.43,2.21-2.14,3.3c0.71,1.2,1.42,2.39,2.12,3.6C51.07,54.28,52.5,54.38,53.92,54.48z"
+ />
+
+ <linearGradient id="SVGID_430_" gradientUnits="userSpaceOnUse" x1="211.9165" y1="-299.3091" x2="215.8857" y2="-292.4342" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_430_)" d="M53.94,44.22c0.72-1.12,1.43-2.24,2.14-3.36c-0.71-1.2-1.42-2.39-2.12-3.58
+ c-1.42-0.07-2.85-0.14-4.27-0.21c-0.72,1.12-1.43,2.23-2.14,3.33c0.71,1.19,1.42,2.37,2.12,3.57
+ C51.1,44.06,52.52,44.14,53.94,44.22z"/>
+
+ <linearGradient id="SVGID_431_" gradientUnits="userSpaceOnUse" x1="211.8784" y1="-309.5605" x2="215.873" y2="-302.6416" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_431_)" d="M53.97,33.97c0.71-1.13,1.43-2.25,2.14-3.39c-0.71-1.18-1.42-2.37-2.12-3.55
+ c-1.42-0.05-2.85-0.1-4.27-0.15C49,28,48.29,29.12,47.57,30.24c0.71,1.18,1.42,2.36,2.13,3.54C51.12,33.84,52.54,33.91,53.97,33.97
+ z"/>
+
+ <linearGradient id="SVGID_432_" gradientUnits="userSpaceOnUse" x1="211.8413" y1="-319.811" x2="215.8604" y2="-312.8499" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_432_)" d="M53.99,23.71c0.71-1.13,1.43-2.27,2.14-3.42c-0.71-1.18-1.42-2.35-2.12-3.52
+ c-1.42-0.03-2.85-0.06-4.27-0.09c-0.71,1.13-1.43,2.26-2.14,3.39c0.71,1.17,1.42,2.34,2.13,3.51
+ C51.15,23.62,52.57,23.67,53.99,23.71z"/>
+
+ <linearGradient id="SVGID_433_" gradientUnits="userSpaceOnUse" x1="211.8042" y1="-330.0625" x2="215.8481" y2="-323.0582" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_433_)" d="M54.02,13.45c0.71-1.14,1.43-2.29,2.14-3.44c-0.71-1.17-1.42-2.33-2.12-3.5
+ c-1.42-0.01-2.85-0.02-4.27-0.04c-0.71,1.14-1.43,2.28-2.14,3.42c0.71,1.16,1.42,2.32,2.13,3.48C51.17,13.4,52.6,13.43,54.02,13.45
+ z"/>
+
+ <linearGradient id="SVGID_434_" gradientUnits="userSpaceOnUse" x1="212.7363" y1="-338.6313" x2="215.8345" y2="-333.2652" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_434_)" d="M47.65-0.28c0.71,1.15,1.42,2.3,2.13,3.45c1.42,0,2.85,0.01,4.27,0.02
+ c0.71-1.15,1.43-2.31,2.14-3.47C53.34-0.28,50.49-0.28,47.65-0.28z"/>
+
+ <linearGradient id="SVGID_435_" gradientUnits="userSpaceOnUse" x1="222.8325" y1="-264.8745" x2="225.6128" y2="-260.0589" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_435_)" d="M45.24,75.4c-0.71-1.22-1.41-2.43-2.12-3.64c-1.42-0.15-2.84-0.29-4.26-0.44
+ c-0.71,1.06-1.42,2.12-2.14,3.17C39.55,74.8,42.39,75.11,45.24,75.4z"/>
+
+ <linearGradient id="SVGID_436_" gradientUnits="userSpaceOnUse" x1="222.7974" y1="-274.979" x2="226.6479" y2="-268.3096" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_436_)" d="M43.12,68.49c0.71-1.07,1.43-2.15,2.14-3.23c-0.71-1.21-1.41-2.41-2.12-3.61
+ c-1.42-0.12-2.84-0.25-4.26-0.38c-0.71,1.07-1.42,2.14-2.13,3.2c0.71,1.2,1.41,2.4,2.12,3.6C40.28,68.21,41.7,68.35,43.12,68.49z"
+ />
+
+ <linearGradient id="SVGID_437_" gradientUnits="userSpaceOnUse" x1="222.7627" y1="-285.083" x2="226.6396" y2="-278.3679" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_437_)" d="M43.14,58.37c0.71-1.08,1.43-2.17,2.14-3.26c-0.71-1.2-1.42-2.39-2.12-3.58
+ c-1.42-0.1-2.84-0.21-4.26-0.32c-0.71,1.08-1.42,2.16-2.14,3.23c0.71,1.19,1.42,2.38,2.12,3.57C40.3,58.14,41.72,58.26,43.14,58.37
+ z"/>
+
+ <linearGradient id="SVGID_438_" gradientUnits="userSpaceOnUse" x1="222.7266" y1="-295.188" x2="226.6313" y2="-288.4247" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_438_)" d="M43.16,48.26c0.71-1.09,1.43-2.19,2.14-3.29c-0.71-1.19-1.42-2.37-2.12-3.55
+ c-1.42-0.08-2.84-0.17-4.27-0.25c-0.71,1.09-1.43,2.18-2.14,3.26c0.71,1.18,1.42,2.35,2.12,3.54
+ C40.32,48.07,41.74,48.17,43.16,48.26z"/>
+
+ <linearGradient id="SVGID_439_" gradientUnits="userSpaceOnUse" x1="222.6895" y1="-305.293" x2="226.6216" y2="-298.4823" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_439_)" d="M43.19,38.15c0.71-1.1,1.43-2.21,2.14-3.32c-0.71-1.18-1.42-2.35-2.12-3.53
+ c-1.42-0.06-2.85-0.13-4.27-0.19c-0.71,1.1-1.43,2.2-2.14,3.29c0.71,1.17,1.42,2.33,2.12,3.51C40.34,38,41.77,38.07,43.19,38.15z"
+ />
+
+ <linearGradient id="SVGID_440_" gradientUnits="userSpaceOnUse" x1="222.6543" y1="-315.397" x2="226.6138" y2="-308.539" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_440_)" d="M43.21,28.04c0.71-1.11,1.43-2.23,2.14-3.35c-0.71-1.17-1.42-2.33-2.12-3.49
+ c-1.42-0.04-2.85-0.09-4.27-0.13c-0.71,1.11-1.43,2.22-2.14,3.32c0.71,1.16,1.42,2.31,2.12,3.48
+ C40.36,27.93,41.79,27.98,43.21,28.04z"/>
+
+ <linearGradient id="SVGID_441_" gradientUnits="userSpaceOnUse" x1="222.6196" y1="-325.5005" x2="226.6055" y2="-318.5968" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_441_)" d="M43.23,17.93c0.71-1.12,1.43-2.25,2.14-3.38c-0.71-1.16-1.42-2.31-2.13-3.46
+ c-1.42-0.02-2.85-0.05-4.27-0.07c-0.71,1.12-1.43,2.24-2.14,3.36c0.71,1.15,1.42,2.29,2.13,3.45
+ C40.38,17.86,41.81,17.89,43.23,17.93z"/>
+
+ <linearGradient id="SVGID_442_" gradientUnits="userSpaceOnUse" x1="222.5825" y1="-335.6055" x2="226.5947" y2="-328.6561" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_442_)" d="M43.25,7.82c0.72-1.13,1.43-2.27,2.14-3.41c-0.71-1.15-1.42-2.29-2.13-3.44
+ c-1.42,0-2.85,0-4.27-0.01c-0.71,1.13-1.43,2.26-2.14,3.39c0.71,1.13,1.42,2.27,2.13,3.41C40.41,7.78,41.83,7.8,43.25,7.82z"/>
+
+ <linearGradient id="SVGID_443_" gradientUnits="userSpaceOnUse" x1="233.9585" y1="-270.6538" x2="237.728" y2="-264.1248" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_443_)" d="M32,72.72c0.71-1.04,1.42-2.09,2.13-3.14c-0.71-1.2-1.42-2.4-2.12-3.59
+ c-1.42-0.15-2.84-0.29-4.26-0.44c-0.71,1.04-1.42,2.07-2.13,3.1c0.7,1.19,1.41,2.39,2.12,3.58C29.16,72.4,30.58,72.56,32,72.72z"/>
+
+ <linearGradient id="SVGID_444_" gradientUnits="userSpaceOnUse" x1="233.9268" y1="-280.5952" x2="237.7271" y2="-274.0129" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_444_)" d="M32.02,62.77c0.71-1.05,1.42-2.11,2.13-3.17c-0.71-1.19-1.42-2.38-2.12-3.56
+ c-1.42-0.12-2.84-0.25-4.26-0.38c-0.71,1.05-1.42,2.1-2.13,3.14c0.71,1.18,1.41,2.36,2.12,3.55C29.18,62.5,30.6,62.64,32.02,62.77z
+ "/>
+
+ <linearGradient id="SVGID_445_" gradientUnits="userSpaceOnUse" x1="233.8955" y1="-290.5352" x2="237.7251" y2="-283.9021" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_445_)" d="M32.03,52.83c0.71-1.06,1.42-2.13,2.14-3.2c-0.71-1.18-1.42-2.35-2.12-3.53
+ c-1.42-0.1-2.84-0.2-4.26-0.31c-0.71,1.06-1.42,2.12-2.13,3.17c0.71,1.17,1.42,2.34,2.12,3.51C29.19,52.59,30.61,52.71,32.03,52.83
+ z"/>
+
+ <linearGradient id="SVGID_446_" gradientUnits="userSpaceOnUse" x1="233.8633" y1="-300.4727" x2="237.7207" y2="-293.7914" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_446_)" d="M32.05,42.88c0.71-1.08,1.42-2.15,2.14-3.24c-0.71-1.17-1.42-2.33-2.13-3.49
+ c-1.42-0.08-2.84-0.16-4.26-0.24c-0.71,1.07-1.42,2.14-2.13,3.21c0.71,1.16,1.42,2.32,2.12,3.48
+ C29.21,42.69,30.63,42.78,32.05,42.88z"/>
+
+ <linearGradient id="SVGID_447_" gradientUnits="userSpaceOnUse" x1="233.8306" y1="-310.4131" x2="237.7173" y2="-303.6811" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_447_)" d="M32.07,32.93c0.71-1.09,1.43-2.17,2.14-3.27c-0.71-1.16-1.42-2.31-2.13-3.46
+ c-1.42-0.06-2.84-0.12-4.27-0.18c-0.71,1.08-1.43,2.16-2.14,3.24c0.71,1.14,1.42,2.29,2.13,3.44
+ C29.23,32.78,30.65,32.86,32.07,32.93z"/>
+
+ <linearGradient id="SVGID_448_" gradientUnits="userSpaceOnUse" x1="233.8008" y1="-320.3525" x2="237.7163" y2="-313.5706" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_448_)" d="M32.09,22.98c0.71-1.1,1.43-2.2,2.14-3.3c-0.71-1.15-1.42-2.29-2.13-3.43
+ c-1.42-0.04-2.85-0.07-4.27-0.11c-0.71,1.1-1.43,2.19-2.14,3.27c0.71,1.13,1.42,2.27,2.13,3.41
+ C29.24,22.88,30.67,22.93,32.09,22.98z"/>
+
+ <linearGradient id="SVGID_449_" gradientUnits="userSpaceOnUse" x1="233.7666" y1="-330.2925" x2="237.7119" y2="-323.459" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_449_)" d="M32.11,13.03c0.71-1.11,1.43-2.22,2.14-3.33c-0.71-1.13-1.42-2.27-2.13-3.4
+ c-1.42-0.01-2.85-0.03-4.27-0.04c-0.71,1.11-1.43,2.21-2.14,3.31c0.71,1.12,1.42,2.25,2.13,3.38
+ C29.26,12.98,30.68,13.01,32.11,13.03z"/>
+
+ <linearGradient id="SVGID_450_" gradientUnits="userSpaceOnUse" x1="234.6597" y1="-338.6313" x2="237.7095" y2="-333.3489" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_450_)" d="M25.72-0.28c0.71,1.11,1.42,2.22,2.13,3.34c1.42,0.01,2.85,0.02,4.27,0.02
+ c0.71-1.12,1.43-2.24,2.14-3.37C31.42-0.28,28.57-0.28,25.72-0.28z"/>
+
+ <linearGradient id="SVGID_451_" gradientUnits="userSpaceOnUse" x1="244.7446" y1="-267.2954" x2="247.4238" y2="-262.6549" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_451_)" d="M23.38,72.94c-0.71-1.19-1.41-2.38-2.12-3.57c-1.41-0.17-2.83-0.34-4.25-0.51
+ c-0.71,1.01-1.42,2.01-2.13,3.01C17.71,72.24,20.55,72.59,23.38,72.94z"/>
+
+ <linearGradient id="SVGID_452_" gradientUnits="userSpaceOnUse" x1="244.7158" y1="-277.0654" x2="248.4365" y2="-270.621" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_452_)" d="M21.26,66.21c0.71-1.02,1.42-2.05,2.13-3.08c-0.71-1.18-1.42-2.36-2.12-3.53
+ c-1.42-0.14-2.84-0.29-4.26-0.43c-0.71,1.02-1.42,2.04-2.13,3.05c0.71,1.17,1.41,2.34,2.12,3.52
+ C18.43,65.89,19.85,66.05,21.26,66.21z"/>
+
+ <linearGradient id="SVGID_453_" gradientUnits="userSpaceOnUse" x1="244.6895" y1="-286.8335" x2="248.4409" y2="-280.3358" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_453_)" d="M21.28,56.43c0.71-1.04,1.42-2.08,2.13-3.12c-0.71-1.17-1.42-2.33-2.12-3.5
+ c-1.42-0.12-2.84-0.24-4.26-0.36c-0.71,1.03-1.42,2.06-2.13,3.08c0.71,1.16,1.42,2.32,2.12,3.48
+ C18.44,56.16,19.86,56.29,21.28,56.43z"/>
+
+ <linearGradient id="SVGID_454_" gradientUnits="userSpaceOnUse" x1="244.6626" y1="-296.5991" x2="248.4438" y2="-290.0498" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_454_)" d="M21.29,46.65c0.71-1.04,1.42-2.09,2.13-3.15c-0.71-1.16-1.42-2.31-2.13-3.46
+ c-1.42-0.1-2.84-0.2-4.26-0.3c-0.71,1.04-1.42,2.09-2.13,3.12c0.71,1.14,1.42,2.29,2.12,3.44C18.45,46.43,19.87,46.54,21.29,46.65z
+ "/>
+
+ <linearGradient id="SVGID_455_" gradientUnits="userSpaceOnUse" x1="244.6372" y1="-306.3667" x2="248.4497" y2="-299.7632" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_455_)" d="M21.3,36.88c0.71-1.06,1.43-2.12,2.13-3.19c-0.71-1.15-1.42-2.29-2.12-3.42
+ c-1.42-0.08-2.84-0.15-4.26-0.22c-0.71,1.06-1.42,2.11-2.13,3.16c0.71,1.13,1.42,2.27,2.13,3.41C18.46,36.7,19.88,36.79,21.3,36.88
+ z"/>
+
+ <linearGradient id="SVGID_456_" gradientUnits="userSpaceOnUse" x1="244.6079" y1="-316.1377" x2="248.4536" y2="-309.4767" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_456_)" d="M21.31,27.1c0.71-1.07,1.42-2.14,2.14-3.22c-0.71-1.13-1.42-2.27-2.13-3.39
+ c-1.42-0.05-2.84-0.1-4.27-0.15c-0.71,1.07-1.42,2.13-2.13,3.19c0.71,1.12,1.42,2.24,2.13,3.37C18.47,26.97,19.89,27.04,21.31,27.1
+ z"/>
+
+ <linearGradient id="SVGID_457_" gradientUnits="userSpaceOnUse" x1="244.5815" y1="-325.9062" x2="248.46" y2="-319.1886" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_457_)" d="M21.33,17.33c0.71-1.08,1.42-2.17,2.13-3.26c-0.71-1.12-1.42-2.24-2.13-3.36
+ c-1.42-0.03-2.85-0.05-4.27-0.08c-0.71,1.08-1.42,2.16-2.14,3.23c0.71,1.11,1.42,2.22,2.13,3.34
+ C18.48,17.24,19.91,17.28,21.33,17.33z"/>
+
+ <linearGradient id="SVGID_458_" gradientUnits="userSpaceOnUse" x1="244.5532" y1="-335.6743" x2="248.4624" y2="-328.9034" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_458_)" d="M21.34,7.55c0.71-1.09,1.43-2.19,2.14-3.29c-0.71-1.11-1.42-2.22-2.13-3.33
+ c-1.42,0-2.85-0.01-4.27-0.01c-0.71,1.09-1.42,2.18-2.14,3.27c0.71,1.09,1.42,2.19,2.13,3.3C18.49,7.51,19.92,7.53,21.34,7.55z"/>
+
+ <linearGradient id="SVGID_459_" gradientUnits="userSpaceOnUse" x1="255.856" y1="-273.0938" x2="259.4858" y2="-266.8066" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_459_)" d="M10.17,70.07c0.71-0.99,1.42-1.98,2.12-2.98c-0.71-1.17-1.42-2.34-2.12-3.51
+ c-1.42-0.17-2.83-0.33-4.25-0.51c-0.71,0.99-1.42,1.97-2.13,2.95c0.71,1.16,1.42,2.32,2.12,3.49C7.34,69.71,8.75,69.89,10.17,70.07
+ z"/>
+
+ <linearGradient id="SVGID_460_" gradientUnits="userSpaceOnUse" x1="255.8354" y1="-282.6714" x2="259.4985" y2="-276.3267" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_460_)" d="M10.18,60.49c0.71-1,1.42-2.01,2.13-3.02c-0.71-1.16-1.41-2.31-2.12-3.47
+ c-1.42-0.14-2.83-0.29-4.25-0.43c-0.71,1-1.42,1.99-2.13,2.98C4.51,57.7,5.22,58.85,5.92,60C7.34,60.17,8.76,60.33,10.18,60.49z"/>
+
+ <linearGradient id="SVGID_461_" gradientUnits="userSpaceOnUse" x1="255.8149" y1="-292.249" x2="259.5117" y2="-285.846" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_461_)" d="M10.18,50.9c0.71-1.01,1.42-2.03,2.13-3.06c-0.71-1.15-1.42-2.29-2.13-3.43
+ c-1.42-0.12-2.83-0.24-4.26-0.36c-0.71,1.01-1.42,2.02-2.13,3.02c0.71,1.13,1.42,2.27,2.13,3.41C7.35,50.63,8.76,50.77,10.18,50.9z
+ "/>
+
+ <linearGradient id="SVGID_462_" gradientUnits="userSpaceOnUse" x1="255.7964" y1="-301.8252" x2="259.5254" y2="-295.3664" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_462_)" d="M10.19,41.31c0.71-1.03,1.42-2.06,2.13-3.09c-0.71-1.13-1.42-2.26-2.13-3.39
+ c-1.42-0.09-2.84-0.19-4.26-0.28c-0.71,1.02-1.42,2.05-2.13,3.06c0.71,1.12,1.42,2.24,2.13,3.37C7.35,41.1,8.76,41.21,10.19,41.31z
+ "/>
+
+ <linearGradient id="SVGID_463_" gradientUnits="userSpaceOnUse" x1="255.7729" y1="-311.4058" x2="259.5381" y2="-304.8843" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_463_)" d="M10.19,31.73c0.71-1.04,1.42-2.08,2.13-3.13c-0.71-1.12-1.42-2.24-2.13-3.36
+ c-1.42-0.06-2.84-0.13-4.26-0.2c-0.71,1.04-1.42,2.07-2.13,3.1c0.71,1.11,1.42,2.22,2.13,3.33C7.35,31.56,8.77,31.64,10.19,31.73z"
+ />
+
+ <linearGradient id="SVGID_464_" gradientUnits="userSpaceOnUse" x1="255.7559" y1="-320.9819" x2="259.5527" y2="-314.4055" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_464_)" d="M10.2,22.14c0.71-1.05,1.42-2.11,2.13-3.17c-0.71-1.11-1.42-2.21-2.13-3.31
+ c-1.42-0.04-2.84-0.08-4.27-0.13c-0.71,1.05-1.42,2.1-2.13,3.14c0.71,1.09,1.42,2.19,2.13,3.29C7.36,22.02,8.77,22.08,10.2,22.14z"
+ />
+
+ <linearGradient id="SVGID_465_" gradientUnits="userSpaceOnUse" x1="255.7334" y1="-330.5615" x2="259.5659" y2="-323.9234" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_465_)" d="M10.2,12.55c0.71-1.06,1.43-2.13,2.13-3.2c-0.71-1.1-1.42-2.19-2.13-3.28
+ C8.78,6.05,7.36,6.03,5.93,6.02C5.22,7.08,4.51,8.14,3.8,9.2c0.71,1.08,1.42,2.16,2.13,3.25C7.36,12.48,8.78,12.52,10.2,12.55z"/>
+
+ <linearGradient id="SVGID_466_" gradientUnits="userSpaceOnUse" x1="256.5825" y1="-338.6318" x2="259.5781" y2="-333.4433" gradientTransform="matrix(-1 0 0 1 265.7217 336.5049)">
+ <stop offset="0.1264" style="stop-color:#80E6FF"/>
+ <stop offset="0.6429" style="stop-color:#2BD5FF"/>
+ <stop offset="1" style="stop-color:#2BD5FF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_466_)" d="M3.8-0.28c0.71,1.07,1.42,2.14,2.13,3.22c1.43,0.01,2.85,0.02,4.27,0.03
+ c0.71-1.08,1.43-2.16,2.14-3.24C9.5-0.28,6.65-0.28,3.8-0.28z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_default_icon_68x68px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_default_icon_68x68px.svg
new file mode 100644
index 0000000000..1ffeedde1b
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_default_icon_68x68px.svg
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="68px" height="68px" viewBox="0 0 68 68" enable-background="new 0 0 68 68" xml:space="preserve">
+<g>
+ <path fill="#29CAF2" d="M68.03,63.85c0,2.35-1.9,4.25-4.25,4.25H4.28c-2.35,0-4.25-1.9-4.25-4.25V4.35C0.03,2,1.94,0.1,4.28,0.1
+ h59.5c2.35,0,4.25,1.9,4.25,4.25V63.85z"/>
+ <g>
+ <rect x="4.35" y="4.89" fill="#2BD5FF" width="58.44" height="58.44"/>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="8.9175" y1="36.4287" x2="62.7471" y2="36.4287">
+ <stop offset="0.1538" style="stop-color:#27C0E6"/>
+ <stop offset="0.4396" style="stop-color:#25B7DB"/>
+ <stop offset="0.7253" style="stop-color:#22A5C4"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M62.65,63.24c0.15-4.38,0.2-10.69-0.56-11.92c-3.75-6.06-15.11-4.72-18.33-4.21
+ c0-1.52-0.01-2.86-0.02-3.88c0.66-0.68,1.26-1.46,1.81-2.31l0.08,0.25c4.67,0.67,5.26-14.6,5.26-14.6
+ C51.22,4.85,37.65,9.83,35.49,10.76c-3.99-1.01-13.46-1.7-13.19,14.65c0,0-0.69,14.47,4.61,14.88c0.65,1.11,1.4,2.09,2.21,2.94
+ c-0.01,0.94-0.05,2.15-0.1,3.54c-6.95-0.48-19.27-0.11-20.08,8.36c-0.08,0.82,0.15,4.82,0.36,8.11L62.65,63.24z"/>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_idle_38x38px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_idle_38x38px.svg
new file mode 100644
index 0000000000..71f49aa719
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_idle_38x38px.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="38px" height="38px" viewBox="0 0 38 38" enable-background="new 0 0 38 38" xml:space="preserve">
+<g>
+ <circle fill="#29CAF2" cx="19.08" cy="19.08" r="19"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="19.0747" y1="31.4219" x2="19.0747" y2="6.7417">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M19.08,31.42c-6.8,0-12.34-5.54-12.34-12.34c0-6.8,5.54-12.34,12.34-12.34
+ c6.8,0,12.34,5.54,12.34,12.34C31.41,25.88,25.88,31.42,19.08,31.42L19.08,31.42z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="9.5791" y1="12.4316" x2="28.57" y2="25.7292">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="19.07" cy="19.08" r="11.59"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="11.3086" y1="13.7173" x2="26.6309" y2="24.4461">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M18.97,28.44c-5.16,0-9.36-4.19-9.36-9.35c0-5.16,4.2-9.36,9.36-9.36c5.16,0,9.35,4.2,9.35,9.36
+ C28.32,24.24,24.13,28.44,18.97,28.44L18.97,28.44z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="25.4668" y1="24.5332" x2="12.4717" y2="13.629">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="18.97" cy="19.08" r="8.48"/>
+ <path fill="#FF901F" d="M18.97,26.44c-4.06,0-7.36-3.3-7.36-7.36c0-4.06,3.3-7.36,7.36-7.36c4.06,0,7.36,3.3,7.36,7.36
+ C26.33,23.14,23.03,26.44,18.97,26.44L18.97,26.44z"/>
+ <g>
+ <path fill="#FFD06B" d="M16.68,16.79c2.07-2.07,5.23-2.37,7.63-0.92c-0.25-0.42-0.56-0.83-0.93-1.19
+ c-2.43-2.43-6.39-2.43-8.82,0c-2.43,2.43-2.43,6.39,0,8.82c0.37,0.37,0.77,0.67,1.19,0.92C14.3,22.02,14.61,18.85,16.68,16.79z"
+ />
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-119.9077" y1="69.291" x2="-124.6987" y2="60.9927" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#FF901F"/>
+ <stop offset="1" style="stop-color:#FFB81F"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M23.38,23.49c2.07-2.07,2.37-5.23,0.93-7.63c-2.4-1.45-5.56-1.14-7.63,0.92
+ c-2.07,2.07-2.37,5.23-0.92,7.63C18.15,25.86,21.31,25.55,23.38,23.49z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_offline_38x38px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_offline_38x38px.svg
new file mode 100644
index 0000000000..84c2514adc
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_offline_38x38px.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="38px" height="38px" viewBox="0 0 38 38" enable-background="new 0 0 38 38" xml:space="preserve">
+<g>
+ <circle fill="#29CAF2" cx="19.08" cy="19.09" r="19"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="19.0757" y1="31.4287" x2="19.0757" y2="6.7485">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M19.08,31.43c-6.8,0-12.34-5.54-12.34-12.34c0-6.8,5.54-12.34,12.34-12.34s12.34,5.54,12.34,12.34
+ C31.42,25.89,25.88,31.43,19.08,31.43L19.08,31.43z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="9.5801" y1="12.439" x2="28.5702" y2="25.736">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="19.07" cy="19.09" r="11.59"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="11.3101" y1="13.7241" x2="26.6308" y2="24.4518">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M18.97,28.44c-5.16,0-9.36-4.2-9.36-9.35c0-5.16,4.2-9.36,9.36-9.36c5.16,0,9.35,4.2,9.35,9.36
+ C28.32,24.25,24.13,28.44,18.97,28.44L18.97,28.44z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="25.4678" y1="24.54" x2="12.4734" y2="13.6365">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="18.97" cy="19.09" r="8.48"/>
+ <path fill="#BD0700" d="M18.97,26.45c-4.06,0-7.36-3.3-7.36-7.36s3.3-7.36,7.36-7.36c4.06,0,7.36,3.3,7.36,7.36
+ S23.03,26.45,18.97,26.45L18.97,26.45z"/>
+ <g>
+ <path fill="#F25757" d="M16.68,16.79c2.07-2.07,5.23-2.37,7.63-0.92c-0.25-0.42-0.56-0.83-0.92-1.19
+ c-2.43-2.43-6.39-2.43-8.82,0c-2.43,2.43-2.43,6.39,0,8.82c0.37,0.37,0.77,0.67,1.19,0.92C14.3,22.02,14.61,18.86,16.68,16.79z"
+ />
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-119.9072" y1="69.2979" x2="-124.6982" y2="60.9996" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#BD0700"/>
+ <stop offset="1" style="stop-color:#E35D58"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M23.38,23.5c2.07-2.07,2.37-5.23,0.92-7.63c-2.4-1.45-5.56-1.14-7.63,0.92
+ c-2.07,2.07-2.37,5.23-0.92,7.63C18.15,25.86,21.31,25.56,23.38,23.5z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_online_38x38px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_online_38x38px.svg
new file mode 100644
index 0000000000..76daf31809
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/blue_SVG/blue_user_status_online_38x38px.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="38px" height="38px" viewBox="0 0 38 38" enable-background="new 0 0 38 38" xml:space="preserve">
+<g>
+ <circle fill="#29CAF2" cx="19.07" cy="19.08" r="19"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="19.0737" y1="31.4219" x2="19.0737" y2="6.7417">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M19.07,31.42c-6.8,0-12.34-5.54-12.34-12.34c0-6.8,5.54-12.34,12.34-12.34s12.34,5.54,12.34,12.34
+ C31.41,25.88,25.88,31.42,19.07,31.42L19.07,31.42z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="9.5786" y1="12.4321" x2="28.5695" y2="25.7297">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="19.07" cy="19.08" r="11.59"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="11.3086" y1="13.7178" x2="26.6293" y2="24.4454">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M18.97,28.44c-5.16,0-9.36-4.19-9.36-9.35c0-5.16,4.2-9.36,9.36-9.36s9.35,4.2,9.35,9.36
+ C28.32,24.24,24.13,28.44,18.97,28.44L18.97,28.44z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="25.4648" y1="24.5322" x2="12.4713" y2="13.6293">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="18.97" cy="19.08" r="8.48"/>
+ <path fill="#09B300" d="M18.97,26.44c-4.06,0-7.36-3.3-7.36-7.36c0-4.06,3.3-7.36,7.36-7.36c4.06,0,7.36,3.3,7.36,7.36
+ C26.33,23.14,23.03,26.44,18.97,26.44L18.97,26.44z"/>
+ <g>
+ <path fill="#57EB51" d="M16.68,16.79c2.07-2.07,5.23-2.37,7.62-0.92c-0.25-0.42-0.56-0.83-0.92-1.19
+ c-2.43-2.43-6.39-2.43-8.82,0c-2.43,2.43-2.43,6.39,0,8.82c0.37,0.37,0.77,0.67,1.19,0.93C14.3,22.02,14.61,18.85,16.68,16.79z"
+ />
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-119.9087" y1="69.292" x2="-124.6997" y2="60.9937" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#09AA00"/>
+ <stop offset="1" style="stop-color:#4DCC46"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M23.38,23.49c2.07-2.07,2.37-5.23,0.92-7.63c-2.39-1.45-5.56-1.14-7.62,0.92
+ c-2.07,2.07-2.37,5.23-0.93,7.63C18.15,25.86,21.31,25.55,23.38,23.49z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/areacodes.txt b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/areacodes.txt
new file mode 100644
index 0000000000..dc7e7d81b6
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/areacodes.txt
@@ -0,0 +1,62 @@
++30
++31
++32
++33
++34
++350
++351
++352
++353
++354
++355
++356
++357
++358
++359
++36
++3
++370
++371
++372
++373
++374
++375
++376
++377
++377 44
++378
++379
++38
++380
++381
++382
++383
++384
++385
++386
++386 49
++387
++388
++388 3
++389
++39
++40
++41
++42
++420
++421
++422
++423
++424
++425
++426
++427
++428
++429
++43
++44
++45
++46
++47
++48
++49 \ No newline at end of file
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesF.txt b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesF.txt
new file mode 100644
index 0000000000..4bf14924a7
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesF.txt
@@ -0,0 +1,100 @@
+Aida
+Aija
+Aila
+Aili
+Ailikki
+Aimi
+Aina
+Alexia
+Alice
+Amanda
+Amber
+Amy
+Angela
+Angelica
+Ann
+Beth
+Brenda
+Brooke
+Caitlin
+Camilla
+Camille
+Carmen
+Cassandra
+Catherine
+Edna
+Eeva
+Eeve
+Eevi
+Eija
+Eila
+Eimi
+Eleanor
+Eleonora
+Elizabeth
+Ellen
+Enna
+Enni
+Erica
+Erika
+Erja
+Essi
+Essie
+Heini
+Heleena
+Helen
+Helena
+Helene
+Helga
+Hilja
+Hilkka
+Hille
+Hillervo
+Hillevi
+Hilma
+Irene
+Irina
+Irja
+Irma
+Irmeli
+Iro
+Jacqueline
+Jane
+Jennifer
+Jenny
+Jessica
+Jill
+Kaire
+Kaisa
+Kaisla
+Kaisu
+Katarine
+Kate
+Kate
+Kateriina
+Katharina
+Katharine
+Katherine
+Kathleen
+Marge
+Mary
+May
+Megan
+Melinda
+Morgan
+Nellie
+Nelly
+Pauline
+Peggy
+Pepi
+Scarlett
+Sheila
+Shirley
+Sissy
+Stephanie
+Sylvia
+Taylor
+Terrie
+Terry
+Victoria
+Violet \ No newline at end of file
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesM.txt b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesM.txt
new file mode 100644
index 0000000000..189d8d015f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/firstnamesM.txt
@@ -0,0 +1,100 @@
+Aabraham
+Aadam
+Aadolf
+Aake
+Aaku
+Aatu
+Ahti
+Ahvo
+Aimo
+Aki
+Akseli
+Aku
+Bartholomew
+Ben
+Benjamin
+Bill
+Billie
+Billy
+Bob
+Brendan
+Brian
+Bryan
+Calvin
+Carl
+Charles
+Chester
+Chris
+Christian
+Christopher
+Chuck
+Dale
+Dave
+David
+Dennis
+Dick
+Dominick
+Donald
+Dustin
+Dusty
+Harri
+Heikki
+Heimo
+Heino
+Helmer
+Helmeri
+Hemmi
+Hemmo
+Henri
+Jeff
+Jeffrey
+Jermu
+Jero
+Jerri
+Jerry
+Jesper
+Jesperi
+Jesse
+Jetro
+Jim
+Jimi
+Jimmy
+Joakim
+Joe
+John
+Johnny
+Jonah
+Jonathan
+Joseph
+Leevi
+Leimo
+Leimu
+Leino
+Leivo
+Lenne
+Lennu
+Mark
+Martin
+Matt
+Matthew
+Michael
+Mike
+Niko
+Nooa
+Nuutti
+Nyyrikki
+Okke
+Okko
+Olavi
+Oliver
+Olli
+Onni
+Pertti
+Perttu
+Walter
+Warren
+Wesley
+William
+Willie
+Winston
+Woodrow \ No newline at end of file
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/lastnames.txt b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/lastnames.txt
new file mode 100644
index 0000000000..35b3f9f9c2
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/contacts/lastnames.txt
@@ -0,0 +1,150 @@
+Adams
+Allen
+Anderson
+Bailey
+Baker
+Barnes
+Bell
+Bennett
+Brooks
+Brown
+Butler
+Campbell
+Carter
+Clark
+Collins
+Cook
+Cooper
+Cox
+Cruz
+Davis
+Díaz
+Edwards
+Evans
+Fisher
+Flores
+Foster
+García
+Gómez
+González
+Gray
+Green
+Gutiérrez
+Hall
+Harris
+Heikkinen
+Helenius
+Helve
+Hernández
+Hill
+Hiltunen
+Hirvonen
+Holm
+Honkanen
+Howard
+Hughes
+Huhtala
+Huttunen
+Hyppönen
+Jackson
+James
+Jenkins
+Johnson
+Jones
+Kauppinen
+Kelly
+Kemppainen
+King
+Klemetti
+Kokkonen
+Kolehmainen
+Korhonen
+Kurikka
+Kuura
+Kyrö
+Kärkkäinen
+Lee
+Lewis
+Long
+López
+Martikainen
+Martin
+Martínez
+Mattila
+Mikkola
+Mikkonen
+Miller
+Mitchell
+Moore
+Morales
+Morgan
+Morris
+Muje
+Murphy
+Mustonen
+Myers
+Myllärinen
+Mäenpää
+Mäkelä
+Mäkinen
+Nelson
+Nguyen
+Ortiz
+Parker
+Pérez
+Perry
+Peterson
+Phillips
+Powell
+Price
+Ramírez
+Reed
+Reyes
+Richardson
+Rivera
+Roberts
+Robinson
+Rodríguez
+Rogers
+Ross
+Russell
+Saarinen
+Saaristo
+Salminen
+Salo
+Salonen
+Sánchez
+Sanders
+Scott
+Seppänen
+Silvennoinen
+Silvo
+Smith
+Sokura
+Stewart
+Sullivan
+Suomalainen
+Taylor
+Thomas
+Thompson
+Torres
+Turner
+Valkeapää
+Walker
+Valo
+Valtonen
+Vanhanen
+Ward
+Watson
+Venäläinen
+Vesa
+White
+Vihavainen
+Williams
+Wilson
+Virtanen
+Wood
+Voutilainen
+Wright
+Vuorela
+Young \ No newline at end of file
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_360x640px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_360x640px.svg
new file mode 100644
index 0000000000..8daf275b19
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_360x640px.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="360px" height="640px" viewBox="0 0 360 640" enable-background="new 0 0 360 640" xml:space="preserve">
+<g>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="180.5498" y1="640.4805" x2="180.5498" y2="0.4805">
+ <stop offset="0" style="stop-color:#9EFF78"/>
+ <stop offset="0.3626" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#3AC900"/>
+ </linearGradient>
+ <rect x="0.55" y="0.48" fill="url(#SVGID_1_)" width="360" height="640"/>
+ </g>
+</g>
+<g>
+ <path opacity="0.5" fill="#3FD900" enable-background="new " d="M81.87,177.64c-26.04,112.67-2.73,201.9,36.7,294.07
+ c29.47,68.89,20.63,130.26,7.36,168.61H0.55V0.53h174.27C157.12,65.8,96.34,115.02,81.87,177.64z"/>
+
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="458.8857" y1="1985.248" x2="-180.46" y2="1985.248" gradientTransform="matrix(0 -1 0.7343 0 -1400.0699 459.4961)">
+ <stop offset="0" style="stop-color:#9EFF78"/>
+ <stop offset="0.3626" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#3AC900"/>
+ </linearGradient>
+ <path opacity="0.5" fill="url(#SVGID_2_)" enable-background="new " d="M102.88,480.39c25.66,64.29,6.13,119.47-25.71,159.56
+ H0.69V536.03c32.62-1.35,73.55,32.06,82.03-30.04c6.33-46.35-59-157.3-41.01-287.49c6.61-47.82,9.32-133.33-6.81-217.89h72.92
+ C92.79,58.16,62.46,114.8,49.63,219.24C41.9,282.07,51.58,351.9,102.88,480.39z"/>
+ <path opacity="0.5" fill="#3FD900" enable-background="new " d="M279.23,463.41c26.04-112.67,2.74-201.9-36.7-294.07
+ c-29.47-68.89-20.63-130.26-7.36-168.61h125.38v639.81H186.27C215.23,586.79,264.76,526.04,279.23,463.41z"/>
+
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="655.6582" y1="83.9292" x2="16.3125" y2="83.9291" gradientTransform="matrix(0 1 -0.7343 0 366.7535 -15.209)">
+ <stop offset="0" style="stop-color:#9EFF78"/>
+ <stop offset="0.3626" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#3AC900"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M258.22,160.67C232.57,96.37,268.5-25.81,330.4,63.01l30-61.91V158.9
+ c0-79.74-73.55-85.93-82.03-23.82c-6.33,46.35,59,157.3,41.01,287.49c-6.61,47.82-9.32,133.33,6.81,217.89h-72.92
+ c15.02-57.56,45.35-114.2,58.18-218.63C319.2,358.99,309.51,289.15,258.22,160.67z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_horisontal_640x360px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_horisontal_640x360px.svg
new file mode 100644
index 0000000000..c2b070a3b1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_background_horisontal_640x360px.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="640px" height="360px" viewBox="0 0 640 360" enable-background="new 0 0 640 360" xml:space="preserve">
+<g>
+ <g>
+ <rect x="0.02" y="0.02" fill="#FFFFFF" width="640" height="360"/>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="320.0181" y1="358.0205" x2="320.018" y2="2.0205">
+ <stop offset="0" style="stop-color:#9EFF78"/>
+ <stop offset="0.3626" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#3AC900"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_1_)" points="638.02,358.02 2.02,358.02 2.02,2.02 638.02,2.02 638.02,358.02 "/>
+ </g>
+ <path opacity="0.5" fill="#3FD900" d="M144.17,100.86c-45.53,62.62-4.77,112.21,64.16,163.44c51.53,38.29,36.07,72.4,12.87,93.71
+ H2.03V2.42h304.66C275.74,38.7,169.48,66.06,144.17,100.86z"/>
+
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="507.0713" y1="-1386.6294" x2="151.7412" y2="-1386.6294" gradientTransform="matrix(0 -1 -0.7343 0 -916.2726 509.4961)">
+ <stop offset="0" style="stop-color:#9EFF78"/>
+ <stop offset="0.3626" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#3AC900"/>
+ </linearGradient>
+ <path opacity="0.5" fill="url(#SVGID_2_)" d="M180.9,269.08c44.86,35.73,10.73,66.4-44.95,88.68H2.28V300
+ c57.02-0.75,128.57,17.82,143.4-16.7c11.07-25.76-103.15-87.42-71.7-159.78C85.52,96.94,90.26,49.41,62.07,2.42h127.46
+ c-26.25,31.99-79.27,63.47-101.71,121.51C74.31,158.85,91.24,197.67,180.9,269.08z"/>
+ <path opacity="0.5" fill="#3FD900" d="M495.59,259.17c45.54-62.62,4.77-112.21-64.15-163.44c-51.53-38.29-36.07-72.4-12.87-93.71
+ h219.17l0,355.59H333.07C383.69,327.74,470.28,293.98,495.59,259.17z"/>
+
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="499.5596" y1="193.2451" x2="144.2295" y2="193.2451" gradientTransform="matrix(0 1 0.7343 0 398.9562 -142.209)">
+ <stop offset="0" style="stop-color:#9EFF78"/>
+ <stop offset="0.3626" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#3AC900"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M458.86,90.7C414,54.97,476.82-12.94,585.04,36.43l52.45-34.41v87.7
+ c0-44.32-128.57-47.76-143.4-13.24c-11.07,25.76,103.15,87.42,71.7,159.78c-11.55,26.57-16.29,74.11,11.91,121.09H450.24
+ c26.25-31.99,79.27-63.47,101.71-121.51C565.45,200.92,548.52,162.11,458.86,90.7z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_53x53px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_53x53px.svg
new file mode 100644
index 0000000000..6e34f255b2
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_53x53px.svg
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="53px" height="53px" viewBox="0 0 53 53" enable-background="new 0 0 53 53" xml:space="preserve">
+<g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="26.4878" y1="53.0156" x2="26.4878" y2="0.0156">
+ <stop offset="0" style="stop-color:#8BF261"/>
+ <stop offset="0.1255" style="stop-color:#7AE74D"/>
+ <stop offset="0.3699" style="stop-color:#5DD62C"/>
+ <stop offset="0.6034" style="stop-color:#49C914"/>
+ <stop offset="0.8191" style="stop-color:#3CC205"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M-0.01,49.7c0,1.83,1.48,3.31,3.31,3.31h46.38c1.83,0,3.31-1.48,3.31-3.31V3.33
+ c0-1.83-1.48-3.31-3.31-3.31H3.3c-1.83,0-3.31,1.48-3.31,3.31V49.7z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="26.4878" y1="50.6777" x2="26.4878" y2="2.354">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="0.3899" style="stop-color:#3DD500"/>
+ <stop offset="0.7931" style="stop-color:#3AC800"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M2.33,49.7c0,0.54,0.44,0.98,0.97,0.98h46.38l0,0c0.54,0,0.97-0.44,0.97-0.98V3.33
+ c0-0.54-0.44-0.97-0.97-0.97H3.3c-0.54,0-0.97,0.44-0.97,0.97V49.7z"/>
+ <path fill="#43EB00" d="M45.55,50.68c0.11-8.96,0.14-13.45-0.4-14.33c-2.67-4.31-10.75-3.36-13.04-2.99c0-1.08-0.01-2.04-0.01-2.76
+ c0.47-0.49,0.9-1.04,1.29-1.64l0.06,0.18c3.33,0.47,3.74-10.39,3.74-10.39C37.41,3.29,27.75,6.83,26.22,7.49
+ c-2.84-0.72-9.58-1.21-9.39,10.43c0,0-0.49,10.29,3.28,10.59c0.46,0.79,0.99,1.49,1.58,2.09c-0.01,0.67-0.04,1.53-0.07,2.52
+ c-4.95-0.34-13.71-0.08-14.29,5.95c-0.05,0.58,0.11,3.43,0.26,11.62H45.55z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_highlight_53x53px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_highlight_53x53px.svg
new file mode 100644
index 0000000000..29c284de08
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_default_icon_highlight_53x53px.svg
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="53px" height="53px" viewBox="0 0 53 53" enable-background="new 0 0 53 53" xml:space="preserve">
+<g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="26.5083" y1="53.0332" x2="26.5083" y2="0.0342">
+ <stop offset="0" style="stop-color:#8BF261"/>
+ <stop offset="0.1471" style="stop-color:#A7F587"/>
+ <stop offset="0.3385" style="stop-color:#C6F9B2"/>
+ <stop offset="0.5243" style="stop-color:#DFFBD3"/>
+ <stop offset="0.7006" style="stop-color:#F1FDEB"/>
+ <stop offset="0.8635" style="stop-color:#FBFFFA"/>
+ <stop offset="1" style="stop-color:#FFFFFF"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M0.01,49.72c0,1.83,1.48,3.31,3.31,3.31H49.7c1.83,0,3.31-1.48,3.31-3.31V3.35
+ c0-1.83-1.48-3.31-3.31-3.31H3.32c-1.83,0-3.31,1.48-3.31,3.31V49.72z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="26.5083" y1="50.6963" x2="26.5083" y2="2.3726">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="0.3899" style="stop-color:#3DD500"/>
+ <stop offset="0.7931" style="stop-color:#3AC800"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M2.35,49.72c0,0.54,0.44,0.98,0.97,0.98H49.7l0,0c0.54,0,0.97-0.44,0.97-0.98V3.35
+ c0-0.54-0.44-0.97-0.97-0.97H3.32c-0.54,0-0.97,0.44-0.97,0.97V49.72z"/>
+ <path fill="#43EB00" d="M45.57,50.7c0.11-8.96,0.14-13.45-0.4-14.33c-2.67-4.31-10.75-3.36-13.04-2.99c0-1.09-0.01-2.04-0.01-2.76
+ c0.47-0.49,0.9-1.04,1.29-1.64l0.06,0.17c3.33,0.47,3.74-10.39,3.74-10.39C37.43,3.3,27.77,6.85,26.24,7.51
+ c-2.84-0.72-9.58-1.21-9.39,10.43c0,0-0.49,10.29,3.28,10.59c0.46,0.79,0.99,1.49,1.58,2.09c-0.01,0.67-0.04,1.53-0.07,2.52
+ c-4.95-0.34-13.71-0.08-14.29,5.95C7.29,39.66,7.45,42.51,7.6,50.7L45.57,50.7z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_divider_360x76px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_divider_360x76px.svg
new file mode 100644
index 0000000000..db9fc7af33
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_divider_360x76px.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="360px" height="76px" viewBox="0 0 360 76" enable-background="new 0 0 360 76" xml:space="preserve">
+<rect x="0.01" y="0.35" opacity="0.2" fill="#FFFFFF" width="360" height="76"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_highlighter_357x80px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_highlighter_357x80px.svg
new file mode 100644
index 0000000000..0ee3ea23e6
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_list_highlighter_357x80px.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="357px" height="80px" viewBox="0 0 357 80" enable-background="new 0 0 357 80" xml:space="preserve">
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="8.300781e-03" y1="40.0156" x2="357.0078" y2="40.0156">
+ <stop offset="0" style="stop-color:#46F200"/>
+ <stop offset="1" style="stop-color:#94FF69"/>
+</linearGradient>
+<rect x="0.01" y="0.02" fill="url(#SVGID_1_)" width="357" height="80"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_idle_27x47.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_idle_27x47.svg
new file mode 100644
index 0000000000..925d3eb36e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_idle_27x47.svg
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="27px" height="47px" viewBox="0 0 27 47" enable-background="new 0 0 27 47" xml:space="preserve">
+<g>
+ <path opacity="0.2" fill="#FFFFFF" d="M0.04,0.04c15.51,0,27,10.52,27,23.5c0,12.98-11.49,23.5-27,23.5V0.04z"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-18.8911" y1="23.5415" x2="18.8759" y2="23.5415">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M18.88,23.54C18.88,13,10.45,4.45,0.04,4.43v6.7c6.74,0.03,12.22,5.58,12.22,12.41
+ S6.78,35.93,0.04,35.96v6.7C10.45,42.63,18.88,34.08,18.88,23.54z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="6.1475" y1="35.9551" x2="6.1475" y2="11.1284">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M11.51,23.54c0,6.43-5.13,11.64-11.48,11.66v0.75c6.74-0.02,12.22-5.58,12.22-12.41
+ S6.78,11.15,0.04,11.13v0.75C6.38,11.91,11.51,17.12,11.51,23.54z"/>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-8.9409" y1="16.0107" x2="10.0672" y2="29.3204">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M11.51,23.54c0-6.43-5.13-11.64-11.48-11.66v2.25c5.06,0.08,9.15,4.27,9.15,9.41
+ c0,5.14-4.09,9.32-9.15,9.4v2.25C6.38,35.18,11.51,29.97,11.51,23.54z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-7.3013" y1="17.4404" x2="8.0348" y2="28.1788">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_4_)" d="M8.32,23.54c0,4.66-3.7,8.44-8.28,8.53v0.88c5.06-0.08,9.15-4.26,9.15-9.4
+ c0-5.14-4.09-9.32-9.15-9.41v0.88C4.62,15.1,8.32,18.88,8.32,23.54z"/>
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="7.0356" y1="28.2002" x2="-5.98" y2="17.2788">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M8.32,23.54c0-4.66-3.7-8.44-8.28-8.52v1.13C4,16.23,7.2,19.51,7.2,23.54
+ c0,4.03-3.2,7.31-7.16,7.39v1.13C4.62,31.99,8.32,28.2,8.32,23.54z"/>
+ <linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="0.0371" y1="23.542" x2="7.2012" y2="23.542">
+ <stop offset="0" style="stop-color:#FF901F"/>
+ <stop offset="1" style="stop-color:#FFB81F"/>
+ </linearGradient>
+ <path fill="url(#SVGID_6_)" d="M4.27,19.1c0.36,0.37,0.67,0.77,0.92,1.2c1.44,2.41,1.13,5.6-0.92,7.67
+ c-1.17,1.18-2.7,1.77-4.23,1.81v1.15C4,30.86,7.2,27.57,7.2,23.54c0-4.03-3.2-7.32-7.16-7.4v1.13C1.57,17.31,3.1,17.92,4.27,19.1z
+ "/>
+ <path fill="#FFD06B" d="M5.19,20.3c-0.25-0.43-0.56-0.83-0.92-1.2c-1.17-1.18-2.7-1.79-4.23-1.83v2.46
+ C1.74,19.17,3.62,19.35,5.19,20.3z"/>
+
+ <linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-137.9243" y1="73.1523" x2="-142.7352" y2="64.8197" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#FF901F"/>
+ <stop offset="1" style="stop-color:#FFB81F"/>
+ </linearGradient>
+ <path fill="url(#SVGID_7_)" d="M5.19,20.3c-1.56-0.96-3.45-1.14-5.15-0.57v10.05c1.54-0.04,3.06-0.62,4.23-1.81
+ C6.32,25.9,6.62,22.71,5.19,20.3z"/>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_offline_27x47.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_offline_27x47.svg
new file mode 100644
index 0000000000..6f74723f09
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_offline_27x47.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="27px" height="47px" viewBox="0 0 27 47" enable-background="new 0 0 27 47" xml:space="preserve">
+<g>
+ <path opacity="0.2" fill="#FFFFFF" d="M0.04,0.04c15.51,0,27,10.52,27,23.5c0,12.98-11.49,23.5-27,23.5V0.04z"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-18.8911" y1="23.542" x2="18.8759" y2="23.542">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M18.88,23.54C18.88,13,10.45,4.45,0.04,4.43v6.7c6.74,0.03,12.22,5.58,12.22,12.41
+ c0,6.83-5.48,12.39-12.22,12.41v6.7C10.45,42.63,18.88,34.08,18.88,23.54z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="6.1475" y1="35.9551" x2="6.1475" y2="11.1289">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M11.51,23.54c0,6.43-5.13,11.64-11.48,11.66v0.75c6.74-0.03,12.22-5.58,12.22-12.41
+ c0-6.83-5.48-12.39-12.22-12.41v0.75C6.38,11.91,11.51,17.12,11.51,23.54z"/>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-8.9409" y1="16.0107" x2="10.0672" y2="29.3204">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M11.51,23.54c0-6.43-5.13-11.64-11.48-11.66v2.25c5.06,0.08,9.15,4.27,9.15,9.41
+ c0,5.14-4.09,9.32-9.15,9.4v2.25C6.38,35.18,11.51,29.97,11.51,23.54z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-7.3013" y1="17.4409" x2="8.0348" y2="28.1793">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_4_)" d="M8.32,23.54c0,4.66-3.7,8.44-8.28,8.53v0.88c5.06-0.08,9.15-4.27,9.15-9.4
+ c0-5.14-4.09-9.32-9.15-9.41v0.88C4.62,15.1,8.32,18.88,8.32,23.54z"/>
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="7.0361" y1="28.2012" x2="-5.9795" y2="17.2798">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M8.32,23.54c0-4.66-3.7-8.44-8.28-8.52v1.13C4,16.23,7.2,19.51,7.2,23.54
+ c0,4.03-3.2,7.31-7.16,7.39v1.13C4.62,31.99,8.32,28.2,8.32,23.54z"/>
+ <path fill="#BD0700" d="M4.27,19.1c0.36,0.37,0.67,0.77,0.92,1.2c1.44,2.41,1.13,5.6-0.92,7.67c-1.17,1.19-2.7,1.77-4.23,1.81
+ v1.15C4,30.86,7.2,27.57,7.2,23.54c0-4.03-3.2-7.32-7.16-7.4v1.13C1.57,17.31,3.1,17.92,4.27,19.1z"/>
+ <path fill="#F25757" d="M5.19,20.3c-0.25-0.43-0.56-0.83-0.92-1.2c-1.17-1.18-2.7-1.79-4.23-1.83v2.46
+ C1.74,19.17,3.62,19.35,5.19,20.3z"/>
+
+ <linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="-137.9243" y1="73.1533" x2="-142.7357" y2="64.8198" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#BD0700"/>
+ <stop offset="1" style="stop-color:#E35D58"/>
+ </linearGradient>
+ <path fill="url(#SVGID_6_)" d="M5.19,20.3c-1.56-0.96-3.45-1.14-5.15-0.57v10.05c1.54-0.04,3.06-0.62,4.23-1.81
+ C6.32,25.9,6.62,22.72,5.19,20.3z"/>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_online_27x47.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_online_27x47.svg
new file mode 100644
index 0000000000..56951605de
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_contact_status_online_27x47.svg
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="27px" height="47px" viewBox="0 0 27 47" enable-background="new 0 0 27 47" xml:space="preserve">
+<g>
+ <path opacity="0.2" fill="#FFFFFF" d="M0.04,0.03c15.51,0,27,10.52,27,23.5c0,12.98-11.49,23.5-27,23.5V0.03z"/>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-18.8911" y1="23.5264" x2="18.8759" y2="23.5264">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M18.88,23.53c0-10.54-8.43-19.09-18.84-19.11v6.7c6.74,0.02,12.22,5.58,12.22,12.41
+ c0,6.83-5.48,12.39-12.22,12.41v6.7C10.45,42.62,18.88,34.07,18.88,23.53z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="6.1475" y1="35.9414" x2="6.1475" y2="11.1152">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M11.51,23.53c0,6.43-5.13,11.64-11.48,11.66v0.75c6.74-0.03,12.22-5.58,12.22-12.41
+ c0-6.83-5.48-12.39-12.22-12.41v0.75C6.38,11.89,11.51,17.1,11.51,23.53z"/>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-8.9414" y1="15.9961" x2="10.0667" y2="29.3057">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M11.51,23.53c0-6.43-5.13-11.64-11.48-11.66v2.25c5.06,0.08,9.15,4.27,9.15,9.41
+ c0,5.14-4.09,9.32-9.15,9.4v2.25C6.38,35.16,11.51,29.95,11.51,23.53z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-7.3013" y1="17.4268" x2="8.0348" y2="28.1652">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_4_)" d="M8.32,23.53c0,4.66-3.7,8.44-8.28,8.53v0.88c5.06-0.08,9.15-4.27,9.15-9.4
+ c0-5.14-4.09-9.33-9.15-9.41V15C4.62,15.08,8.32,18.87,8.32,23.53z"/>
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="7.0356" y1="28.1865" x2="-5.98" y2="17.2651">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M8.32,23.53c0-4.66-3.7-8.44-8.28-8.52v1.13C4,16.21,7.2,19.5,7.2,23.53c0,4.03-3.2,7.31-7.16,7.39
+ v1.13C4.62,31.97,8.32,28.19,8.32,23.53z"/>
+ <linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="0.0371" y1="23.5283" x2="7.2012" y2="23.5283">
+ <stop offset="0" style="stop-color:#09AA00"/>
+ <stop offset="1" style="stop-color:#4DCC46"/>
+ </linearGradient>
+ <path fill="url(#SVGID_6_)" d="M4.27,19.09c0.36,0.37,0.67,0.77,0.92,1.2c1.44,2.41,1.13,5.6-0.92,7.67
+ c-1.17,1.19-2.7,1.77-4.23,1.81v1.15C4,30.84,7.2,27.56,7.2,23.53c0-4.03-3.2-7.32-7.16-7.4v1.13C1.57,17.3,3.1,17.91,4.27,19.09z
+ "/>
+ <path fill="#57EB51" d="M5.19,20.29c-0.25-0.43-0.56-0.83-0.92-1.2c-1.17-1.19-2.7-1.79-4.23-1.83v2.46
+ C1.74,19.15,3.62,19.33,5.19,20.29z"/>
+
+ <linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-137.9243" y1="73.1387" x2="-142.7352" y2="64.806" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#09AA00"/>
+ <stop offset="1" style="stop-color:#4DCC46"/>
+ </linearGradient>
+ <path fill="url(#SVGID_7_)" d="M5.19,20.29c-1.56-0.96-3.45-1.14-5.15-0.57v10.05c1.54-0.04,3.06-0.62,4.23-1.81
+ C6.32,25.88,6.62,22.7,5.19,20.29z"/>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scroll_5x80px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scroll_5x80px.svg
new file mode 100644
index 0000000000..4f6482afa5
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scroll_5x80px.svg
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="5px" height="80px" viewBox="0 0 5 80" enable-background="new 0 0 5 80" xml:space="preserve">
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="2.4917" y1="0.0908" x2="2.4917" y2="80.0913">
+ <stop offset="0" style="stop-color:#46F200"/>
+ <stop offset="0.3516" style="stop-color:#94FF69"/>
+ <stop offset="0.9176" style="stop-color:#3FD900"/>
+</linearGradient>
+<rect x="-0.01" y="0.09" fill="url(#SVGID_1_)" width="5" height="80"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scrollbar_5x14px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scrollbar_5x14px.svg
new file mode 100644
index 0000000000..54a40c3cc8
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_scrollbar_5x14px.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="5px" height="14px" viewBox="0 0 5 14" enable-background="new 0 0 5 14" xml:space="preserve">
+<rect fill="#41E600" width="5" height="14"/>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_left_14x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_left_14x24px.svg
new file mode 100644
index 0000000000..a21c91df48
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_left_14x24px.svg
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="14px" height="24px" viewBox="0 0 14 24" enable-background="new 0 0 14 24" xml:space="preserve">
+<g>
+ <path fill="none" d="M4.96,21.94c-0.28-0.33-0.53-0.67-0.77-1.03C4.43,21.27,4.68,21.62,4.96,21.94z"/>
+ <path fill="none" d="M2.15,15.41c-0.05-0.46-0.09-0.92-0.09-1.39C2.06,14.49,2.09,14.96,2.15,15.41z"/>
+ <path fill="none" d="M4.12,20.81c-0.23-0.35-0.45-0.71-0.64-1.09C3.03,18.89,2.69,18,2.45,17.06C2.79,18.42,3.36,19.69,4.12,20.81z
+ "/>
+ <path fill="none" d="M2.41,16.91c-0.09-0.38-0.16-0.77-0.22-1.17C2.25,16.13,2.32,16.52,2.41,16.91z"/>
+ <path fill="#38BF00" d="M4.17,20.81c-0.74-1.13-1.3-2.39-1.64-3.75c-0.01-0.05-0.02-0.1-0.04-0.16c-0.09-0.38-0.16-0.77-0.22-1.17
+ c-0.01-0.11-0.03-0.21-0.04-0.32c-0.05-0.46-0.08-0.92-0.08-1.39c0-6.63,5.57-12,11.86-12l0,0v-2H11.4c-6.29,0-11.39,5.37-11.39,12
+ c0,4.13,1.98,7.76,4.99,9.92c-0.27-0.33-0.52-0.67-0.76-1.03C4.21,20.88,4.19,20.85,4.17,20.81z"/>
+ <path fill="#8BF261" d="M10.21,22.02c-2.5,0-4.8-0.86-6.68-2.29c0.19,0.38,0.41,0.73,0.63,1.09c0.02,0.03,0.04,0.07,0.07,0.1
+ c0.24,0.36,0.49,0.7,0.76,1.03c1.82,1.31,4.03,2.08,6.4,2.08h2.61v-2H10.21z"/>
+ <path fill="#80E6FF" d="M4.12,20.81c0.02,0.04,0.04,0.07,0.07,0.1C4.16,20.88,4.14,20.85,4.12,20.81z"/>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="8.0742" y1="22.0195" x2="8.0742" y2="2.0205">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="0.3899" style="stop-color:#3DD500"/>
+ <stop offset="0.7931" style="stop-color:#3AC800"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M14.01,2.02c-6.29,0-11.86,5.37-11.86,12c0,0.47,0.03,0.94,0.08,1.39c0.01,0.11,0.03,0.22,0.04,0.32
+ c0.06,0.4,0.12,0.79,0.22,1.17c0.01,0.05,0.02,0.1,0.04,0.16C2.76,18,3.1,18.89,3.53,19.73c1.88,1.44,4.18,2.29,6.68,2.29h3.8V2.02
+ L14.01,2.02z"/>
+ <path fill="#2BD5FF" d="M2.45,17.06c-0.01-0.05-0.02-0.1-0.04-0.16C2.42,16.96,2.43,17.01,2.45,17.06z"/>
+ <path fill="#2BD5FF" d="M2.19,15.74c-0.01-0.11-0.03-0.21-0.04-0.32C2.16,15.52,2.17,15.63,2.19,15.74z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_middle_10x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_middle_10x24px.svg
new file mode 100644
index 0000000000..b84200d9b1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_middle_10x24px.svg
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="10px" height="24px" viewBox="0 0 10 24" enable-background="new 0 0 10 24" xml:space="preserve">
+<g>
+
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="62.5" y1="-100.9995" x2="62.5" y2="-79" gradientTransform="matrix(1 0 0 -1 -57.5 -78)">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="0.3899" style="stop-color:#3DD500"/>
+ <stop offset="0.7931" style="stop-color:#3AC800"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <rect y="1" fill="url(#SVGID_1_)" width="10" height="22"/>
+ <rect fill="#38BF00" width="10" height="2"/>
+ <rect y="22" fill="#8BF261" width="10" height="2"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_right_14x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_right_14x24px.svg
new file mode 100644
index 0000000000..231560dd9e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_status_field_right_14x24px.svg
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="14px" height="24px" viewBox="0 0 14 24" enable-background="new 0 0 14 24" xml:space="preserve">
+<g>
+ <path fill="#38BF00" d="M4.59,2.02c2.42,0,4.66,0.77,6.52,2.08C8.98,1.6,5.88,0.02,2.42,0.02H0.01v2H4.59z"/>
+ <path fill="#8BF261" d="M11.6,4.73c0.76,1.6,1.2,3.39,1.2,5.29c0,6.63-5.19,12-11.59,12H0.01v2h2.41c6.4,0,11.59-5.37,11.59-12
+ C14.01,9.27,13.1,6.75,11.6,4.73z"/>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="6.4028" y1="22.0205" x2="6.4028" y2="2.021">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="0.3899" style="stop-color:#3DD500"/>
+ <stop offset="0.7931" style="stop-color:#3AC800"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M0.01,2.02v20h1.21c6.4,0,11.59-5.37,11.59-12c0-1.9-0.44-3.69-1.2-5.29
+ c-0.16-0.22-0.32-0.43-0.5-0.64c-1.86-1.31-4.1-2.08-6.52-2.08H0.01z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_356x96px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_356x96px.svg
new file mode 100644
index 0000000000..679d9a5305
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_356x96px.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="356px" height="96px" viewBox="0 0 356 96" enable-background="new 0 0 356 96" xml:space="preserve">
+<g>
+ <g>
+
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-184.8071" y1="-51.2339" x2="-112.3086" y2="147.9543" gradientTransform="matrix(-1 0 0 1 29.2188 0)">
+ <stop offset="0" style="stop-color:#46F200"/>
+ <stop offset="0.3516" style="stop-color:#94FF69"/>
+ <stop offset="0.9176" style="stop-color:#3FD900"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_1_)" points="355.87,95.84 355.87,0.39 -0.14,0.39 -0.14,96.39 "/>
+
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-148.647" y1="96.3936" x2="-148.647" y2="58.96" gradientTransform="matrix(-1 0 0 1 29.2188 0)">
+ <stop offset="0" style="stop-color:#46F200"/>
+ <stop offset="0.9176" style="stop-color:#3FD900"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_2_)" points="355.87,96.18 355.87,58.96 -0.14,58.96 -0.14,96.39 "/>
+ <polygon fill="#38BF00" points="355.87,96.37 355.87,92.21 -0.14,92.21 -0.14,96.39 "/>
+ </g>
+ <polygon opacity="0.2" fill="#FFFFFF" points="266.5,92.09 167.84,92.09 272.84,0.77 326.5,0.77 "/>
+ <polygon opacity="0.2" fill="#FFFFFF" points="314.5,92.09 285.84,92.09 330.84,0.77 339.5,0.77 "/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_horisontal_636x96px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_horisontal_636x96px.svg
new file mode 100644
index 0000000000..1ef4fb9224
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_topbar_horisontal_636x96px.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="636px" height="96px" viewBox="0 0 636 96" enable-background="new 0 0 636 96" xml:space="preserve">
+<g>
+ <g>
+
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-61.3369" y1="-96.5996" x2="43.9144" y2="192.5761" gradientTransform="matrix(-1 0 0 1 309.2188 0)">
+ <stop offset="0" style="stop-color:#46F200"/>
+ <stop offset="0.3516" style="stop-color:#94FF69"/>
+ <stop offset="0.9176" style="stop-color:#3FD900"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_1_)" points="636.02,95.46 636.02,0.02 0.02,0.02 0.02,96.02 "/>
+
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-8.8003" y1="96.0205" x2="-8.8003" y2="58.5869" gradientTransform="matrix(-1 0 0 1 309.2188 0)">
+ <stop offset="0" style="stop-color:#46F200"/>
+ <stop offset="0.9176" style="stop-color:#3FD900"/>
+ </linearGradient>
+ <polygon fill="url(#SVGID_2_)" points="636.02,95.8 636.02,58.59 0.02,58.59 0.02,96.02 "/>
+ <polygon fill="#38BF00" points="636.02,95.99 636.02,91.84 0.02,91.84 0.02,96.02 "/>
+ </g>
+ <polygon opacity="0.2" fill="#FFFFFF" points="546.65,91.72 447.99,91.72 552.99,0.4 606.65,0.4 "/>
+ <polygon opacity="0.2" fill="#FFFFFF" points="594.65,91.72 565.99,91.72 610.99,0.4 619.65,0.4 "/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_default_icon_84x68px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_default_icon_84x68px.svg
new file mode 100644
index 0000000000..4df0214e56
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_default_icon_84x68px.svg
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="84px" height="68px" viewBox="0 0 84 68" enable-background="new 0 0 84 68" xml:space="preserve">
+<g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="42.1343" y1="68.0352" x2="42.1343" y2="0.0361">
+ <stop offset="0" style="stop-color:#8BF261"/>
+ <stop offset="0.1255" style="stop-color:#7AE74D"/>
+ <stop offset="0.3699" style="stop-color:#5DD62C"/>
+ <stop offset="0.6034" style="stop-color:#49C914"/>
+ <stop offset="0.8191" style="stop-color:#3CC205"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M80.01,0.04h-59.5c-2.35,0-4.25,1.9-4.25,4.25v25.78c-9,0.13-16.26,7.46-16.26,16.49
+ c0,9.03,7.26,16.36,16.26,16.49v0.75c0,2.35,1.9,4.25,4.25,4.25h59.5c2.35,0,4.25-1.9,4.25-4.25V4.29
+ C84.26,1.94,82.36,0.04,80.01,0.04z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="42.1333" y1="65.0371" x2="42.1333" y2="3.0366">
+ <stop offset="0" style="stop-color:#3ED900"/>
+ <stop offset="0.3899" style="stop-color:#3DD500"/>
+ <stop offset="0.7931" style="stop-color:#3AC800"/>
+ <stop offset="1" style="stop-color:#38BF00"/>
+ </linearGradient>
+ <path fill="url(#SVGID_2_)" d="M80.01,65.04h-59.5c-0.69,0-1.25-0.56-1.25-1.25v-0.75v-2.96l-2.96-0.04
+ c-7.33-0.11-13.3-6.16-13.3-13.49s5.97-13.38,13.3-13.49l2.96-0.04v-2.96V4.29c0-0.69,0.56-1.25,1.25-1.25h59.5
+ c0.69,0,1.25,0.56,1.25,1.25v59.5C81.26,64.47,80.7,65.04,80.01,65.04L80.01,65.04z"/>
+ <path fill="#43EB00" d="M74.71,65.04c0.14-11.5,0.19-17.26-0.51-18.38c-3.42-5.53-13.79-4.31-16.74-3.84
+ c0-1.39-0.01-2.61-0.02-3.54c0.6-0.62,1.15-1.33,1.65-2.11l0.08,0.22c4.27,0.61,4.8-13.33,4.8-13.33
+ C64.28,4.23,51.88,8.78,49.91,9.62C46.27,8.7,37.62,8.07,37.87,23c0,0-0.63,13.21,4.21,13.58c0.59,1.01,1.28,1.91,2.02,2.69
+ c-0.01,0.86-0.05,1.96-0.09,3.23c-6.35-0.43-17.59-0.1-18.33,7.63c-0.07,0.74,0.14,4.4,0.33,14.91L74.71,65.04z"/>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_idle_24x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_idle_24x24px.svg
new file mode 100644
index 0000000000..2d6da38ad0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_idle_24x24px.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="24px" height="24px" viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve">
+<g>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="12.0337" y1="23.9922" x2="12.0337" y2="-7.812500e-03">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M12.03,23.99c-6.62,0-12-5.38-12-12c0-6.62,5.39-12,12-12s12,5.38,12,12
+ C24.03,18.61,18.65,23.99,12.03,23.99L12.03,23.99z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.7993" y1="5.5259" x2="21.267" y2="18.4571">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="12.03" cy="11.99" r="11.27"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="4.4814" y1="6.7754" x2="19.3806" y2="17.2079">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M11.93,21.09c-5.02,0-9.1-4.08-9.1-9.09c0-5.02,4.08-9.1,9.1-9.1s9.1,4.08,9.1,9.1
+ C21.03,17.01,16.95,21.09,11.93,21.09L11.93,21.09z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="18.249" y1="17.293" x2="5.613" y2="6.6901">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="11.93" cy="11.99" r="8.25"/>
+ <path fill="#FF901F" d="M11.93,19.15c-3.95,0-7.16-3.21-7.16-7.15c0-3.95,3.21-7.16,7.16-7.16c3.94,0,7.16,3.21,7.16,7.16
+ C19.09,15.94,15.88,19.15,11.93,19.15L11.93,19.15z"/>
+ <g>
+ <path fill="#FFD06B" d="M9.7,9.76c2.01-2.01,5.09-2.3,7.42-0.9c-0.25-0.41-0.54-0.8-0.9-1.16c-2.36-2.37-6.21-2.37-8.58,0
+ c-2.36,2.37-2.36,6.21,0,8.58c0.36,0.36,0.75,0.65,1.16,0.9C7.39,14.85,7.69,11.77,9.7,9.76z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-127.042" y1="62.0576" x2="-131.7007" y2="53.9885" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#FF901F"/>
+ <stop offset="1" style="stop-color:#FFB81F"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M16.22,16.28c2.01-2.01,2.3-5.09,0.9-7.42c-2.33-1.41-5.41-1.11-7.42,0.9
+ c-2.01,2.01-2.31,5.09-0.9,7.42C11.13,18.58,14.21,18.29,16.22,16.28z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_offline_24x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_offline_24x24px.svg
new file mode 100644
index 0000000000..d5920268b1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_offline_24x24px.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="24px" height="24px" viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve">
+<g>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="12.0005" y1="24.0449" x2="12.0005" y2="0.0454">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M12,24.04c-6.62,0-12-5.38-12-12c0-6.62,5.39-12,12-12s12,5.38,12,12
+ C24,18.66,18.62,24.04,12,24.04L12,24.04z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.7661" y1="5.5786" x2="21.2346" y2="18.5104">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="12" cy="12.04" r="11.27"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="4.4487" y1="6.8286" x2="19.3479" y2="17.2611">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M11.9,21.14c-5.02,0-9.1-4.08-9.1-9.09c0-5.02,4.08-9.1,9.1-9.1c5.02,0,9.1,4.08,9.1,9.1
+ C20.99,17.06,16.92,21.14,11.9,21.14L11.9,21.14z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="18.2168" y1="17.3467" x2="5.5801" y2="6.7432">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="11.9" cy="12.04" r="8.25"/>
+ <path fill="#BD0700" d="M11.9,19.2c-3.95,0-7.16-3.21-7.16-7.15c0-3.95,3.21-7.16,7.16-7.16c3.95,0,7.16,3.21,7.16,7.16
+ C19.05,15.99,15.84,19.2,11.9,19.2L11.9,19.2z"/>
+ <g>
+ <path fill="#F25757" d="M9.67,9.81c2.01-2.01,5.09-2.3,7.42-0.9c-0.25-0.41-0.54-0.8-0.9-1.16c-2.36-2.37-6.21-2.37-8.58,0
+ c-2.36,2.37-2.36,6.21,0,8.58c0.36,0.36,0.75,0.65,1.16,0.9C7.36,14.9,7.66,11.82,9.67,9.81z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-127.0752" y1="62.1104" x2="-131.7339" y2="54.0413" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#BD0700"/>
+ <stop offset="1" style="stop-color:#E35D58"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M16.19,16.33c2.01-2.01,2.3-5.08,0.9-7.41c-2.33-1.41-5.41-1.11-7.42,0.9
+ c-2.01,2.01-2.31,5.09-0.9,7.42C11.1,18.63,14.18,18.34,16.19,16.33z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_online_24x24px.svg b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_online_24x24px.svg
new file mode 100644
index 0000000000..46ad07dbbd
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/resources/lime_SVG/lime_user_status_online_24x24px.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="24px" height="24px" viewBox="0 0 24 24" enable-background="new 0 0 24 24" xml:space="preserve">
+<g>
+ <g>
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="12.0337" y1="23.9502" x2="12.0337" y2="-0.0498">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.8407" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#D9D9D9"/>
+ </linearGradient>
+ <path fill="url(#SVGID_1_)" d="M12.03,23.95c-6.62,0-12-5.38-12-12c0-6.62,5.38-12,12-12c6.62,0,12,5.38,12,12
+ C24.03,18.57,18.65,23.95,12.03,23.95L12.03,23.95z"/>
+ <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="2.7988" y1="5.4839" x2="21.2673" y2="18.4157">
+ <stop offset="0.1099" style="stop-color:#FFFFFF"/>
+ <stop offset="0.6978" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_2_)" cx="12.03" cy="11.95" r="11.27"/>
+ <g>
+ <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="4.4819" y1="6.7339" x2="19.3803" y2="17.1658">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <path fill="url(#SVGID_3_)" d="M11.93,21.05c-5.01,0-9.1-4.08-9.1-9.09c0-5.02,4.08-9.1,9.1-9.1c5.02,0,9.1,4.08,9.1,9.1
+ C21.03,16.97,16.95,21.05,11.93,21.05L11.93,21.05z"/>
+ <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="18.248" y1="17.251" x2="5.6128" y2="6.6487">
+ <stop offset="0" style="stop-color:#A6A6A6"/>
+ <stop offset="0.4341" style="stop-color:#8C8C8C"/>
+ <stop offset="0.7308" style="stop-color:#999999"/>
+ <stop offset="1" style="stop-color:#E6E6E6"/>
+ </linearGradient>
+ <circle fill="url(#SVGID_4_)" cx="11.93" cy="11.95" r="8.25"/>
+ <path fill="#09B300" d="M11.93,19.11c-3.95,0-7.16-3.21-7.16-7.15c0-3.95,3.21-7.16,7.16-7.16c3.94,0,7.16,3.21,7.16,7.16
+ C19.09,15.9,15.88,19.11,11.93,19.11L11.93,19.11z"/>
+ <g>
+ <path fill="#57EB51" d="M9.7,9.72c2.01-2.01,5.09-2.3,7.42-0.9c-0.25-0.41-0.54-0.8-0.9-1.16c-2.36-2.37-6.21-2.37-8.57,0
+ c-2.36,2.37-2.36,6.21,0,8.58c0.36,0.36,0.75,0.65,1.16,0.9C7.39,14.8,7.69,11.73,9.7,9.72z"/>
+
+ <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-127.042" y1="62.0156" x2="-131.7007" y2="53.9465" gradientTransform="matrix(1 0 0 1 142.3301 -45.0029)">
+ <stop offset="0" style="stop-color:#09AA00"/>
+ <stop offset="1" style="stop-color:#4DCC46"/>
+ </linearGradient>
+ <path fill="url(#SVGID_5_)" d="M16.22,16.24c2.01-2.01,2.3-5.09,0.9-7.42c-2.33-1.41-5.41-1.11-7.42,0.9
+ c-2.01,2.01-2.31,5.09-0.9,7.42C11.13,18.54,14.21,18.25,16.22,16.24z"/>
+ </g>
+ </g>
+ </g>
+</g>
+</svg>
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp
new file mode 100644
index 0000000000..2b1e87ccac
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.cpp
@@ -0,0 +1,401 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <QGraphicsLayout>
+
+#include "abstractitemcontainer.h"
+#include "abstractitemview.h"
+#include "abstractviewitem.h"
+#include "scrollbar.h"
+
+AbstractItemContainer::AbstractItemContainer(int bufferSize, QGraphicsWidget *parent)
+ : GvbWidget(parent),
+ m_items(),
+ m_itemView(0),
+ m_prototype(0),
+ m_bufferSize(bufferSize),
+ m_twoColumns(false)
+{
+}
+
+AbstractItemContainer::~AbstractItemContainer()
+{
+ delete m_prototype;
+ m_prototype = 0;
+}
+
+AbstractViewItem *AbstractItemContainer::prototype()
+{
+ return m_prototype;
+}
+
+int AbstractItemContainer::bufferSize() const
+{
+ return m_bufferSize;
+}
+
+bool AbstractItemContainer::event(QEvent *e)
+{
+ if (e->type() == QEvent::LayoutRequest)
+ updateItemBuffer();
+
+ return QGraphicsWidget::event(e);
+}
+
+
+bool AbstractItemContainer::eventFilter(QObject *obj, QEvent *event)
+{
+ if (event->type()==QEvent::GraphicsSceneResize && m_itemView) {
+#if (QT_VERSION >= 0x040600)
+ const bool caching = m_itemView->listItemCaching();
+ m_itemView->setListItemCaching(false);
+#endif
+
+ QSizeF s = m_itemView->size();
+ s.setWidth(s.width()-m_itemView->verticalScrollBar()->size().width());
+ adjustVisibleContainerSize(s);
+
+ m_itemView->updateViewContent();
+ updateItemBuffer();
+
+#if (QT_VERSION >= 0x040600)
+ m_itemView->setListItemCaching(caching);
+#endif
+ }
+
+ return QGraphicsWidget::eventFilter(obj, event);
+}
+
+QVariant AbstractItemContainer::itemChange(GraphicsItemChange change, const QVariant &value)
+{
+ QVariant ichange = QGraphicsWidget::itemChange(change,value);
+
+ if (change == ItemPositionChange) {
+ if (m_itemView && layout() && !layout()->isActivated())
+ m_itemView->refreshContainerGeometry();
+ }
+ return ichange;
+ }
+
+/*virtual*/
+void AbstractItemContainer::setItemView(AbstractItemView *view)
+{
+ m_itemView = view;
+
+ if (m_itemView) {
+ setParentItem(m_itemView);
+ m_itemView->installEventFilter(this);
+ }
+}
+/*virtual*/
+void AbstractItemContainer::setItemPrototype(AbstractViewItem *ptype)
+{
+ m_prototype = ptype;
+ m_prototype->setParentItem(0);
+ m_prototype->hide();
+}
+
+/*virtual*/
+void AbstractItemContainer::reset()
+{
+ qDeleteAll(m_items);
+ m_items.clear();
+ updateItemBuffer();
+}
+
+
+/*virtual*/
+void AbstractItemContainer::addItem(const QModelIndex &index)
+{
+ if (m_items.count() < maxItemCountInItemBuffer() ||
+ (m_items.count() > 0 &&
+ m_items.first()->modelIndex().row()-1 <= index.row() &&
+ m_items.last()->modelIndex().row() >= index.row())) {
+ int itemPos = 0;
+ if (m_items.count() != 0)
+ itemPos = qMax(0, index.row() - m_items.first()->modelIndex().row());
+
+ if (itemPos >= m_items.count() || m_items.at(itemPos)->modelIndex() != index) {
+ AbstractViewItem *item = 0;
+ if (m_prototype)
+ item = m_prototype->newItemInstance();
+
+ if (item) {
+ item->setModel(m_itemView->model());
+ item->setTwoColumns(m_twoColumns);
+ m_items.insert(itemPos, item);
+ addItemToVisibleLayout(itemPos, item);
+
+ if (item->modelIndex() != index) {
+ item->setModelIndex(index);
+ }
+ }
+ }
+ updateItemBuffer();
+ }
+}
+void AbstractItemContainer::removeItem(const QModelIndex &index)
+{
+ AbstractViewItem *item = findItemByIndex(index);
+
+ if (item) {
+ if (maxItemCountInItemBuffer() < m_items.count()) {
+ m_items.removeOne(item);
+ removeItemFromVisibleLayout(item);
+
+ delete item;
+ }
+ else {
+ m_items.removeOne(item);
+ removeItemFromVisibleLayout(item);
+
+ QModelIndex newIndex = m_itemView->nextIndex(m_items.last()->modelIndex());
+ if (newIndex.isValid()) {
+ // Item readded as last item in buffer.
+ m_items.append(item);
+ addItemToVisibleLayout(m_items.count() - 1, item);
+ item->setModelIndex(newIndex);
+ } else {
+ // Item readded as first item in buffer.
+ newIndex = m_itemView->previousIndex(m_items.first()->modelIndex());
+
+ m_items.prepend(item);
+ addItemToVisibleLayout(0, item);
+ item->setModelIndex(newIndex);
+ }
+ }
+ }
+}
+
+/*virtual*/
+int AbstractItemContainer::itemCount() const
+{
+ return m_items.count();
+}
+
+AbstractViewItem *AbstractItemContainer::firstItem()
+{
+ return m_items.first();
+}
+
+/*virtual*/
+AbstractViewItem* AbstractItemContainer::itemAt(const int row) const
+{
+ if (row<0 || row >= m_items.count())
+ return 0;
+ return m_items.at(row);
+}
+
+AbstractViewItem* AbstractItemContainer::findItemByIndex(const QModelIndex &index) const
+{
+ AbstractViewItem *item = 0;
+ for (int i = 0; i < m_items.count(); ++i) {
+ if (m_items.at(i)->modelIndex() == index) {
+ item = m_items.at(i);
+ break;
+ }
+ }
+ return item;
+}
+
+bool AbstractItemContainer::itemVisibleInView(AbstractViewItem* item, const QRectF &viewRect, bool fullyVisible) const
+{
+ if (!item || !m_itemView)
+ return false;
+
+ QRectF itemRectBoundingRect = item->mapToItem(m_itemView, item->boundingRect()).boundingRect();
+
+ if (fullyVisible && viewRect.contains(itemRectBoundingRect))
+ return true;
+ else if (viewRect.intersects(itemRectBoundingRect))
+ return true;
+
+ return false;
+}
+
+void AbstractItemContainer::updateItemBuffer()
+{
+ if (!m_itemView || (m_itemView && !m_itemView->boundingRect().isValid()))
+ return;
+
+ int maxCount = maxItemCountInItemBuffer();
+
+ if (m_items.count() < maxCount) {
+ // New items needs to be added.
+ QModelIndex index;
+ if (m_items.count() > 0)
+ index = m_items.last()->modelIndex();
+ while (m_items.count() < maxCount) {
+ index = m_itemView->nextIndex(index);
+
+ if (!index.isValid())
+ break;
+
+ insertItem(m_items.count(), index);
+ }
+
+ index = m_items.first()->modelIndex();
+ while (m_items.count() < maxCount) {
+ index = m_itemView->previousIndex(index);
+
+ if (!index.isValid())
+ break;
+
+ insertItem(0, index);
+ }
+ }
+
+ QRectF viewRect = boundingRect();
+
+ while (m_items.count() > maxCount) {
+ int firstVisible = 0;
+ int lastVisible = 0;
+ findFirstAndLastVisibleBufferIndex(firstVisible, lastVisible, viewRect, false);
+
+ AbstractViewItem* item = 0;
+ if (lastVisible != m_items.count() - 1) {
+ item = m_items.takeLast();
+ }
+ else if (firstVisible != 0 && m_items.first()->modelIndex().row() != firstVisible-1) {
+ item = m_items.takeFirst();
+ }
+ else {
+ // All the items are visible. Take the item at the end of the buffer.
+ item = m_items.takeLast();
+ }
+
+ m_items.removeOne(item);
+ removeItemFromVisibleLayout(item);
+ delete item;
+ }
+}
+
+void AbstractItemContainer::insertItem(int pos, const QModelIndex &index)
+{
+ AbstractViewItem *item = 0;
+ if (m_prototype)
+ item = m_prototype->newItemInstance();
+
+ if (item) {
+ item->setModel(m_itemView->model());
+ item->setModelIndex(index);
+ item->setTwoColumns(m_twoColumns);
+ m_items.insert(pos, item);
+ addItemToVisibleLayout(pos, item);
+ item->updateItemContents();
+ if (pos == 0)
+ m_itemView->scrollContentsBy(qreal(0.0),
+ item->effectiveSizeHint(Qt::PreferredSize).height());
+ }
+}
+
+void AbstractItemContainer::findFirstAndLastVisibleBufferIndex(int &firstVisibleBufferIndex,
+ int &lastVisibleBufferIndex,
+ const QRectF &viewRect,
+ bool fullyVisible) const
+{
+ if (layout() && !layout()->isActivated())
+ layout()->activate();
+
+ firstVisibleBufferIndex = -1;
+ lastVisibleBufferIndex = -1;
+
+ int count = m_items.count();
+ for (int i = 0; i < count; ++i) {
+ if (itemVisibleInView(m_items.at(i), viewRect, fullyVisible)) {
+ if (firstVisibleBufferIndex == -1)
+ firstVisibleBufferIndex = i;
+ lastVisibleBufferIndex = i;
+ }
+ else if ( lastVisibleBufferIndex != -1 )
+ break; // lastVisibleBufferIndex is already set
+ }
+}
+
+/*virtual*/
+int AbstractItemContainer::maxItemCountInItemBuffer() const
+{
+ if (m_itemView && !m_itemView->boundingRect().isEmpty())
+ {
+ return m_itemView->indexCount();
+ }
+ return 0;
+}
+
+
+void AbstractItemContainer::themeChange()
+{
+ for (int i = 0; i <m_items.count(); ++i)
+ m_items.at(i)->themeChange();
+}
+
+void AbstractItemContainer::updateContent()
+{
+ for (int i = 0; i <m_items.count(); ++i)
+ m_items.at(i)->updateItemContents();
+}
+
+#if (QT_VERSION >= 0x040600)
+void AbstractItemContainer::setSubtreeCacheEnabled(bool enabled)
+{
+ for (int i = 0; i <m_items.count(); ++i)
+ m_items.at(i)->setSubtreeCacheEnabled(enabled);
+ if (m_prototype)
+ m_prototype->setSubtreeCacheEnabled(enabled);
+}
+#endif
+
+void AbstractItemContainer::setTwoColumns(const bool enabled)
+{
+ if (m_twoColumns == enabled)
+ return;
+
+ m_twoColumns = enabled;
+
+ for (int i = 0; i < m_items.count(); ++i)
+ m_items.at(i)->setTwoColumns(enabled);
+}
+
+bool AbstractItemContainer::twoColumns()
+{
+ return m_twoColumns;
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h
new file mode 100644
index 0000000000..249f7a76ea
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemcontainer.h
@@ -0,0 +1,111 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ABSTRACTITEMCONTAINER_H
+#define ABSTRACTITEMCONTAINER_H
+
+#include <QModelIndex>
+
+#include "gvbwidget.h"
+
+class QGraphicsWidget;
+class AbstractItemView;
+class AbstractViewItem;
+
+class AbstractItemContainer : public GvbWidget
+{
+ Q_OBJECT
+public:
+ AbstractItemContainer(int bufferSize, QGraphicsWidget *parent=0);
+ virtual ~AbstractItemContainer();
+
+ virtual void addItem(const QModelIndex &index);
+ virtual void removeItem(const QModelIndex &index);
+
+ virtual void setItemView(AbstractItemView *view);
+ virtual void setItemPrototype(AbstractViewItem *ptype);
+ virtual void reset();
+ virtual int itemCount() const;
+ virtual AbstractViewItem* itemAt(const int row) const;
+ AbstractViewItem* findItemByIndex(const QModelIndex &index) const;
+ AbstractViewItem *prototype();
+ AbstractViewItem *firstItem();
+ void updateContent();
+ void themeChange();
+ int bufferSize() const;
+ virtual void setTwoColumns(const bool enabled);
+ bool twoColumns();
+
+#if (QT_VERSION >= 0x040600)
+ void setSubtreeCacheEnabled(const bool enabled);
+ virtual void setListItemCaching(const bool enabled, const int index) = 0;
+#endif
+
+protected:
+ virtual void adjustVisibleContainerSize(const QSizeF &size) = 0;
+ virtual void addItemToVisibleLayout(int index, AbstractViewItem *item) = 0;
+ virtual void removeItemFromVisibleLayout(AbstractViewItem *item) = 0;
+
+ virtual bool event(QEvent *e);
+ virtual bool eventFilter(QObject *obj, QEvent *event);
+ virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value);
+ virtual int maxItemCountInItemBuffer() const;
+ bool itemVisibleInView(AbstractViewItem* item, const QRectF &viewRect, bool fullyVisible = true) const;
+
+protected:
+ void updateItemBuffer();
+ void findFirstAndLastVisibleBufferIndex(int &firstVisibleBufferIndex,
+ int &lastVisibleBufferIndex,
+ const QRectF &viewRect,
+ bool fullyVisible) const;
+ QList<AbstractViewItem*> m_items;
+ AbstractItemView *m_itemView;
+ AbstractViewItem *m_prototype;
+ int m_bufferSize;
+
+private:
+ void insertItem(int pos, const QModelIndex &index);
+ bool m_twoColumns;
+
+ Q_DISABLE_COPY(AbstractItemContainer)
+};
+
+#endif // ABSTRACTITEMCONTAINER_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp
new file mode 100644
index 0000000000..63ab2f9313
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.cpp
@@ -0,0 +1,443 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QGraphicsLayout>
+
+#include "abstractitemview.h"
+#include "abstractviewitem.h"
+#include "scrollbar.h"
+
+AbstractItemView::AbstractItemView(QGraphicsWidget *parent)
+ : AbstractScrollArea(parent),
+ m_model(0),
+ m_rootIndex(),
+ m_container(0),
+ m_selectionModel(0),
+ m_currentIndex(),
+ m_scroller()
+{
+ setRootIndex(QModelIndex());
+}
+
+/*virtual*/
+AbstractItemView::~AbstractItemView()
+{
+}
+
+/*virtual*/
+void AbstractItemView::setModel(QAbstractItemModel *model, AbstractViewItem *prototype)
+{
+ if( m_model == model || !model)
+ return;
+
+ if (m_model) {
+ disconnect(m_model, SIGNAL(destroyed()),
+ this, SLOT(_q_modelDestroyed()));
+ disconnect(m_model, SIGNAL(dataChanged(QModelIndex,QModelIndex)),
+ this, SLOT( dataChanged(QModelIndex,QModelIndex)));
+ disconnect(m_model, SIGNAL(rowsInserted(QModelIndex,int,int)),
+ this, SLOT(rowsInserted(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(rowsRemoved(QModelIndex,int,int)),
+ this, SLOT(rowsRemoved(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
+ this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),
+ this, SLOT(rowsAboutToBeInserted(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(columnsInserted(QModelIndex,int,int)),
+ this, SLOT(columnsInserted(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(columnsAboutToBeInserted(QModelIndex,int,int)),
+ this, SLOT(columnsAboutToBeInserted(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(columnsRemoved(QModelIndex,int,int)),
+ this, SLOT(columnsRemoved(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(columnsAboutToBeRemoved(QModelIndex,int,int)),
+ this, SLOT(columnsAboutToBeRemoved(QModelIndex,int,int)));
+ disconnect(m_model, SIGNAL(modelReset()), this, SLOT(reset()));
+ disconnect(m_model, SIGNAL(layoutChanged()), this, SLOT(_q_layoutChanged()));
+
+ m_model = 0;
+ }
+
+ setSelectionModel(0);
+
+ m_currentIndex = QModelIndex();
+ m_rootIndex = QModelIndex();
+
+ m_model = model;
+
+ Q_ASSERT_X(m_model->index(0,0) == m_model->index(0,0),
+ "AbstractItemView::setModel",
+ "A model should return the exact same index "
+ "(including its internal id/pointer) when asked for it twice in a row.");
+ Q_ASSERT_X(m_model->index(0,0).parent() == QModelIndex(),
+ "AbstractItemView::setModel",
+ "The parent of a top level index should be invalid");
+
+
+ connect(m_model, SIGNAL(destroyed()), this, SLOT(modelDestroyed()));
+ connect(m_model, SIGNAL(dataChanged(QModelIndex,QModelIndex)),
+ this, SLOT( dataChanged(QModelIndex,QModelIndex)));
+ connect(m_model, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),
+ this, SLOT(rowsAboutToBeInserted(QModelIndex,int,int)));
+ connect(m_model, SIGNAL(rowsInserted(QModelIndex,int,int)),
+ this, SLOT(rowsInserted(QModelIndex,int,int)));
+ connect(m_model, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
+ this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)));
+ connect(m_model, SIGNAL(rowsRemoved(QModelIndex,int,int)),
+ this, SLOT(rowsRemoved(QModelIndex,int,int)));
+ connect(m_model, SIGNAL(modelReset()), this, SLOT(reset()));
+ connect(m_model, SIGNAL(layoutChanged()), this, SLOT(layoutChanged()));
+
+ setSelectionModel(new QItemSelectionModel(m_model));
+
+ if (prototype && m_container) {
+ m_container->setItemPrototype(prototype);
+ m_container->reset();
+ }
+}
+
+/*virtual*/
+void AbstractItemView::setContainer(AbstractItemContainer *container)
+{
+ m_container = container;
+ m_container->setItemView(this);
+ m_container->setParentItem(viewport());
+
+ viewport()->setFlag(
+ QGraphicsItem::ItemClipsChildrenToShape, true);
+ m_scroller.setScrollable(this);
+ installEventFilter(&m_scroller);
+}
+
+/*virtual*/
+void AbstractItemView::setRootIndex(const QModelIndex &index)
+{
+ m_rootIndex = index;
+ // TODO fix this if we change index, container should be updated? Or do we need root index?
+}
+
+/*virtual*/
+int AbstractItemView::indexCount() const
+{
+ if (m_model)
+ return m_model->rowCount(m_rootIndex);
+ return 0;
+}
+
+/*virtual*/
+QAbstractItemModel* AbstractItemView::model() const
+{
+ return m_model;
+}
+
+/*virtual*/
+QModelIndex AbstractItemView::nextIndex(const QModelIndex &index) const
+{
+ if (!m_model)
+ return QModelIndex();
+
+ if (index.isValid())
+ return m_model->index(index.row() + 1, 0, m_rootIndex);
+ else
+ return m_model->index(0, 0, m_rootIndex);
+}
+
+/*virtual*/
+QModelIndex AbstractItemView::previousIndex(const QModelIndex &index) const
+{
+ if (!m_model)
+ return QModelIndex();
+
+ if (index.isValid())
+ return m_model->index(index.row() - 1, 0, m_rootIndex);
+ else
+ return m_model->index(m_model->rowCount(m_rootIndex) - 1, 0, m_rootIndex);
+}
+
+/*virtual*/
+void AbstractItemView::setItemPrototype(AbstractViewItem* prototype)
+{
+ if (prototype && m_container) {
+ m_container->setItemPrototype(prototype);
+ m_container->reset();
+ }
+}
+
+void AbstractItemView::setSelectionModel(QItemSelectionModel *smodel)
+{
+ if (smodel && smodel->model() != m_model) {
+ return;
+ }
+ if (m_selectionModel) {
+ disconnect(m_selectionModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection)),
+ this, SLOT(currentSelectionChanged(QItemSelection, QItemSelection)));
+
+ disconnect(m_selectionModel, SIGNAL(currentChanged(QModelIndex, QModelIndex)),
+ this, SLOT(currentIndexChanged(QModelIndex, QModelIndex)));
+
+ delete m_selectionModel;
+ m_selectionModel = 0;
+ }
+
+ m_selectionModel = smodel;
+
+ if (m_selectionModel) {
+ connect(m_selectionModel, SIGNAL(selectionChanged(QItemSelection, QItemSelection)),
+ this, SLOT(currentSelectionChanged(QItemSelection, QItemSelection)));
+ connect(m_selectionModel, SIGNAL(currentChanged(QModelIndex, QModelIndex)),
+ this, SLOT(currentIndexChanged(QModelIndex, QModelIndex)));
+ }
+}
+
+/*virtual*/
+void AbstractItemView::currentIndexChanged(const QModelIndex &current, const QModelIndex &previous)
+{
+ Q_UNUSED(previous)
+
+ if (current != m_currentIndex)
+ m_currentIndex = current;
+}
+
+/*virtual*/
+void AbstractItemView::currentSelectionChanged(const QItemSelection &selected,
+ const QItemSelection &deselected)
+{
+ Q_UNUSED(selected)
+ Q_UNUSED(deselected)
+}
+
+/*virtual*/
+void AbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight)
+{
+ Q_UNUSED(topLeft)
+ Q_UNUSED(bottomRight)
+ // TODO implement if we like to edit view items.
+}
+
+/*virtual*/
+void AbstractItemView::rowsAboutToBeInserted(const QModelIndex &index, int start, int end)
+{
+ Q_UNUSED(index)
+ Q_UNUSED(start)
+ Q_UNUSED(end)
+
+ // TODO implement
+}
+
+
+/*virtual*/
+void AbstractItemView::rowsAboutToBeRemoved(const QModelIndex &index,int start, int end)
+{
+ Q_UNUSED(index)
+ Q_UNUSED(start)
+ Q_UNUSED(end)
+}
+
+/*virtual*/
+void AbstractItemView::rowsRemoved(const QModelIndex &parent,int start, int end)
+{
+ Q_UNUSED(parent)
+ Q_UNUSED(start)
+ Q_UNUSED(end)
+
+ if (start <= m_currentIndex.row() && m_currentIndex.row() <= end) {
+ QModelIndex newCurrentIndex = m_model->index(start, 0, m_rootIndex);
+ if (!newCurrentIndex.isValid()) {
+ newCurrentIndex = m_model->index(qMax(0,start - 1), 0, m_rootIndex);
+ }
+
+ if (m_selectionModel) {
+ m_selectionModel->setCurrentIndex(newCurrentIndex, QItemSelectionModel::NoUpdate);
+ }
+ }
+ for (int i = end; i >= start; --i) //The items are already removed from the model.
+ m_container->removeItem(QModelIndex()); // Indexes are already invalid.
+}
+
+/*virtual*/
+void AbstractItemView::reset()
+{
+ m_rootIndex = QModelIndex();
+
+ if (m_container)
+ m_container->reset();
+
+ setCurrentIndex(QModelIndex());
+
+ ScrollBar *sb = verticalScrollBar();
+
+ if (sb)
+ sb->setSliderSize(0);
+}
+
+/*virtual*/
+void AbstractItemView::rowsInserted(const QModelIndex &parent, int start, int end)
+{
+ if (!m_container)
+ return;
+
+ for (int i = start; i <= end; ++i)
+ m_container->addItem(m_model->index(i, 0, parent));
+
+ refreshContainerGeometry();
+}
+
+/*virtual*/
+void AbstractItemView::modelDestroyed()
+{
+ m_model = 0;
+ setSelectionModel(0);
+ reset();
+}
+
+/*virtual*/
+void AbstractItemView::layoutChanged()
+{
+ m_container->reset();
+}
+
+bool AbstractItemView::event(QEvent *e)
+{
+ bool result = AbstractScrollArea::event(e);
+ if (e && e->type()==QEvent::LayoutRequest) {
+ refreshContainerGeometry();
+ result = true;
+ }
+ if (e && e->type()==QEvent::GraphicsSceneResize) {
+ m_scroller.stopScrolling();
+ refreshContainerGeometry();
+
+ m_container->resize(this->size().width()-verticalScrollBar()->size().width(),
+ m_container->preferredHeight());
+
+ if(verticalScrollBar()->sliderPosition() > verticalScrollBar()->sliderSize())
+ verticalScrollBar()->setSliderPosition(verticalScrollBar()->sliderSize());
+
+ result = true;
+ }
+ return result;
+}
+
+void AbstractItemView::setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags selectionFlag)
+{
+ if (m_selectionModel)
+ m_selectionModel->setCurrentIndex(index, selectionFlag);
+}
+
+void AbstractItemView::refreshContainerGeometry()
+{
+ if (!m_container || !m_model)
+ return;
+
+ if (m_container->layout() && !m_container->layout()->isActivated())
+ m_container->layout()->activate();
+
+ ScrollBar *sb = verticalScrollBar();
+
+ if (sb) {
+ AbstractViewItem *item = m_container->itemAt(0);
+ if (item) {
+ qreal oneItemH = item->size().height();
+ sb->setSliderSize(oneItemH*m_model->rowCount(m_rootIndex)-size().height());
+ }
+ if (!sb->isVisible() && verticalScrollBarPolicy() != Qt::ScrollBarAlwaysOff &&
+ contentsRect().height() < m_container->boundingRect().height())
+ sb->show();
+ }
+}
+
+void AbstractItemView::scrollContentsBy(qreal dx, qreal dy)
+{
+ AbstractScrollArea::scrollContentsBy(dx, dy);
+
+ if (!viewport() || !m_container || (m_container && m_container->itemCount() <= 0) ||
+ !m_model || (m_model && m_model->rowCount() <= 0) ||
+ (viewport() && viewport()->boundingRect().height() < contentsRect().height()))
+ return;
+
+ qreal itemH = 1;
+
+ AbstractViewItem *item = m_container->itemAt(0);
+ if(item && item->size().height() > 1) {
+ itemH = item->size().height();
+ }
+ else if(item && item->preferredHeight() > 1) {
+ itemH = item->preferredHeight();
+ }
+
+ qreal vpx = m_container->pos().x();
+ qreal vpy = m_container->pos().y();
+
+ if ((vpy+m_container->size().height()-dy > pos().y()+size().height()) &&
+ (qAbs(dy) < itemH) && (vpy-dy <= 0)) {
+ m_container->setPos(vpx, vpy-dy);
+ }
+ else {
+ qreal vPos = verticalScrollBar()->sliderPosition();
+ int startRow = m_model->index(vPos/itemH, 0).row();
+ int itemsInContainer = m_container->itemCount();
+
+ for (int i = 0; i<itemsInContainer; ++i) {
+ AbstractViewItem *changedItem = m_container->itemAt(i);
+ changedItem->setModelIndex(m_model->index(startRow+i,0));
+#if (QT_VERSION >= 0x040600)
+ m_container->setListItemCaching(listItemCaching(), i);
+#endif
+ }
+
+ qreal diff = vPos-startRow*itemH;
+
+ if (diff < 0)
+ m_container->setPos(vpx, diff);
+ else
+ m_container->setPos(vpx, -diff);
+ }
+}
+
+void AbstractItemView::changeTheme()
+{
+ if (m_container)
+ m_container->themeChange();
+}
+
+void AbstractItemView::updateViewContent()
+{
+ if (m_container)
+ m_container->updateContent();
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h
new file mode 100644
index 0000000000..2e286fb002
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractitemview.h
@@ -0,0 +1,118 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ABSTRACTITEMVIEW_H
+#define ABSTRACTITEMVIEW_H
+
+#include <QAbstractItemModel>
+#include <QGraphicsSceneResizeEvent>
+#include <QPersistentModelIndex>
+#include <QItemSelection>
+
+#include "listitemcontainer.h"
+#include "abstractscrollarea.h"
+#include "scroller.h"
+
+class QItemSelectionModel;
+
+class AbstractItemView : public AbstractScrollArea
+{
+ Q_OBJECT
+public:
+ AbstractItemView(QGraphicsWidget *parent = 0);
+ virtual ~AbstractItemView();
+ virtual void setContainer(AbstractItemContainer *container);
+ virtual void setModel(QAbstractItemModel *model, AbstractViewItem *prototype);
+ virtual QAbstractItemModel* model() const;
+ virtual void setItemPrototype(AbstractViewItem* prototype);
+
+ void setSelectionModel(QItemSelectionModel *smodel);
+
+ virtual QModelIndex nextIndex(const QModelIndex &index) const;
+ virtual QModelIndex previousIndex(const QModelIndex &index) const;
+
+ virtual int indexCount() const;
+
+ void refreshContainerGeometry(); // TODO Can this be moved to scroll area?
+
+ void updateViewContent();
+ virtual void scrollContentsBy(qreal dx, qreal dy);
+
+#if (QT_VERSION >= 0x040600)
+ virtual bool listItemCaching() const = 0;
+ virtual void setListItemCaching(bool enabled) = 0;
+#endif
+
+protected:
+ virtual bool event(QEvent *e);
+ void changeTheme();
+
+public slots:
+ virtual void setRootIndex(const QModelIndex &index);
+ void setCurrentIndex(const QModelIndex &index,
+ QItemSelectionModel::SelectionFlags selectionFlag = QItemSelectionModel::NoUpdate);
+protected slots:
+ virtual void currentIndexChanged(const QModelIndex &current, const QModelIndex &previous);
+ virtual void currentSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
+ virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight);
+ virtual void rowsAboutToBeInserted(const QModelIndex &index, int start, int end);
+ virtual void rowsInserted(const QModelIndex &parent, int start, int end);
+ virtual void rowsAboutToBeRemoved(const QModelIndex &index,int start, int end);
+ virtual void rowsRemoved(const QModelIndex &parent,int start, int end);
+ virtual void modelDestroyed();
+ virtual void layoutChanged();
+ virtual void reset();
+
+protected:
+
+ QAbstractItemModel *m_model;
+ QPersistentModelIndex m_rootIndex;
+ AbstractItemContainer *m_container;
+ QItemSelectionModel *m_selectionModel;
+ QPersistentModelIndex m_currentIndex;
+
+private:
+ Q_DISABLE_COPY(AbstractItemView)
+ Scroller m_scroller;
+};
+
+
+#endif // ABSTRACTITEMVIEW_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp
new file mode 100644
index 0000000000..202c06ff32
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.cpp
@@ -0,0 +1,249 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsSceneResizeEvent>
+#include <QGraphicsWidget>
+#include <QDebug>
+#include "abstractscrollarea.h"
+#include "scrollbar.h"
+
+AbstractScrollArea::AbstractScrollArea(QGraphicsWidget *parent)
+ : GvbWidget(parent)
+ , m_viewport(0)
+ , m_horizontalScrollBar(0)
+ , m_verticalScrollBar(0)
+ , m_prevHorizontalValue(0.0)
+ , m_prevVerticalValue(0.0)
+{
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ setContentsMargins(0, 0, 0, 0);
+
+ m_horizontalScrollBar = new ScrollBar(Qt::Horizontal, this);
+ m_horizontalScrollBar->hide();
+ m_horizontalScrollBar->setContentsMargins(0, 0, 0, 0);
+ m_horizontalScrollBarPolicy = Qt::ScrollBarAsNeeded;
+ m_horizontalScrollBar->setZValue(zValue()+1); // Raise scroll bar to top
+ m_horizontalScrollBar->setVisible(false);
+
+ connect(m_horizontalScrollBar, SIGNAL(sliderPositionChange(qreal)),
+ this, SLOT(horizontalScroll(qreal)));
+ connect(m_horizontalScrollBar, SIGNAL(sliderPressed()),
+ this, SLOT(horizontalScrollStart()));
+
+ m_verticalScrollBar = new ScrollBar(Qt::Vertical, this);
+ m_verticalScrollBar->hide();
+ m_verticalScrollBar->setContentsMargins(0, 0, 0, 0);
+ m_verticalScrollBarPolicy = Qt::ScrollBarAsNeeded;
+ m_verticalScrollBar->setZValue(zValue()+1); // Raise scroll bar to top
+ m_verticalScrollBar->setVisible(false);
+
+ connect(m_verticalScrollBar, SIGNAL(sliderPositionChange(qreal)),
+ this, SLOT(verticalScroll(qreal)));
+ connect(m_verticalScrollBar, SIGNAL(sliderPressed()),
+ this, SLOT(verticalScrollStart()));
+
+ QGraphicsWidget *viewport = new QGraphicsWidget;
+ setViewport(viewport);
+}
+
+AbstractScrollArea::~AbstractScrollArea()
+{
+}
+
+ScrollBar *AbstractScrollArea::verticalScrollBar() const
+{
+ return m_verticalScrollBar;
+}
+
+ScrollBar *AbstractScrollArea::horizontalScrollBar() const
+{
+ return m_horizontalScrollBar;
+}
+
+void AbstractScrollArea::setHorizontalScrollBarPolicy(Qt::ScrollBarPolicy policy)
+{
+ m_horizontalScrollBarPolicy = policy;
+}
+
+void AbstractScrollArea::setVerticalScrollBarPolicy(Qt::ScrollBarPolicy policy)
+{
+ m_verticalScrollBarPolicy = policy;
+}
+
+Qt::ScrollBarPolicy AbstractScrollArea::verticalScrollBarPolicy() const
+{
+ return m_verticalScrollBarPolicy;
+}
+
+Qt::ScrollBarPolicy AbstractScrollArea::horizontalScrollBarPolicy() const
+{
+ return m_horizontalScrollBarPolicy;
+}
+
+QGraphicsWidget *AbstractScrollArea::viewport() const
+{
+ return m_viewport;
+}
+
+void AbstractScrollArea::setViewport(QGraphicsWidget *viewport)
+{
+ if (m_viewport) {
+ m_viewport->setParentItem(0);
+
+ QList<QGraphicsItem*> children = m_viewport->childItems();
+
+ foreach (QGraphicsItem *child, children)
+ child->setParentItem(0);
+
+ delete m_viewport;
+ }
+
+ m_viewport = viewport;
+
+ if (viewport) {
+
+ m_viewport->setParentItem(this);
+ m_viewport->setContentsMargins(0, 0, 0, 0);
+
+ adjustScrollBars();
+ }
+
+ emit viewportChanged(viewport);
+}
+
+bool AbstractScrollArea::event(QEvent *e)
+{
+ if (e->type() == QEvent::ApplicationLayoutDirectionChange
+ || e->type() == QEvent::LayoutDirectionChange) {
+ } else if (e->type() == QEvent::GraphicsSceneResize) {
+ QGraphicsSceneResizeEvent *event =
+ static_cast<QGraphicsSceneResizeEvent*>(e);
+
+ QSizeF newSize = event->newSize();
+ QRectF hrect = m_horizontalScrollBar->boundingRect();
+ QRectF vrect = m_verticalScrollBar->boundingRect();
+
+ QSizeF vpSize = newSize;
+
+ if (m_horizontalScrollBarPolicy != Qt::ScrollBarAlwaysOff)
+ vpSize.setHeight(newSize.height() - hrect.height());
+ if (m_verticalScrollBarPolicy != Qt::ScrollBarAlwaysOff)
+ vpSize.setWidth(newSize.width() - vrect.width());
+
+ m_viewport->resize(vpSize);
+
+ adjustScrollBars();
+ }
+
+ return QGraphicsWidget::event(e);
+}
+
+
+void AbstractScrollArea::scrollContentsBy(qreal dx, qreal dy)
+{
+ Q_UNUSED(dx)
+ Q_UNUSED(dy)
+ prepareGeometryChange();
+}
+
+void AbstractScrollArea::verticalScrollStart()
+{
+ m_prevVerticalValue = m_verticalScrollBar->sliderPosition();
+}
+
+void AbstractScrollArea::verticalScroll(qreal value)
+{
+ qreal dy = value - m_prevVerticalValue;
+ if (!qFuzzyCompare(dy,qreal(0.0))) {
+ scrollContentsBy(0.0, dy);
+ m_prevVerticalValue = value;
+ }
+}
+
+void AbstractScrollArea::horizontalScrollStart()
+{
+ m_prevHorizontalValue = m_horizontalScrollBar->sliderPosition();
+}
+
+void AbstractScrollArea::horizontalScroll(qreal value)
+{
+ qreal dx = value - m_prevHorizontalValue;
+ if (!qFuzzyCompare(dx,qreal(0.0))) {
+ scrollContentsBy(dx, 0.0);
+ m_prevHorizontalValue = value;
+ }
+}
+
+void AbstractScrollArea::adjustScrollBars()
+{
+ if (m_horizontalScrollBarPolicy == Qt::ScrollBarAlwaysOff) {
+ m_horizontalScrollBar->hide();
+ } else {
+ m_horizontalScrollBar->show();
+
+ QRectF sbgeom = boundingRect();
+
+ sbgeom.setTop(sbgeom.bottom() - m_horizontalScrollBar->boundingRect().height());
+ sbgeom.setRight(sbgeom.right() - m_verticalScrollBar->boundingRect().width());
+ m_horizontalScrollBar->setGeometry(sbgeom);
+ }
+
+ if (m_verticalScrollBarPolicy == Qt::ScrollBarAlwaysOff) {
+ m_verticalScrollBar->hide();
+ QRectF sbgeom = boundingRect();
+ sbgeom.setLeft(sbgeom.right());
+ sbgeom.setBottom(sbgeom.bottom());
+ m_verticalScrollBar->setGeometry(sbgeom);
+ } else {
+ m_verticalScrollBar->show();
+
+ QRectF sbgeom = boundingRect();
+
+ sbgeom.setLeft(sbgeom.right() - m_verticalScrollBar->boundingRect().width());
+ if (m_horizontalScrollBarPolicy != Qt::ScrollBarAlwaysOff)
+ sbgeom.setBottom(sbgeom.bottom() - m_horizontalScrollBar->boundingRect().height());
+ m_verticalScrollBar->setGeometry(sbgeom);
+ }
+}
+
+
+
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h
new file mode 100644
index 0000000000..bc0b97f82f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractscrollarea.h
@@ -0,0 +1,101 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ABSTRACTSCROLLAREA_H
+#define ABSTRACTSCROLLAREA_H
+
+#include "gvbwidget.h"
+
+class ScrollBar;
+class QGraphicsGridLayout;
+
+class AbstractScrollArea : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+
+ AbstractScrollArea(QGraphicsWidget *parent = 0);
+ ~AbstractScrollArea();
+
+public:
+
+ void setHorizontalScrollBarPolicy(Qt::ScrollBarPolicy policy);
+ void setVerticalScrollBarPolicy(Qt::ScrollBarPolicy policy);
+ Qt::ScrollBarPolicy verticalScrollBarPolicy() const;
+ Qt::ScrollBarPolicy horizontalScrollBarPolicy() const;
+
+ QGraphicsWidget *viewport() const;
+ void setViewport(QGraphicsWidget *viewport);
+
+ ScrollBar *verticalScrollBar() const;
+ ScrollBar *horizontalScrollBar() const;
+
+signals:
+
+ void viewportChanged(QGraphicsWidget *viewport);
+
+protected:
+
+ virtual bool event(QEvent *e);
+ virtual void scrollContentsBy(qreal dx, qreal dy);
+
+private slots:
+
+ void verticalScrollStart();
+ void verticalScroll(qreal);
+ void horizontalScrollStart();
+ void horizontalScroll(qreal);
+
+private:
+
+ void adjustScrollBars();
+
+ QGraphicsWidget *m_viewport;
+ ScrollBar *m_horizontalScrollBar;
+ ScrollBar *m_verticalScrollBar;
+ Qt::ScrollBarPolicy m_verticalScrollBarPolicy;
+ Qt::ScrollBarPolicy m_horizontalScrollBarPolicy;
+ qreal m_prevHorizontalValue;
+ qreal m_prevVerticalValue;
+};
+
+#endif // ABSTRACTSCROLLAREA_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp
new file mode 100644
index 0000000000..2787a2e178
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.cpp
@@ -0,0 +1,117 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "abstractviewitem.h"
+
+AbstractViewItem::AbstractViewItem(QGraphicsWidget *parent)
+ : GvbWidget(parent),
+ m_index(),
+ m_itemView(0),
+ m_prototype(0)
+{
+}
+
+/*virtual*/
+AbstractViewItem::~AbstractViewItem()
+{
+}
+
+QModelIndex AbstractViewItem::modelIndex() const
+{
+ return m_index;
+}
+
+AbstractViewItem *AbstractViewItem::prototype() const
+{
+ return m_prototype;
+}
+
+AbstractItemView *AbstractViewItem::itemView() const
+{
+ return m_itemView;
+}
+
+void AbstractViewItem::setItemView(AbstractItemView *itemView)
+{
+ m_itemView = itemView;
+}
+
+void AbstractViewItem::setModelIndex(const QModelIndex &index)
+{
+ if (m_index != index) {
+ m_index = index;
+ updateItemContents();
+ }
+}
+
+/*virtual*/
+QSizeF AbstractViewItem::effectiveSizeHint(Qt::SizeHint which, const QSizeF &constraint) const
+{
+ return GvbWidget::effectiveSizeHint(which, constraint);
+}
+
+/*virtual*/
+bool AbstractViewItem::event(QEvent *e)
+{
+ return QGraphicsWidget::event(e);
+}
+
+/*virtual*/
+void AbstractViewItem::updateItemContents()
+{
+ ; // No impl yet
+}
+
+/*virtual*/
+void AbstractViewItem::themeChange()
+{
+ ; // No impl yet
+}
+
+#if (QT_VERSION >= 0x040600)
+/*virtual*/
+void AbstractViewItem::setSubtreeCacheEnabled(bool enabled)
+{
+ Q_UNUSED(enabled)
+ ; // No impl
+}
+#endif
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h
new file mode 100644
index 0000000000..1eace4e501
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/abstractviewitem.h
@@ -0,0 +1,96 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ABSTRACTVIEWITEM_H
+#define ABSTRACTVIEWITEM_H
+
+#include <QModelIndex>
+
+#include "gvbwidget.h"
+#include "abstractitemview.h"
+#include "listitem.h"
+
+class QGraphicsWidget;
+
+class AbstractViewItem : public GvbWidget
+{
+ Q_OBJECT
+public:
+ AbstractViewItem(QGraphicsWidget *parent = 0);
+ virtual ~AbstractViewItem();
+
+ virtual AbstractViewItem *newItemInstance() = 0;
+
+ QModelIndex modelIndex() const;
+
+ void setModelIndex(const QModelIndex &index);
+
+ AbstractViewItem *prototype() const;
+ AbstractItemView *itemView() const;
+ void setItemView(AbstractItemView *itemView) ;
+ virtual void updateItemContents();
+ virtual void themeChange();
+
+#if (QT_VERSION >= 0x040600)
+ virtual void setSubtreeCacheEnabled(bool enabled);
+#endif
+
+ virtual QSizeF effectiveSizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const;
+
+ virtual void setModel(QAbstractItemModel *model) = 0;
+ virtual QVariant data(int role) const = 0;
+ virtual void setData(const QVariant &value, int role = Qt::DisplayRole) = 0;
+ virtual void setTwoColumns(const bool enabled) = 0;
+
+protected:
+ virtual bool event(QEvent *e);
+
+ QPersistentModelIndex m_index;
+
+private:
+ Q_DISABLE_COPY(AbstractViewItem)
+
+ AbstractItemView *m_itemView;
+ AbstractViewItem *m_prototype;
+
+};
+
+#endif // ABSTRACTVIEWITEM_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp
new file mode 100644
index 0000000000..93a1c847c7
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.cpp
@@ -0,0 +1,85 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QStyleOptionGraphicsItem>
+#include <QGraphicsSceneResizeEvent>
+#include <QPainter>
+#include <QRectF>
+
+#include "backgrounditem.h"
+#include "theme.h"
+
+BackgroundItem::BackgroundItem(const QString &filename, QGraphicsWidget *parent)
+ : GvbWidget(parent),
+ m_background(),
+ m_fileName(filename)
+{
+ setContentsMargins(0,0,0,0);
+
+ connect(Theme::p(), SIGNAL(themeChanged()), this, SLOT(themeChange()));
+}
+
+BackgroundItem::~BackgroundItem()
+{
+
+}
+
+void BackgroundItem::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ GvbWidget::resizeEvent(event);
+ m_background = Theme::p()->pixmap(m_fileName, size().toSize());
+}
+
+void BackgroundItem::paint(QPainter *painter,
+ const QStyleOptionGraphicsItem *option,
+ QWidget *widget)
+{
+ Q_UNUSED(widget)
+ painter->setCompositionMode(QPainter::CompositionMode_Source);
+ painter->drawPixmap(option->exposedRect, m_background, option->exposedRect);
+}
+
+void BackgroundItem::themeChange()
+{
+ m_background = Theme::p()->pixmap(m_fileName, size().toSize());
+ update();
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h
new file mode 100644
index 0000000000..89d8f7ef0b
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/backgrounditem.h
@@ -0,0 +1,72 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __BACKGROUNDITEM_H__
+#define __BACKGROUNDITEM_H__
+
+#include <QPixmap>
+
+#include "gvbwidget.h"
+
+class QGraphicsWidget;
+
+class BackgroundItem : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+ BackgroundItem(const QString &filename, QGraphicsWidget *parent=0);
+ ~BackgroundItem();
+
+ void paint(QPainter *painter,
+ const QStyleOptionGraphicsItem *option,
+ QWidget *widget = 0);
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+
+public slots:
+ void themeChange();
+
+private:
+ QPixmap m_background;
+ QString m_fileName;
+};
+
+#endif /* __BACKGROUNDITEM_H__ */
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp
new file mode 100644
index 0000000000..1d64c7f7a4
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.cpp
@@ -0,0 +1,209 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+#include "button.h"
+#include "theme.h"
+
+static const int MinTextWidthAsChars = 8;
+
+class ButtonPrivate {
+ Q_DECLARE_PUBLIC(Button)
+
+public:
+
+ ButtonPrivate(Button *button)
+ : down(false)
+ , q_ptr(button)
+ {
+ textItem = new QGraphicsSimpleTextItem(q_ptr);
+ }
+
+ QGraphicsSimpleTextItem *textItem;
+ bool down;
+ Button *q_ptr;
+};
+
+Button::Button(const QString &text, QGraphicsItem *parent, QSizeF minimumSize)
+ : QGraphicsWidget(parent)
+ , d_ptr(new ButtonPrivate(this)), m_background(), m_selected(false)
+{
+ Q_D(Button);
+ setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
+ //setCacheMode(QGraphicsItem::ItemCoordinateCache);
+ if(minimumSize.isValid())
+ setMinimumSize(minimumSize);
+ setContentsMargins(0, 0, 0, 0);
+ d->textItem->setText(text);
+ prepareGeometryChange();
+
+ m_font = Theme::p()->font(Theme::MenuItem);
+ d->textItem->setFont(m_font);
+ connect(Theme::p(), SIGNAL(themeChanged()), this, SLOT(themeChange()));
+}
+
+Button::~Button()
+{
+ delete d_ptr;
+}
+
+bool Button::isDown()
+{
+ Q_D(Button);
+
+ return d->down;
+}
+
+void Button::setText(const QString &text)
+{
+ Q_D(Button);
+ d->textItem->setText(text);
+ update();
+}
+
+QString Button::text()
+{
+ Q_D(Button);
+ return d->textItem->text();
+}
+
+void Button::paint(QPainter *painter,
+ const QStyleOptionGraphicsItem *option,
+ QWidget *widget)
+{
+ Q_UNUSED(widget);
+ Q_UNUSED(option);
+
+ if(!m_background.isNull())
+ painter->drawPixmap(QPoint(), m_background);
+ if(m_selected) {
+ painter->setBrush(Qt::black);
+ painter->setOpacity(0.2);
+ painter->drawRect(boundingRect().toRect());
+ }
+}
+
+QSizeF Button::sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint) const
+{
+ Q_D(const Button);
+
+ switch (which)
+ {
+ case Qt::MinimumSize:
+ {
+ QFontMetricsF fm(d->textItem->font());
+ return QSizeF(MinTextWidthAsChars * fm.maxWidth(), fm.height());
+ }
+ case Qt::PreferredSize:
+ {
+ QFontMetricsF fm(d->textItem->font());
+ return QSizeF(fm.width(d->textItem->text()), fm.height());
+ }
+ default:
+ return QGraphicsWidget::sizeHint(which, constraint);
+ }
+}
+
+void Button::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_D(Button);
+
+ if (event->button() != Qt::LeftButton ||
+ !sceneBoundingRect().contains(event->scenePos()))
+ return;
+
+ d->down = true;
+
+ prepareGeometryChange();
+ emit pressed();
+
+}
+
+void Button::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_D(Button);
+
+ if (!d->down || event->button() != Qt::LeftButton)
+ return;
+
+ d->down = false;
+
+ prepareGeometryChange();
+
+ emit released();
+
+ if (sceneBoundingRect().contains(event->scenePos()))
+ emit clicked();
+}
+
+void Button::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_UNUSED(event);
+}
+
+void Button::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ Q_D(Button);
+ QGraphicsWidget::resizeEvent(event);
+
+ QRectF rect = d->textItem->boundingRect();
+ QRectF buttonrect = this->boundingRect();
+ d->textItem->setPos((buttonrect.width() - rect.width())/2, (buttonrect.height() - rect.height())/2 );
+
+ QSize currentSize = buttonrect.size().toSize();
+ if( m_background.size() != currentSize && (currentSize.width() > 0 && currentSize.height() > 0) ) {
+ m_background = Theme::p()->pixmap("status_field_middle.svg", buttonrect.size().toSize());
+ }
+}
+
+void Button::setBackground(QPixmap& background)
+{
+ m_background = background;
+}
+
+void Button::themeChange()
+{
+ Q_D(Button);
+
+ m_font = Theme::p()->font(Theme::MenuItem);
+ d->textItem->setFont(m_font);
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h
new file mode 100644
index 0000000000..f8068bd6d2
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/button.h
@@ -0,0 +1,102 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef BUTTON_H
+#define BUTTON_H
+
+#include <QGraphicsWidget>
+
+class ButtonPrivate;
+class QTextDocument;
+
+class QPixmap;
+class QFont;
+
+class Button : public QGraphicsWidget
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(Button)
+
+public:
+
+ Button(const QString &text, QGraphicsItem *parent=0, QSizeF minimumSize = QSizeF());
+ virtual ~Button();
+
+signals:
+
+ void clicked(bool checked = false);
+ void pressed();
+ void released();
+
+public slots:
+
+ void themeChange();
+ void setText(const QString &text);
+ QString text();
+
+public:
+
+ void setBackground(QPixmap& background);
+ bool isDown();
+ void select(bool select){m_selected = select;}
+ void click() {emit clicked();}
+
+private:
+
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
+ QWidget *widget = 0);
+ QSizeF sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint = QSizeF()) const;
+
+ void mousePressEvent(QGraphicsSceneMouseEvent *event);
+ void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
+ void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+
+private:
+ Q_DISABLE_COPY(Button)
+ ButtonPrivate *d_ptr;
+ QPixmap m_background;
+ QFont m_font;
+ bool m_selected;
+};
+
+#endif // BUTTON_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp
new file mode 100644
index 0000000000..c4946b3eec
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.cpp
@@ -0,0 +1,196 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QStringList>
+#include <QDebug>
+
+#include "commandline.h"
+
+static void usage(const char *appname)
+{
+ Q_UNUSED(appname);
+ printf(" GraphicsViewBenchmark related options:\n");
+ printf(" -h,-help,--help: This help\n");
+ printf(" -resolution : UI resolution in format WxH where width and height are positive values\n");
+ printf(" -opengl : Enables OpenGL usage. Building PRECONDITIONS: QT_NO_OPENGL is off.\n");
+ printf(" -manual : Run test manually \n");
+ printf("\n The following options are available in manual mode:\n");
+ printf(" -rotation : UI rotation in degrees\n");
+ printf(" -subtree-cache : Enables usage of subtree caching method\n");
+ printf(" -fps : Output FPS count to stdout during application execution\n");
+ printf(" -items : Count of items created to the list\n");
+ printf("\n");
+}
+
+static inline bool argumentOnlyAvailableInManualMode(const char *arg)
+{
+ return (strcmp(arg, "-rotation") == 0)
+ || (strcmp(arg, "-subtree-cache") == 0)
+ || (strcmp(arg, "-fps") == 0)
+ || (strcmp(arg, "-items") == 0);
+}
+
+bool readSettingsFromCommandLine(int argc, char *argv[],
+ Settings& config)
+{
+ bool builtWithOpenGL = false;
+ Settings::Options options;
+
+#ifndef QT_NO_OPENGL
+ builtWithOpenGL = true;
+#endif
+ for (int i = 1; i < argc; ++i) {
+ if (strcmp(argv[i], "-manual") == 0) {
+ options |= Settings::ManualTest;
+ argv[i] = 0;
+ break;
+ }
+ }
+
+ for (int i = 1; i < argc; ++i) {
+ if (!argv[i])
+ continue;
+ if (strcmp(argv[i], "-h") == 0 || strcmp(argv[i], "-help") == 0 || strcmp(argv[i], "--help") == 0) {
+ usage(argv[0]);
+ return true;
+ }
+ if (strcmp(argv[i], "-opengl") == 0) {
+ if (builtWithOpenGL) {
+ options |= Settings::UseOpenGL;
+ argv[i] = 0;
+ } else {
+ printf("-opengl parameter can be used only with building PRECONDITIONS: QT_NO_OPENGL is off.\n");
+ usage(argv[0]);
+ return false;
+ }
+ } else if (strcmp(argv[i], "-resolution") == 0) {
+ if (i + 1 >= argc) {
+ printf("-resolution needs an extra parameter specifying the application UI resolution\n");
+ usage(argv[0]);
+ return false;
+ }
+ else {
+ QStringList res = QString(argv[i+1]).split("x");
+ if (res.count() != 2) {
+ printf("-resolution parameter UI resolution should be set in format WxH where width and height are positive values\n");
+ usage(argv[0]);
+ return false;
+ }
+ int width = res.at(0).toInt();
+ int height = res.at(1).toInt();
+
+ config.setSize(QSize(width, height));
+
+ if (width <=0 || height <=0) {
+ printf("-resolution parameter UI resolution should be set in format WxH where width and height are positive values\n");
+ usage(argv[0]);
+ return false;
+ }
+ argv[i] = 0;
+ i++;
+ argv[i] = 0;
+ }
+ }
+
+ if (!argv[i])
+ continue;
+
+ if (!(options & Settings::ManualTest)) {
+ if (argumentOnlyAvailableInManualMode(argv[i])) {
+ printf("\nWrong option: '%s' is only available in manual mode\n\n", argv[i]);
+ usage(argv[0]);
+ return false;
+ }
+ continue;
+ }
+
+ if (strcmp(argv[i], "-rotation") == 0) {
+ if (i + 1 >= argc) {
+ printf("-rotation needs an extra parameter specifying the application UI rotation in degrees\n");
+ usage(argv[0]);
+ return false;
+ }
+ else {
+ bool ok;
+ int angle = QString(argv[i+1]).toInt(&ok);
+ if (!ok) {
+ printf("-rotation parameter should specify rotation angle in degrees\n");
+ usage(argv[0]);
+ return false;
+ }
+ config.setAngle(angle);
+ argv[i] = 0;
+ i++;
+ argv[i] = 0;
+ }
+ } else if (strcmp(argv[i], "-subtree-cache") == 0) {
+ options |= Settings::UseListItemCache;
+ argv[i] = 0;
+ } else if (strcmp(argv[i], "-fps") == 0) {
+ options |= Settings::OutputFps;
+ argv[i] = 0;
+ } else if (strcmp(argv[i], "-items") == 0) {
+ if (i + 1 >= argc) {
+ printf("-items needs an extra parameter specifying amount of list items\n");
+ usage(argv[0]);
+ return false;
+ }
+ else {
+ bool ok;
+ int amount = QString(argv[i+1]).toInt(&ok);
+ if (!ok) {
+ printf("-items needs an extra parameter specifying amount (integer) of list items\n");
+ usage(argv[0]);
+ return false;
+ }
+ config.setListItemCount(amount);
+ argv[i] = 0;
+ i++;
+ argv[i] = 0;
+ }
+ }
+ }
+
+ config.setOptions(options);
+
+ return true;
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h
new file mode 100644
index 0000000000..0b05709704
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/commandline.h
@@ -0,0 +1,52 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef COMMANDLINE_H
+#define COMMANDLINE_H
+
+#include "settings.h"
+
+bool readSettingsFromCommandLine(int argc,
+ char *argv[],
+ Settings& settings);
+
+
+#endif // COMMANDLINE_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp
new file mode 100644
index 0000000000..bf25d4d0de
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.cpp
@@ -0,0 +1,141 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QFile>
+#include "theme.h"
+
+#include "dummydatagen.h"
+
+DummyDataGenerator::DummyDataGenerator() : m_isMale(false)
+{
+ QFile countryCodeFile(":/contact/areacodes.txt");
+ countryCodeFile.open(QIODevice::ReadOnly);
+ while (!countryCodeFile.atEnd()) {
+ m_countryCodes << QString(countryCodeFile.readLine()).remove("\n");
+ }
+
+ QFile firstNameFFile(":/contact/firstnamesF.txt");
+ firstNameFFile.open(QIODevice::ReadOnly);
+ while (!firstNameFFile.atEnd()) {
+ m_firstNamesF << QString(firstNameFFile.readLine()).remove("\n");
+ }
+
+ QFile firstNameMFile(":/contact/firstnamesM.txt");
+ firstNameMFile.open(QIODevice::ReadOnly);
+ while (!firstNameMFile.atEnd()) {
+ m_firstNamesM << QString(firstNameMFile.readLine()).remove("\n");
+ }
+
+ QFile lastNameFile(":/contact/lastnames.txt");
+ lastNameFile.open(QIODevice::ReadOnly);
+ while (!lastNameFile.atEnd()) {
+ m_lastNames << QString(lastNameFile.readLine()).remove("\n");
+ }
+ Reset();
+}
+
+DummyDataGenerator::~DummyDataGenerator()
+{
+
+}
+
+void DummyDataGenerator::Reset()
+{
+ qsrand(100);
+}
+
+QString DummyDataGenerator::randomPhoneNumber(QString indexNumber)
+{
+ int index = qrand()%m_countryCodes.count();
+ QString countryCode = m_countryCodes.at(index);
+ QString areaCode = QString::number(index) + QString("0").repeated(2-QString::number(index).length());
+ QString beginNumber = QString::number(555-index*2);
+ QString endNumber = QString("0").repeated(4-indexNumber.length()) + indexNumber;
+
+ return countryCode +" " + areaCode +" " + beginNumber +" " + endNumber;
+}
+
+QString DummyDataGenerator::randomFirstName()
+{
+ m_isMale = !m_isMale;
+ if (m_isMale)
+ return m_firstNamesM.at(qrand()%m_firstNamesM.count());
+ return m_firstNamesF.at(qrand()%m_firstNamesF.count());
+}
+
+QString DummyDataGenerator::randomLastName()
+{
+ return m_lastNames.at(qrand()%m_lastNames.count());
+}
+
+QString DummyDataGenerator::randomName()
+{
+ return QString(randomFirstName()+QString(", ")+randomLastName());
+}
+
+QString DummyDataGenerator::randomIconItem()
+{
+ QString avatar = Theme::p()->pixmapPath() + "contact_default_icon.svg";
+ if (qrand()%4) {
+ int randVal = 1+qrand()%25;
+
+ if(m_isMale && randVal > 15) {
+ randVal -= 15;
+ }
+ if(!m_isMale && randVal <= 10) {
+ randVal += 10;
+ }
+
+ avatar = QString(":/avatars/avatar_%1.png").arg(randVal, 3, 10, QChar('0'));
+ }
+ return avatar;
+}
+
+QString DummyDataGenerator::randomStatusItem()
+{
+ switch ( qrand()%3 )
+ {
+ case 0: return Theme::p()->pixmapPath() + "contact_status_online.svg";
+ case 1: return Theme::p()->pixmapPath() + "contact_status_offline.svg";
+ case 2: return Theme::p()->pixmapPath() + "contact_status_idle.svg";
+ }
+ return 0;
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h
new file mode 100644
index 0000000000..413dae6bdc
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/dummydatagen.h
@@ -0,0 +1,72 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __DUMMYDATAGEN_H__
+#define __DUMMYDATAGEN_H__
+
+#include <QObject>
+#include <QStringList>
+
+class DummyDataGenerator : public QObject
+{
+ Q_OBJECT
+public:
+ DummyDataGenerator();
+ ~DummyDataGenerator();
+
+public:
+ void Reset();
+ QString randomPhoneNumber(QString indexNumber);
+ QString randomFirstName();
+ QString randomLastName();
+ QString randomName();
+ QString randomIconItem();
+ QString randomStatusItem();
+
+private:
+ QStringList m_countryCodes;
+ QStringList m_firstNamesF;
+ QStringList m_firstNamesM;
+ QStringList m_lastNames;
+ bool m_isMale;
+};
+
+#endif // __DUMMYDATAGEN_H__
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp
new file mode 100644
index 0000000000..1bca071d5a
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.cpp
@@ -0,0 +1,59 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+#include "gvbwidget.h"
+
+GvbWidget::GvbWidget(QGraphicsItem * parent, Qt::WindowFlags wFlags)
+ : QGraphicsWidget(parent, wFlags)
+{
+
+}
+
+GvbWidget::~GvbWidget()
+{
+}
+
+void GvbWidget::keyPressEvent(QKeyEvent *event)
+{
+ Q_UNUSED(event)
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h
new file mode 100644
index 0000000000..a1b544eb2e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/gvbwidget.h
@@ -0,0 +1,58 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef GVBWIDGET_H
+#define GVBWIDGET_H
+
+#include <QGraphicsWidget>
+
+class GvbWidget : public QGraphicsWidget
+{
+ Q_OBJECT
+
+public:
+
+ GvbWidget(QGraphicsItem * parent = 0, Qt::WindowFlags wFlags = 0);
+ ~GvbWidget();
+ virtual void keyPressEvent(QKeyEvent *event);
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp
new file mode 100644
index 0000000000..718c1b8a48
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.cpp
@@ -0,0 +1,169 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+#include <QSvgRenderer>
+
+#if (QT_VERSION >= 0x040600)
+#include <QGraphicsEffect>
+#endif
+
+#include "iconitem.h"
+
+IconItem::IconItem(const QString &filename, QGraphicsItem *parent)
+ : GvbWidget(parent)
+ , m_filename(filename)
+ , m_rotation(0.0)
+#if (QT_VERSION >= 0x040600)
+ , m_opacityEffect(0)
+#endif
+ , m_smoothTransformation(false)
+{
+ setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
+ setContentsMargins(0,0,0,0);
+ setPreferredSize(58,58);
+}
+
+IconItem::~IconItem()
+{
+}
+
+void IconItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
+{
+ Q_UNUSED(option);
+ Q_UNUSED(widget);
+
+ reload();
+
+ const QPointF c = boundingRect().center();
+ painter->translate(c.x(), c.y());
+ painter->rotate(m_rotation);
+ painter->translate(-c.x(), -c.y());
+
+ if (m_smoothTransformation)
+ painter->setRenderHints(QPainter::SmoothPixmapTransform);
+
+ painter->drawPixmap(0,0, m_pixmap);
+}
+
+QSizeF IconItem::sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint) const
+{
+ switch (which)
+ {
+ case Qt::MinimumSize:
+ case Qt::PreferredSize:
+ case Qt::MaximumSize:
+ return m_pixmap.size();
+
+ default:
+ return GvbWidget::sizeHint(which, constraint);
+ }
+}
+
+void IconItem::reload()
+{
+ const QSize iconSize = size().toSize();
+ if (iconSize.width() == 0 || iconSize.height() == 0)
+ return;
+
+ const QString key = m_filename+QString::number(iconSize.width())+QString::number(iconSize.height());
+ if (QPixmapCache::find(key, m_pixmap))
+ return;
+
+ if (m_filename.endsWith(".svg", Qt::CaseInsensitive))
+ {
+ m_pixmap = QPixmap(iconSize);
+ m_pixmap.fill(Qt::transparent);
+ QSvgRenderer doc(m_filename);
+ QPainter painter(&m_pixmap);
+ painter.setViewport(0, 0, iconSize.width(), iconSize.height());
+ doc.render(&painter);
+ }
+ else
+ {
+ m_pixmap = QPixmap(m_filename).scaled(iconSize);
+ }
+
+ QPixmapCache::insert(key, m_pixmap);
+ updateGeometry();
+}
+
+QString IconItem::fileName() const
+{
+ return m_filename;
+}
+
+void IconItem::setFileName(const QString &filename)
+{
+ if( m_filename != filename) {
+ m_filename = filename;
+ reload();
+ }
+}
+
+#if (QT_VERSION >= 0x040600)
+void IconItem::setOpacityEffectEnabled(const bool enable)
+{
+ if (!m_opacityEffect)
+ {
+ QRadialGradient gradient(0.5, 0.5, 1.0);
+ gradient.setCoordinateMode(QGradient::ObjectBoundingMode);
+ gradient.setColorAt(0.0, QColor(0,0,0, 255));
+ gradient.setColorAt(0.46, QColor(0,0,0, 255));
+ gradient.setColorAt(0.62, QColor(0,0,0, 0));
+
+ m_opacityEffect = new QGraphicsOpacityEffect;
+ m_opacityEffect->setOpacityMask(gradient);
+ m_opacityEffect->setOpacity(1.0);
+ this->setGraphicsEffect(m_opacityEffect);
+ }
+ m_opacityEffect->setEnabled(enable);
+}
+
+bool IconItem::isOpacityEffectEnabled() const
+{
+ if (m_opacityEffect)
+ return m_opacityEffect->isEnabled();
+
+ return false;
+}
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h
new file mode 100644
index 0000000000..ea9e9a5cc1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/iconitem.h
@@ -0,0 +1,96 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ICONITEM_H
+#define ICONITEM_H
+
+#include <QPainter>
+
+#include "gvbwidget.h"
+
+#if (QT_VERSION >= 0x040600)
+class QGraphicsOpacityEffect;
+#endif
+class QPainter;
+
+class IconItem : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+
+ IconItem(const QString &filename = "", QGraphicsItem *parent = 0);
+
+ virtual ~IconItem();
+
+ QString fileName() const;
+ void setFileName(const QString &filename);
+
+#if (QT_VERSION >= 0x040600)
+ void setOpacityEffectEnabled(const bool enable);
+ bool isOpacityEffectEnabled() const;
+#endif
+ void setRotation(const qreal rotation) { m_rotation = rotation; }
+ qreal rotation() const { return m_rotation; }
+
+ void setSmoothTransformationEnabled(const bool enable) { m_smoothTransformation = enable; }
+ bool isSmoothTransformationEnabled() const { return m_smoothTransformation; }
+
+private:
+
+ virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget */*widget = 0*/);
+ QSizeF sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint = QSizeF()) const;
+
+private:
+ Q_DISABLE_COPY(IconItem)
+ void reload();
+
+ QString m_filename;
+ QPixmap m_pixmap;
+ qreal m_rotation;
+#if (QT_VERSION >= 0x040600)
+ QGraphicsOpacityEffect *m_opacityEffect;
+#endif
+ bool m_smoothTransformation;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp
new file mode 100644
index 0000000000..06c7b14b19
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.cpp
@@ -0,0 +1,275 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QTime>
+
+#include "itemrecyclinglist.h"
+#include "listitemcontainer.h"
+#include "abstractviewitem.h"
+#include "recycledlistitem.h"
+#include "theme.h"
+#include "scrollbar.h"
+
+ItemRecyclingList::ItemRecyclingList(const int itemBuffer, QGraphicsWidget * parent)
+ : ItemRecyclingListView(parent),
+ m_listModel(new ListModel(this))
+{
+ ListItemContainer *container = new ListItemContainer(itemBuffer, this, this);
+ container->setParentItem(this);
+ ItemRecyclingListView::setContainer(container);
+ ItemRecyclingListView::setModel(m_listModel, new RecycledListItem(this));
+ setObjectName("ItemRecyclingList");
+ connect(Theme::p(), SIGNAL(themeChanged()), this, SLOT(themeChange()));
+
+ setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+}
+
+/* virtual */
+ItemRecyclingList::~ItemRecyclingList()
+{
+}
+
+/* virtual */
+void ItemRecyclingList::insertItem(int index, RecycledListItem *item)
+{
+ if (index<0)
+ index = 0;
+ if (index > m_listModel->rowCount())
+ index = m_listModel->rowCount();
+ if (m_listModel && item)
+ m_listModel->insert(index,item);
+
+ updateListItemBackgrounds(index);
+}
+
+/* virtual */
+void ItemRecyclingList::addItem(RecycledListItem *item)
+{
+ if (item)
+ m_listModel->appendRow(item);
+
+ const int index = m_listModel->rowCount()-1;
+ updateListItemBackgrounds(index);
+}
+
+/* virtual */
+void ItemRecyclingList::clear()
+{
+ m_listModel->clear();
+}
+
+/* virtual */
+AbstractViewItem *ItemRecyclingList::takeItem(const int row)
+{
+ if (row < 0 || row >= m_listModel->rowCount() || !m_listModel)
+ return 0;
+ return m_listModel->takeItem(row);
+}
+
+/*virtual*/
+void ItemRecyclingList::setItemPrototype(AbstractViewItem* prototype)
+{
+ ItemRecyclingListView::setItemPrototype(prototype);
+}
+
+void ItemRecyclingList::themeChange()
+{
+ const bool caching = listItemCaching();
+ setListItemCaching(false);
+
+ const QString iconName = Theme::p()->pixmapPath()+"contact_default_icon.svg";
+ const int count = m_listModel->rowCount();
+
+ for (int i=0; i<count; ++i)
+ {
+ RecycledListItem *ritem = m_listModel->item(i);
+ if (ritem) {
+ ListItem *item = ritem->item();
+
+ // Update default icons
+ const QString filename = item->icon(ListItem::LeftIcon)->fileName();
+ if (filename.contains("contact_default_icon")) {
+ item->icon(ListItem::LeftIcon)->setFileName(iconName);
+ }
+
+ // Update status icons
+ QString statusIcon = item->icon(ListItem::RightIcon)->fileName();
+ const int index = statusIcon.indexOf("contact_status");
+ if (index != -1) {
+ statusIcon.remove(0, index);
+ item->icon(ListItem::RightIcon)->setFileName(Theme::p()->pixmapPath()+statusIcon);
+ }
+
+ // Update fonts
+ item->setFont(Theme::p()->font(Theme::ContactName), ListItem::FirstPos);
+ item->setFont(Theme::p()->font(Theme::ContactNumber), ListItem::SecondPos);
+ item->setFont(Theme::p()->font(Theme::ContactEmail), ListItem::ThirdPos);
+
+ // Update list dividers
+ if (i%2) {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushOdd());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityOdd());
+ }
+ else {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushEven());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityEven());
+ }
+
+ // Update borders
+ item->setBorderPen(Theme::p()->listItemBorderPen());
+ item->setRounding(Theme::p()->listItemRounding());
+
+ // Update icons
+ item->icon(ListItem::LeftIcon)->setRotation(Theme::p()->iconRotation(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setRotation(Theme::p()->iconRotation(ListItem::RightIcon));
+#if (QT_VERSION >= 0x040600)
+ item->icon(ListItem::LeftIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::RightIcon));
+#endif
+ item->icon(ListItem::LeftIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::RightIcon));
+ }
+ }
+ updateViewContent();
+ setListItemCaching(caching);
+}
+
+void ItemRecyclingList::keyPressEvent(QKeyEvent *event)
+{
+ static QTime keyPressInterval = QTime::currentTime();
+ static qreal step = 0.0;
+ static bool repeat = false;
+ int interval = keyPressInterval.elapsed();
+
+ ScrollBar* sb = verticalScrollBar();
+ qreal currentValue = sb->sliderPosition();
+
+ if(interval < 250 ) {
+ if(!repeat) step = 0.0;
+ step = step + 2.0;
+ if(step > 100) step = 100;
+ repeat = true;
+ }
+ else {
+ step = 1.0;
+ if(m_listModel->item(0)) m_listModel->item(0)->size().height();
+ step = m_listModel->item(0)->size().height();
+ repeat = false;
+ }
+
+ if(event->key() == Qt::Key_Up ) { //Up Arrow
+ sb->setSliderPosition(currentValue - step);
+ }
+
+ if(event->key() == Qt::Key_Down ) { //Down Arrow
+ sb->setSliderPosition(currentValue + step);
+ }
+ keyPressInterval.start();
+}
+
+bool ItemRecyclingList::listItemCaching() const
+{
+#if (QT_VERSION >= 0x040600)
+ ListItemContainer *container =
+ static_cast<ListItemContainer *>(m_container);
+
+ return container->listItemCaching();
+#else
+ return false;
+#endif
+}
+
+void ItemRecyclingList::setListItemCaching(bool enabled)
+{
+#if (QT_VERSION >= 0x040600)
+ ListItemContainer *container =
+ static_cast<ListItemContainer *>(m_container);
+ container->setListItemCaching(enabled);
+#else
+ Q_UNUSED(enabled)
+#endif
+}
+
+void ItemRecyclingList::updateListItemBackgrounds(int index)
+{
+ const int itemCount = m_listModel->rowCount();
+
+ for (int i=index; i<itemCount; ++i)
+ {
+ RecycledListItem *ritem = m_listModel->item(i);
+ if (ritem) {
+ ListItem *item = ritem->item();
+ if (i%2) {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushOdd());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityOdd());
+ }
+ else {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushEven());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityEven());
+ }
+ }
+ }
+}
+
+void ItemRecyclingList::setTwoColumns(const bool enabled)
+{
+ if (twoColumns() == enabled)
+ return;
+
+#if (QT_VERSION >= 0x040600)
+ const bool caching = listItemCaching();
+ setListItemCaching(false);
+#endif
+
+ m_container->setTwoColumns(enabled);
+ refreshContainerGeometry();
+
+#if (QT_VERSION >= 0x040600)
+ setListItemCaching(caching);
+#endif
+}
+
+bool ItemRecyclingList::twoColumns()
+{
+ return m_container->twoColumns();
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h
new file mode 100644
index 0000000000..715edf4c4c
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.h
@@ -0,0 +1,85 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ITEMRECYCLINGLIST_H
+#define ITEMRECYCLINGLIST_H
+
+#include "listitem.h"
+#include "abstractitemview.h"
+#include "listmodel.h"
+#include "itemrecyclinglistview.h"
+#include "recycledlistitem.h"
+
+class QGraphicsWidget;
+
+class ItemRecyclingList : public ItemRecyclingListView
+{
+ Q_OBJECT
+
+public:
+ ItemRecyclingList(const int itemBuffer = 4, QGraphicsWidget * parent = 0);
+ virtual ~ItemRecyclingList();
+
+ virtual void insertItem(int index, RecycledListItem *item);
+ virtual void addItem(RecycledListItem *item);
+ virtual void clear();
+ virtual AbstractViewItem *takeItem(const int row);
+ virtual void setItemPrototype(AbstractViewItem* prototype);
+ virtual void keyPressEvent(QKeyEvent *event);
+ virtual bool listItemCaching() const;
+ virtual void setListItemCaching(bool enabled);
+
+ void setTwoColumns(const bool enabled);
+ bool twoColumns();
+
+public slots:
+ void themeChange();
+
+private:
+ void updateListItemBackgrounds(int index);
+
+private:
+ Q_DISABLE_COPY(ItemRecyclingList)
+
+ ListModel *m_listModel;
+};
+
+#endif // ITEMRECYCLINGLIST_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.pri b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.pri
new file mode 100644
index 0000000000..55b551ef8f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglist.pri
@@ -0,0 +1,19 @@
+HEADERS += $$ROOTDIR/tests/itemrecyclinglist/itemrecyclinglist.h \
+ $$ROOTDIR/tests/itemrecyclinglist/itemrecyclinglistview.h \
+ $$ROOTDIR/tests/itemrecyclinglist/abstractitemview.h \
+ $$ROOTDIR/tests/itemrecyclinglist/abstractviewitem.h \
+ $$ROOTDIR/tests/itemrecyclinglist/recycledlistitem.h \
+ $$ROOTDIR/tests/itemrecyclinglist/listitemcontainer.h \
+ $$ROOTDIR/tests/itemrecyclinglist/abstractitemcontainer.h \
+ $$ROOTDIR/tests/itemrecyclinglist/listmodel.h
+
+SOURCES += $$ROOTDIR/tests/itemrecyclinglist/itemrecyclinglist.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/itemrecyclinglistview.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/abstractitemview.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/abstractviewitem.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/recycledlistitem.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/listitemcontainer.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/abstractitemcontainer.cpp \
+ $$ROOTDIR/tests/itemrecyclinglist/listmodel.cpp
+
+INCLUDEPATH += $$ROOTDIR/tests/itemrecyclinglist
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp
new file mode 100644
index 0000000000..1b6f0a2224
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.cpp
@@ -0,0 +1,79 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "itemrecyclinglistview.h"
+
+ItemRecyclingListView::ItemRecyclingListView(QGraphicsWidget * parent)
+ : AbstractItemView(parent), m_rootIndex()
+{
+}
+
+/*virtual*/
+ItemRecyclingListView::~ItemRecyclingListView()
+{
+}
+void ItemRecyclingListView::setCurrentRow(const int row)
+{
+ setCurrentIndex(model()->index(row,0));
+}
+
+int ItemRecyclingListView::rows() const
+{
+ if (m_model)
+ return m_model->rowCount();
+ return 0;
+}
+
+/*virtual*/
+void ItemRecyclingListView::rowsInserted(const QModelIndex &parent, int start, int end)
+{
+ if (parent == m_rootIndex) {
+ AbstractItemView::rowsInserted(parent, start, end);
+ }
+}
+
+/*virtual*/
+void ItemRecyclingListView::rowsRemoved(const QModelIndex &parent, int start, int end)
+{
+ if (parent == m_rootIndex) {
+ AbstractItemView::rowsRemoved(parent, start, end);
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h
new file mode 100644
index 0000000000..9798fe5cf1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/itemrecyclinglistview.h
@@ -0,0 +1,67 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef ITEMRECYCLINGLISTVIEW_H
+#define ITEMRECYCLINGLISTVIEW_H
+
+#include "abstractitemview.h"
+
+class ItemRecyclingListView : public AbstractItemView
+{
+public:
+ ItemRecyclingListView(QGraphicsWidget * parent = 0);
+ virtual ~ItemRecyclingListView();
+ void setCurrentRow(const int row);
+ int rows() const;
+#if (QT_VERSION >= 0x040600)
+ virtual bool listItemCaching() const = 0;
+ virtual void setListItemCaching(bool enabled) = 0;
+#endif
+
+protected:
+ void rowsInserted(const QModelIndex &parent, int start, int end);
+ void rowsRemoved(const QModelIndex &parent,int start,int end);
+
+private:
+ QModelIndex m_rootIndex;
+};
+
+#endif // ITEMRECYCLINGLISTVIEW_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp
new file mode 100644
index 0000000000..ad73ca98f7
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.cpp
@@ -0,0 +1,98 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+
+#include "label.h"
+
+Label::Label(const QString& text, QGraphicsItem *parent)
+ : GvbWidget(parent)
+{
+ m_textItem = new QGraphicsSimpleTextItem(this);
+ setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
+ setContentsMargins(0, 0, 0, 0);
+ setText(text);
+#if QT_VERSION >= 0x040600
+ // This flag was introduced in Qt 4.6.
+ setFlag(QGraphicsItem::ItemHasNoContents, true);
+#endif
+}
+
+Label::~Label()
+{
+}
+
+void Label::setText(const QString& text)
+{
+ m_textItem->setText(text);
+ prepareGeometryChange();
+}
+
+QString Label::text() const
+{
+ return m_textItem->text();
+}
+
+void Label::setFont(const QFont font)
+{
+ m_textItem->setFont(font);
+}
+
+void Label::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ GvbWidget::resizeEvent(event);
+}
+
+QSizeF Label::sizeHint(Qt::SizeHint which, const QSizeF &constraint) const
+{
+ switch (which)
+ {
+ case Qt::MinimumSize:
+ // fall thru
+ case Qt::PreferredSize:
+ {
+ QFontMetricsF fm(m_textItem->font());
+ return QSizeF(fm.width(m_textItem->text()), fm.height());
+ }
+ default:
+ return GvbWidget::sizeHint(which, constraint);
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h
new file mode 100644
index 0000000000..3e877d6f23
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/label.h
@@ -0,0 +1,76 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef TEXTITEM_H
+#define TEXTITEM_H
+
+#include "gvbwidget.h"
+
+class QPainter;
+class QStyleOptionGraphicsItem;
+class QGraphicsTextItem;
+
+class Label : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+
+ Label(const QString& text, QGraphicsItem *parent = 0);
+ ~Label();
+
+public:
+
+ void setText(const QString& text);
+ QString text() const;
+ void setFont(const QFont font);
+
+private:
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+ QSizeF sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint = QSizeF()) const;
+
+private:
+ Q_DISABLE_COPY(Label)
+ QGraphicsSimpleTextItem *m_textItem;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp
new file mode 100644
index 0000000000..e9ce6fb15d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.cpp
@@ -0,0 +1,314 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QGraphicsGridLayout>
+#include <QGraphicsLinearLayout>
+#include <QGraphicsSceneMouseEvent>
+#include <QPainter>
+#include <QStyleOptionGraphicsItem>
+#include "listitem.h"
+#include "theme.h"
+
+struct ItemData
+{
+ QHash<ListItem::TextPos, QString> texts;
+ QHash<ListItem::TextPos, QFont> fonts;
+ QHash<ListItem::IconItemPos, QString> icons;
+ QHash<ListItem::IconItemPos, qreal> iconRotations;
+ QHash<ListItem::IconItemPos, bool> iconSmoothTransformations;
+ QHash<ListItem::IconItemPos, bool> iconOpacityEffets;
+ QPen borderPen;
+ QBrush backgroundBrush;
+ qreal backgroundOpacity;
+ QSize rounding;
+};
+Q_DECLARE_METATYPE(ItemData);
+
+ListItem::ListItem(QGraphicsWidget *parent)
+ : GvbWidget(parent),
+ m_txtlayout(new QGraphicsGridLayout()),
+ m_layout(new QGraphicsLinearLayout(Qt::Horizontal)),
+ m_liconlayout(new QGraphicsLinearLayout(Qt::Horizontal)),
+ m_riconlayout(new QGraphicsLinearLayout(Qt::Horizontal))
+ ,m_fonts()
+ ,m_borderPen(Qt::NoPen)
+ ,m_backgroundBrush(QBrush())
+ ,m_backgroundOpacity(1.0)
+ ,m_rounding(0.0, 0.0)
+{
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
+ setContentsMargins(0,4,4,0);
+ m_layout->setContentsMargins(0,0,0,0);
+
+ m_txtlayout->setContentsMargins(0,8,0,8);
+ m_liconlayout->setContentsMargins(8,8,8,8);
+ m_riconlayout->setContentsMargins(0,8,4,8);
+
+ m_layout->insertItem(0, m_liconlayout);
+ m_layout->insertItem(1, m_txtlayout);
+ m_layout->insertItem(2, m_riconlayout);
+
+ m_layout->setStretchFactor(m_liconlayout, 1);
+ m_layout->setStretchFactor(m_txtlayout, 5);
+ m_layout->setStretchFactor(m_riconlayout, 1);
+
+ setFlag(QGraphicsItem::ItemClipsToShape);
+ setLayout(m_layout);
+}
+
+ListItem::~ListItem()
+{
+ if ( !m_liconlayout->parentLayoutItem() )
+ delete m_liconlayout;
+
+ if ( !m_riconlayout->parentLayoutItem() )
+ delete m_riconlayout;
+}
+
+void ListItem::setIcon( IconItem *iconItem, const IconItemPos iconPos )
+{
+ if (iconPos == LeftIcon) {
+ if (m_liconlayout->count() > 0 && m_liconlayout->itemAt(0)) {
+ delete m_liconlayout->itemAt(0);
+ m_liconlayout->addItem( iconItem );
+ }
+ else {
+ m_liconlayout->addItem( iconItem );
+ }
+ m_liconlayout->itemAt(0)->setMaximumSize(58,58);
+ }
+ else if (iconPos == RightIcon) {
+ if (m_riconlayout->count() > 0 && m_riconlayout->itemAt(0)) {
+ delete m_riconlayout->itemAt(0);
+ m_riconlayout->addItem( iconItem );
+ }
+ else {
+ m_riconlayout->addItem( iconItem );
+ }
+ m_riconlayout->itemAt(0)->setMaximumSize(22,22);
+ }
+ m_layout->invalidate();
+}
+
+IconItem* ListItem::icon( const IconItemPos iconPos ) const
+{
+ QGraphicsLayoutItem* item = 0;
+
+ if (iconPos == LeftIcon && m_liconlayout->count() > 0) {
+ item = m_liconlayout->itemAt(0);
+ }
+ else if (iconPos == RightIcon && m_riconlayout->count() > 0) {
+ item = m_riconlayout->itemAt(0);
+ }
+
+ if (item) {
+ IconItem* titem = static_cast<IconItem *>(item);
+ return titem;
+ }
+ return 0;
+}
+
+QVariant ListItem::data(int role) const
+{
+ if (role != Qt::DisplayRole)
+ return QVariant();
+
+ ItemData data;
+
+ if (text(ListItem::FirstPos).size() > 0) {
+ data.texts[ListItem::FirstPos] = text(ListItem::FirstPos);
+ data.fonts[ListItem::FirstPos] = m_fonts[ListItem::FirstPos];
+ }
+ if (text(ListItem::SecondPos).size() > 0) {
+ data.texts[ListItem::SecondPos] = text(ListItem::SecondPos);
+ data.fonts[ListItem::SecondPos] = m_fonts[ListItem::SecondPos];
+ }
+ if (text(ListItem::ThirdPos).size() > 0) {
+ data.texts[ListItem::ThirdPos] = text(ListItem::ThirdPos);
+ data.fonts[ListItem::ThirdPos] = m_fonts[ListItem::ThirdPos];
+ }
+ if (text(ListItem::LastPos).size() > 0) {
+ data.texts[ListItem::LastPos] = text(ListItem::LastPos);
+ data.fonts[ListItem::LastPos] = m_fonts[ListItem::LastPos];
+ }
+
+ if (icon(ListItem::LeftIcon)) {
+ data.icons[ListItem::LeftIcon] = icon(ListItem::LeftIcon)->fileName();
+ data.iconRotations[ListItem::LeftIcon] = icon(ListItem::LeftIcon)->rotation();
+ data.iconSmoothTransformations[ListItem::LeftIcon] = icon(ListItem::LeftIcon)->isSmoothTransformationEnabled();
+#if (QT_VERSION >= 0x040600)
+ data.iconOpacityEffets[ListItem::LeftIcon] = icon(ListItem::LeftIcon)->isOpacityEffectEnabled();
+#endif
+ }
+
+ if (icon(ListItem::RightIcon)) {
+ data.icons[ListItem::RightIcon] = icon(ListItem::RightIcon)->fileName();
+ data.iconRotations[ListItem::RightIcon] = icon(ListItem::RightIcon)->rotation();
+ data.iconSmoothTransformations[ListItem::RightIcon] = icon(ListItem::RightIcon)->isSmoothTransformationEnabled();
+#if (QT_VERSION >= 0x040600)
+ data.iconOpacityEffets[ListItem::RightIcon] = icon(ListItem::RightIcon)->isOpacityEffectEnabled();
+#endif
+ }
+
+ data.borderPen = m_borderPen;
+ data.backgroundBrush = m_backgroundBrush;
+ data.backgroundOpacity = m_backgroundOpacity;
+ data.rounding = m_rounding;
+
+ QVariant var;
+ var.setValue(data);
+ return var;
+}
+
+void ListItem::setData(const QVariant &value, int role)
+{
+ if (role != Qt::DisplayRole)
+ return;
+
+ ItemData data = value.value<ItemData>();
+ QList<ListItem::TextPos> textkeys = data.texts.keys();
+
+ for( int i = 0; i<textkeys.count(); ++i) {
+ setText(data.texts[textkeys.at(i)],textkeys.at(i));
+ setFont(data.fonts[textkeys.at(i)], textkeys.at(i));
+ }
+
+ QList<ListItem::IconItemPos> iconkeys = data.icons.keys();
+ for( int i = 0; i<iconkeys.count(); ++i) {
+ IconItem *iconItem = icon(iconkeys.at(i));
+ if (iconItem)
+ iconItem->setFileName(data.icons[iconkeys.at(i)]);
+ else {
+ IconItem *iconItem = new IconItem(data.icons[iconkeys.at(i)], this);
+ setIcon(iconItem, iconkeys.at(i));
+ }
+ }
+
+ if (icon(ListItem::LeftIcon)) {
+ icon(ListItem::LeftIcon)->setRotation(data.iconRotations[ListItem::LeftIcon]);
+ icon(ListItem::LeftIcon)->setSmoothTransformationEnabled(data.iconSmoothTransformations[ListItem::LeftIcon]);
+#if (QT_VERSION >= 0x040600)
+ icon(ListItem::LeftIcon)->setOpacityEffectEnabled(data.iconOpacityEffets[ListItem::LeftIcon]);
+#endif
+ }
+
+ if (icon(ListItem::RightIcon)) {
+ icon(ListItem::RightIcon)->setRotation(data.iconRotations[ListItem::RightIcon]);
+ icon(ListItem::RightIcon)->setSmoothTransformationEnabled(data.iconSmoothTransformations[ListItem::RightIcon]);
+#if (QT_VERSION >= 0x040600)
+ icon(ListItem::RightIcon)->setOpacityEffectEnabled(data.iconOpacityEffets[ListItem::RightIcon]);
+#endif
+ }
+
+ m_borderPen = data.borderPen;
+ m_backgroundBrush = data.backgroundBrush;
+ m_backgroundOpacity = data.backgroundOpacity;
+ m_rounding = data.rounding;
+}
+
+void ListItem::setText(const QString str, const TextPos position)
+{
+ QGraphicsLayoutItem * item = 0;
+
+ if (m_txtlayout->rowCount() > position && position >= 0)
+ item = m_txtlayout->itemAt(position, 0);
+
+ if (!item) {
+ Label *label = new Label(str,this);
+ m_txtlayout->addItem(label, position, 0);
+ if (m_fonts.contains(position))
+ label->setFont(m_fonts[position]);
+ }
+ else {
+ Label *titem = static_cast<Label *>(item);
+ titem->setText(str);
+ }
+}
+
+void ListItem::setFont(const QFont font, const TextPos position)
+{
+ m_fonts.insert(position, font);
+ QGraphicsLayoutItem * item = 0;
+
+ if (m_txtlayout->rowCount() > position && position >= 0)
+ item = m_txtlayout->itemAt(position, 0);
+
+ if (item) {
+ Label *titem = static_cast<Label *>(item);
+ titem->setFont(font);
+ }
+}
+
+QString ListItem::text(const TextPos position) const
+{
+ QGraphicsLayoutItem * item = 0;
+
+ if (m_txtlayout->rowCount() > position && position >= 0)
+ item = m_txtlayout->itemAt(position, 0);
+
+ if (item) {
+ Label *titem = static_cast<Label *>(item);
+ return titem->text();
+ }
+ return "";
+}
+
+void ListItem::paint(QPainter *painter, const QStyleOptionGraphicsItem */*option*/, QWidget */*widget*/)
+{
+ const int penWidth = m_borderPen.width();
+ QRectF r = rect();
+ r.adjust(penWidth, penWidth, -penWidth, -penWidth);
+
+ if (m_borderPen != Qt::NoPen)
+ {
+ painter->setPen(m_borderPen);
+ painter->drawRoundedRect(r, m_rounding.width(), m_rounding.height());
+ }
+
+ if (m_backgroundBrush != Qt::NoBrush)
+ {
+ painter->setPen(Qt::NoPen);
+ painter->setBrush(m_backgroundBrush);
+ painter->setOpacity(m_backgroundOpacity);
+ painter->drawRoundedRect(r, m_rounding.width(), m_rounding.height());
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h
new file mode 100644
index 0000000000..742985a0bf
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitem.h
@@ -0,0 +1,109 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef LISTITEM_H
+#define LISTITEM_H
+
+#include <QPen>
+#include "iconitem.h"
+#include "label.h"
+#include "gvbwidget.h"
+
+class QGraphicsGridLayout;
+class QGraphicsLinearLayout;
+class QGraphicsSceneMouseEvent;
+class QGraphicsItem;
+
+class ListItem : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+
+ enum TextPos {
+ FirstPos = 0,
+ SecondPos = 1,
+ ThirdPos = 2,
+ LastPos = 3
+ };
+
+ enum IconItemPos {
+ LeftIcon = 0,
+ RightIcon = 1
+ };
+
+ ListItem(QGraphicsWidget *parent = 0);
+ virtual ~ListItem();
+
+ void setIcon(IconItem *iconItem, const IconItemPos iconPos);
+ IconItem* icon(const IconItemPos position) const;
+ void setText(const QString str, const TextPos position);
+ QString text(const TextPos position) const;
+ void setFont(const QFont font, const TextPos position);
+
+ QVariant data(int role = Qt::DisplayRole) const;
+ void setData(const QVariant &value, int role = Qt::DisplayRole);
+
+ void setBorderPen(const QPen pen) { m_borderPen = pen; }
+ void setBackgroundBrush(const QBrush brush) { m_backgroundBrush = brush; }
+ void setBackgroundOpacity(const qreal opacity) { m_backgroundOpacity = opacity; }
+ void setRounding(const QSize rounding) { m_rounding = rounding; }
+
+protected:
+
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
+
+private:
+ Q_DISABLE_COPY(ListItem)
+ QGraphicsGridLayout *m_txtlayout;
+ QGraphicsLinearLayout *m_layout;
+ QGraphicsLinearLayout *m_liconlayout;
+ QGraphicsLinearLayout *m_riconlayout;
+ QHash<TextPos, QFont> m_fonts;
+
+ QPen m_borderPen;
+ QBrush m_backgroundBrush;
+ qreal m_backgroundOpacity;
+ QSize m_rounding;
+};
+
+#endif // LISTITEM_H
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp
new file mode 100644
index 0000000000..caf06d6884
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.cpp
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsItem>
+#include <QPainter>
+#include <QDebug>
+#include "listitemcache.h"
+
+ListItemCache::ListItemCache()
+{
+}
+
+ListItemCache::~ListItemCache()
+{
+ QPixmapCache::remove(m_cacheKey);
+}
+
+void ListItemCache::draw(QPainter * painter)
+{
+ QRectF irect = sourceBoundingRect(Qt::LogicalCoordinates);
+ QRectF vrect = painter->clipPath().boundingRect();
+
+ if (vrect.intersects(irect)) {
+ QRectF newVisibleRect = irect.intersected(vrect);
+ QPixmap pixmap;
+
+ if (!QPixmapCache::find(m_cacheKey, &pixmap) ||
+ m_visibleRect.toRect() != newVisibleRect.toRect()) {
+ //qDebug() << "ListItemCache: caching" << m_visibleRect
+ // << "->" << newVisibleRect;
+
+ pixmap = QPixmap(sourceBoundingRect().toRect().size());
+ pixmap.fill(Qt::transparent);
+
+ QPainter pixmapPainter(&pixmap);
+ drawSource(&pixmapPainter);
+ pixmapPainter.end();
+ m_cacheKey = QPixmapCache::insert(pixmap);
+
+ m_visibleRect = newVisibleRect;
+ }
+
+ //qDebug() << "ListItemCache: blitting" << m_visibleRect;
+ painter->drawPixmap(0, 0, pixmap);
+ }
+}
+
+void ListItemCache::sourceChanged(ChangeFlags)
+{
+ QPixmapCache::remove(m_cacheKey);
+}
+
+
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h
new file mode 100644
index 0000000000..be1220c561
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcache.h
@@ -0,0 +1,69 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef LISTITEMCACHE_H
+#define LISTITEMCACHE_H
+
+#include <QGraphicsEffect>
+#include <QPixmapCache>
+
+class ListItemCache : public QGraphicsEffect
+{
+ Q_OBJECT
+
+public:
+
+ ListItemCache();
+ ~ListItemCache();
+
+public: // QGraphicsEffect
+
+ void draw(QPainter *painter);
+ void sourceChanged(ChangeFlags flags);
+
+private:
+
+ QPixmapCache::Key m_cacheKey;
+ QRectF m_visibleRect;
+};
+
+#endif // LISTITEMCACHE_H
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp
new file mode 100644
index 0000000000..6633bd10be
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.cpp
@@ -0,0 +1,211 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qmath.h>
+#include <QGraphicsLinearLayout>
+#include <QGraphicsScene>
+
+#include "listitemcontainer.h"
+#include "abstractviewitem.h"
+
+#include "recycledlistitem.h"
+
+#if (QT_VERSION >= 0x040600)
+#include "listitemcache.h"
+#include "itemrecyclinglist.h"
+#endif
+
+ListItemContainer::ListItemContainer(int bufferSize, ItemRecyclingList *view, QGraphicsWidget *parent)
+ : AbstractItemContainer(bufferSize, parent)
+ , m_view(view)
+ , m_layout(new QGraphicsLinearLayout(Qt::Vertical))
+#if (QT_VERSION >= 0x040600)
+ , m_listItemCaching(false)
+#endif
+{
+ setContentsMargins(0,0,0,0);
+ m_layout->setContentsMargins(0,0,0,0);
+ m_layout->setSpacing(0);
+ setLayout(m_layout);
+}
+
+/*virtual*/
+ListItemContainer::~ListItemContainer()
+{
+#if (QT_VERSION >= 0x040600)
+ setListItemCaching(false);
+#endif
+ for (int i = 0; i < m_items.count(); ++i) {
+ m_layout->removeItem(m_items.at(i));
+ m_items.at(i)->setParentItem(0);
+ }
+ qDeleteAll(m_items);
+ m_items.clear();
+}
+
+#if (QT_VERSION >= 0x040600)
+bool ListItemContainer::listItemCaching() const
+{
+ return m_listItemCaching;
+}
+
+void ListItemContainer::setListItemCaching(const bool enabled)
+{
+ if (m_listItemCaching == enabled)
+ return;
+
+ m_listItemCaching = enabled;
+
+ const int itemCount = m_layout->count();
+
+ for (int i = 0; i < itemCount; ++i)
+ setListItemCaching(enabled, i);
+}
+#endif
+
+/*virtual*/
+void ListItemContainer::adjustVisibleContainerSize(const QSizeF &size)
+{
+ m_layout->setPreferredWidth(size.width());
+}
+
+/*virtual*/
+void ListItemContainer::addItemToVisibleLayout(int index, AbstractViewItem *item)
+{
+ m_layout->insertItem(index,item);
+
+#if (QT_VERSION >= 0x040600)
+ setListItemCaching(m_listItemCaching, index);
+#endif
+}
+
+/*virtual*/
+void ListItemContainer::removeItemFromVisibleLayout(AbstractViewItem *item)
+{
+ m_layout->removeItem(item);
+
+#if (QT_VERSION >= 0x040600)
+ RecycledListItem *recycledItem = static_cast<RecycledListItem*>(item);
+
+ if (!recycledItem)
+ return;
+
+ ListItem *listItem = recycledItem->item();
+
+ setListItemCaching(false, listItem);
+#endif
+}
+
+/*virtual*/
+int ListItemContainer::maxItemCountInItemBuffer() const
+{
+ int count = AbstractItemContainer::maxItemCountInItemBuffer();
+
+ if (count > 0) {
+ int currentItemCount = m_items.count();
+ qreal heightOfOneItem = 0;
+ if (currentItemCount > 0)
+ {
+ heightOfOneItem = m_layout->effectiveSizeHint(Qt::PreferredSize).height() / currentItemCount;
+ }
+ int guess = 0;
+ if( heightOfOneItem <= 0 ) {
+ if (m_prototype) {
+ heightOfOneItem = m_prototype->effectiveSizeHint(Qt::PreferredSize).height();
+ }
+ else
+ heightOfOneItem = 50; // TODO magic number, do we have better guess if prototype is not set?
+ }
+ if (heightOfOneItem > 0) {
+ guess = qCeil(m_itemView->boundingRect().height() / heightOfOneItem) + m_bufferSize;
+
+ if (guess < currentItemCount) {
+ if( guess > currentItemCount-2) { // TODO magic number here, Can we use buffer size?
+ guess = currentItemCount;
+ }
+ }
+ }
+ count = qMin(guess, count);
+ }
+ return count;
+}
+
+#if (QT_VERSION >= 0x040600)
+void ListItemContainer::setListItemCaching(const bool enabled, const int index)
+{
+ RecycledListItem *recycledItem = static_cast<RecycledListItem*>(m_layout->itemAt(index));
+
+ if (!recycledItem)
+ return;
+
+ ListItem *listItem = recycledItem->item();
+
+ if (!listItem)
+ return;
+
+ setListItemCaching(enabled, listItem);
+}
+
+void ListItemContainer::setListItemCaching(const bool enabled, ListItem *listItem)
+{
+ if (!listItem)
+ return;
+
+ // Deletes the effect.
+ listItem->setGraphicsEffect(0);
+
+ if (enabled) {
+ ListItemCache* cache = new ListItemCache;
+ Q_ASSERT(!listItem->graphicsEffect());
+ listItem->setGraphicsEffect(cache);
+ }
+}
+#endif
+
+
+void ListItemContainer::setTwoColumns(const bool twoColumns)
+{
+ AbstractItemContainer::setTwoColumns(twoColumns);
+
+ if (!m_layout->isActivated())
+ m_layout->activate();
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h
new file mode 100644
index 0000000000..80d6d25131
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listitemcontainer.h
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef LISTITEMCONTAINER_H
+#define LISTITEMCONTAINER_H
+
+#include <QGraphicsWidget>
+#include <QColor>
+
+#include "abstractitemcontainer.h"
+
+class QGraphicsLinearLayout;
+class AbstractViewItem;
+class ListItemCache;
+class ListItem;
+class ItemRecyclingList;
+
+class ListItemContainer : public AbstractItemContainer
+{
+ Q_OBJECT
+
+public:
+ ListItemContainer(int bufferSize, ItemRecyclingList *view, QGraphicsWidget *parent=0);
+ virtual ~ListItemContainer();
+
+ virtual void setTwoColumns(const bool twoColumns);
+
+#if (QT_VERSION >= 0x040600)
+ bool listItemCaching() const;
+ void setListItemCaching(const bool enabled);
+ virtual void setListItemCaching(const bool enabled, const int index);
+#endif
+
+protected:
+
+ virtual void addItemToVisibleLayout(int index, AbstractViewItem *item);
+ virtual void removeItemFromVisibleLayout(AbstractViewItem *item);
+
+ virtual void adjustVisibleContainerSize(const QSizeF &size);
+ virtual int maxItemCountInItemBuffer() const;
+
+private:
+ Q_DISABLE_COPY(ListItemContainer)
+
+ ItemRecyclingList *m_view;
+ QGraphicsLinearLayout *m_layout;
+#if (QT_VERSION >= 0x040600)
+ void setListItemCaching(const bool enabled, ListItem *listItem);
+ bool m_listItemCaching;
+#endif
+};
+
+
+#endif // LISTITEMCONTAINER_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp
new file mode 100644
index 0000000000..8b90acfc8c
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.cpp
@@ -0,0 +1,146 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "listmodel.h"
+#include "recycledlistitem.h"
+
+ListModel::ListModel(QObject *parent)
+ : QAbstractListModel(parent)
+ , m_items()
+{
+
+}
+
+ListModel::~ListModel()
+{
+ qDeleteAll(m_items);
+ m_items.clear();
+}
+
+int ListModel::rowCount(const QModelIndex &parent) const
+{
+ if (parent.isValid())
+ return 0;
+ return m_items.count();
+}
+
+QVariant ListModel::data(const QModelIndex &index, int role) const
+{
+ if (!index.isValid())
+ return QVariant();
+
+ if (index.row() >= m_items.size() || index.row() < 0)
+ return QVariant();
+
+ switch (role)
+ {
+ case Qt::DisplayRole:
+ return QVariant::fromValue(m_items.at(index.row())->data(role));
+ default:
+ return QVariant();
+ }
+}
+
+bool ListModel::setData(const QModelIndex &index, const QVariant &value, int role)
+{
+ // TODO implement if we like to edit list items
+ Q_UNUSED(index)
+ Q_UNUSED(value)
+ Q_UNUSED(role)
+ return false;
+}
+
+void ListModel::clear()
+{
+ m_items.clear();
+ reset();
+}
+
+QModelIndex ListModel::index(int row, int column, const QModelIndex &parent) const
+{
+ if (hasIndex(row, column, parent))
+ return createIndex(row, column, m_items.at(row));
+
+ return QModelIndex();
+}
+
+void ListModel::insert(int row, RecycledListItem *item)
+{
+ if (item)
+ item->setModel(this);
+ if (!item || m_items.contains(item) ) {
+ return;
+ }
+ if (row < 0)
+ row = 0;
+ else if (row > m_items.count())
+ row = m_items.count();
+ beginInsertRows(QModelIndex(), row, row);
+ m_items.insert(row, item);
+ endInsertRows();
+}
+
+void ListModel::appendRow(RecycledListItem *item)
+{
+ if (!item) return;
+ item->setModel(this);
+ insert(rowCount(),item);
+}
+
+RecycledListItem *ListModel::item(const int row) const
+{
+ if (row < 0 || row > m_items.count())
+ return 0;
+ return m_items.at(row);
+}
+
+RecycledListItem *ListModel::takeItem(const int row)
+{
+ if (row < 0 || row >= m_items.count())
+ return 0;
+
+ beginRemoveRows(QModelIndex(), row, row);
+ RecycledListItem *item = m_items.takeAt(row);
+ endRemoveRows();
+
+ return item;
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h
new file mode 100644
index 0000000000..87da1f1017
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listmodel.h
@@ -0,0 +1,82 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef LISTMODEL_H
+#define LISTMODEL_H
+
+#include <QAbstractListModel>
+
+class RecycledListItem;
+class ListItemCache;
+
+class ListModel : public QAbstractListModel
+{
+ Q_OBJECT
+
+public:
+
+ ListModel(QObject *parent = 0);
+ ~ListModel();
+
+public:
+
+ int rowCount(const QModelIndex &parent = QModelIndex()) const;
+
+ QVariant data(const QModelIndex &index, int role = Qt::DisplayRole ) const;
+ bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
+
+ QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
+
+ void insert(const int row, RecycledListItem *item);
+ void appendRow(RecycledListItem *item);
+
+ void clear();
+
+ RecycledListItem *item(const int row) const;
+
+ RecycledListItem *takeItem(const int row);
+
+private:
+ Q_DISABLE_COPY(ListModel)
+ QList<RecycledListItem *> m_items;
+};
+
+#endif // LISTMODEL_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp
new file mode 100644
index 0000000000..bf9369c0a1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.cpp
@@ -0,0 +1,132 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsSceneResizeEvent>
+#include <QGraphicsGridLayout>
+#include <QGraphicsLinearLayout>
+#include <QTimer>
+#include "listwidget.h"
+
+ListWidget::ListWidget(QGraphicsWidget * parent)
+ : GvbWidget(parent),
+ m_layout(new QGraphicsLinearLayout(Qt::Vertical)),
+ m_listView(new SimpleListView(this))
+{
+ //listView->setViewport(listView->content());
+ //listView->content()->setParentItem(listView);
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ setContentsMargins(0,0,0,0);
+ m_layout->setContentsMargins(0,0,0,0);
+ m_listView->setContentsMargins(0,0,0,0);
+ m_layout->addItem(m_listView);
+ setLayout(m_layout);
+
+ m_scroller.setScrollable(m_listView);
+ m_listView->installEventFilter(&m_scroller);
+ m_listView->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+}
+
+ListWidget::~ListWidget()
+{
+
+}
+
+void ListWidget::addItem(QGraphicsWidget *item)
+{
+ m_listView->addItem(item);
+}
+
+void ListWidget::insertItem(int index, QGraphicsWidget *item)
+{
+ m_listView->insertItem(index, item);
+}
+
+QGraphicsWidget* ListWidget::takeItem(int row)
+{
+ return m_listView->takeItem(row);
+}
+
+QGraphicsWidget* ListWidget::itemAt(int row)
+{
+ return m_listView->itemAt(row);
+}
+
+/* virtual */
+void ListWidget::resizeEvent( QGraphicsSceneResizeEvent * event )
+{
+ QGraphicsWidget::resizeEvent(event);
+}
+
+int ListWidget::itemCount() const
+{
+ if (m_listView)
+ return m_listView->itemCount();
+ return 0;
+}
+
+ScrollBar* ListWidget::verticalScrollBar() const
+{
+ if (m_listView)
+ return m_listView->verticalScrollBar();
+ return 0;
+}
+
+#if (QT_VERSION >= 0x040600)
+bool ListWidget::listItemCaching() const
+{
+ return m_listView->listItemCaching();
+}
+
+void ListWidget::setListItemCaching(bool enable)
+{
+ m_listView->setListItemCaching(enable);
+}
+#endif
+
+void ListWidget::setTwoColumns(const bool twoColumns)
+{
+ m_listView->setTwoColumns(twoColumns);
+}
+
+bool ListWidget::twoColumns()
+{
+ return m_listView->twoColumns();
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h
new file mode 100644
index 0000000000..bcc15875de
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/listwidget.h
@@ -0,0 +1,87 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef LISTWIDGET_H
+#define LISTWIDGET_H
+
+#include <QGraphicsWidget>
+#include "simplelistview.h"
+#include "scroller.h"
+#include "gvbwidget.h"
+
+class AbstractViewItem;
+class QGraphicsSceneResizeEvent;
+class QGraphicsGridLayout;
+class QGraphicsLinearLayout;
+
+class ListWidget : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+ ListWidget(QGraphicsWidget * parent = 0);
+ virtual ~ListWidget();
+ void addItem(QGraphicsWidget *item);
+ void insertItem(int index, QGraphicsWidget *item);
+ QGraphicsWidget* takeItem(int row);
+ QGraphicsWidget* itemAt(int row);
+ int itemCount() const;
+#if (QT_VERSION >= 0x040600)
+ bool listItemCaching() const;
+ void setListItemCaching(bool enable);
+#endif
+ ScrollBar* verticalScrollBar() const;
+
+ void setTwoColumns(const bool twoColumns);
+ bool twoColumns();
+
+protected:
+ virtual void resizeEvent( QGraphicsSceneResizeEvent * event );
+
+private:
+ Q_DISABLE_COPY(ListWidget)
+
+ QGraphicsLinearLayout *m_layout;
+ SimpleListView *m_listView;
+ Scroller m_scroller;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp
new file mode 100644
index 0000000000..5b42c0a2dd
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.cpp
@@ -0,0 +1,344 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QApplication>
+#include <QGraphicsLinearLayout>
+#ifndef QT_NO_OPENGL
+#include <QGLWidget>
+#endif
+#include <QObject>
+
+#include "button.h"
+#include "label.h"
+#include "menu.h"
+#include "topbar.h"
+#include "backgrounditem.h"
+#include "theme.h"
+#include "mainview.h"
+#include "gvbwidget.h"
+
+MainView::MainView(const bool enableOpenGL, const bool outputFps, const bool imageRendering, QWidget *parent)
+ : QGraphicsView(parent)
+ , m_scene(0)
+ , m_mainLayout(0)
+ , m_mainWidget(0)
+ , m_testWidget(0)
+ , m_imageBasedRendering(imageRendering)
+ , m_pixmapToRender(0)
+ , m_OutputFps(outputFps)
+ , m_fpsUpdated()
+ , m_Fpss()
+ , m_angle(0)
+ , m_enableOpenGL(enableOpenGL)
+{
+ construct();
+}
+
+MainView::~MainView()
+{
+ if (!m_scene->parent())
+ delete m_scene;
+
+ delete m_pixmapToRender;
+}
+
+void MainView::setTestWidget(QGraphicsWidget *testWidget)
+{
+ if (!testWidget)
+ return;
+
+ if (m_testWidget) {
+ m_mainLayout->removeItem(m_testWidget);
+ if (!m_testWidget->parent() && !m_testWidget->parentLayoutItem())
+ delete m_testWidget;
+ }
+ m_testWidget = testWidget;
+ m_mainLayout->addItem(m_testWidget);
+ resizeContent(size());
+}
+
+QGraphicsWidget *MainView::takeTestWidget()
+{
+ if (m_testWidget) {
+ m_mainLayout->removeItem(m_testWidget);
+ QGraphicsWidget *tmp = m_testWidget;
+ m_testWidget = 0;
+ return tmp;
+ }
+ return 0;
+}
+
+QGraphicsWidget *MainView::testWidget()
+{
+ return m_testWidget;
+}
+
+void MainView::setImageBasedRendering(const bool imageBasedRendering)
+{
+ m_imageBasedRendering = imageBasedRendering;
+ delete m_pixmapToRender;
+ m_pixmapToRender = 0;
+ viewport()->update();
+}
+
+bool MainView::imageBasedRendering() const
+{
+ return m_imageBasedRendering;
+}
+
+qreal MainView::fps()
+{
+ if (m_Fpss.count() <= 0)
+ updateFps();
+
+ if (m_Fpss.count() <= 0)
+ return 0.0;
+
+ qreal sum = 0;
+ int count = m_Fpss.count();
+ for (int i = 0; i<count; ++i)
+ sum += m_Fpss.at(i);
+ m_Fpss.clear();
+ fpsReset();
+ return sum/qreal(count);
+}
+
+void MainView::fpsReset()
+{
+ m_frameCount = 0;
+ m_fpsFirstTs.start();
+ m_fpsLatestTs = m_fpsFirstTs;
+ m_fpsUpdated.start();
+}
+
+void MainView::rotateContent(int angle)
+{
+ bool portrait = ((m_angle+angle)%90 == 0) && ((m_angle+angle)%180 != 0);
+ bool landscape = ((m_angle+angle)%180 == 0);
+ if (!portrait && !landscape)
+ return;
+
+ m_angle = (m_angle + angle)%360;
+
+ rotate(angle);
+
+ resizeContent(size());
+}
+
+int MainView::rotationAngle() const
+{
+ return m_angle;
+}
+
+void MainView::resizeContent(const QSize &s)
+{
+ QSizeF l_size(s);
+ QSizeF p_size(l_size.height(), l_size.width());
+ bool portrait = (m_angle%90 == 0) && (m_angle%180 != 0);
+ if (portrait) {
+ m_mainWidget->resize(p_size);
+ m_backGround->resize(p_size);
+ }
+ else {
+ m_mainWidget->resize(l_size);
+ m_backGround->resize(l_size);
+ }
+ m_menu->setPos(m_topBar->getStatusBarLocation());
+ setSceneRect(QRectF(m_mainWidget->pos(), m_mainWidget->size()));
+}
+
+void MainView::resizeEvent(QResizeEvent * event)
+{
+ QGraphicsView::resizeEvent(event);
+ resizeContent(event->size());
+}
+
+void MainView::paintEvent (QPaintEvent *event)
+{
+ if (m_imageBasedRendering) {
+ if (!m_pixmapToRender)
+ m_pixmapToRender = new QPixmap(size());
+
+ if (m_pixmapToRender->size() != size()) {
+ delete m_pixmapToRender;
+ m_pixmapToRender = new QPixmap(size());
+ }
+ QPainter p(m_pixmapToRender);
+ render(&p);
+ p.end();
+ }
+ else {
+ QGraphicsView::paintEvent(event);
+ }
+
+ if (!m_OutputFps)
+ emit repainted();
+
+ m_frameCount++;
+ m_fpsLatestTs.start();
+ if(m_fpsUpdated.elapsed() > 2000) {
+ updateFps();
+ m_fpsUpdated.start();
+ }
+}
+
+void MainView::keyPressEvent(QKeyEvent *event)
+{
+ if (event->key() == Qt::Key_F) {
+ if (isFullScreen())
+ showNormal();
+ else
+ showFullScreen();
+ }
+
+ //S60 3.x specific
+ if(m_menu->menuVisible()) {
+ m_menu->keyPressEvent(event);
+ return;
+ }
+
+ if(event->key() == 16777235 ) { //Up Arrow
+ GvbWidget* widget = qobject_cast<GvbWidget*>(m_testWidget);
+ if(widget)
+ widget->keyPressEvent(event);
+ }
+
+ if(event->key() == 16777237 ) { //Down Arrow
+ GvbWidget* widget = qobject_cast<GvbWidget*>(m_testWidget);
+ if(widget)
+ widget->keyPressEvent(event);
+ }
+
+ if(event->key() == 17825792 ) { //LSK
+ if(!m_menu->menuVisible())
+ m_menu->menuShowHide();
+ }
+
+ if(event->key() == 17825793 ) { //RSK
+ QApplication::quit();
+ }
+}
+
+void MainView::construct()
+{
+ m_scene = new QGraphicsScene;
+
+#ifndef QT_NO_OPENGL
+ if (m_enableOpenGL) {
+ qDebug() << "OpenGL enabled";
+ m_scene->setSortCacheEnabled(false);
+ setViewport(new QGLWidget);
+
+ // Qt doc says: This is the preferred update mode for
+ // viewports that do not support partial updates, such as QGLWidget...
+ setViewportUpdateMode(QGraphicsView::FullViewportUpdate);
+ } else
+#endif
+ setViewportUpdateMode(QGraphicsView::BoundingRectViewportUpdate);
+
+ setScene(m_scene);
+ m_scene->setItemIndexMethod(QGraphicsScene::NoIndex);
+
+ //setCacheMode(QGraphicsView::CacheBackground);
+ setAlignment(Qt::AlignLeft | Qt::AlignTop);
+
+ // Turn off automatic background
+ setAttribute(Qt::WA_OpaquePaintEvent);
+ setAttribute(Qt::WA_NoBackground);
+ setAttribute(Qt::WA_NoSystemBackground);
+ setAutoFillBackground(false);
+
+ //Background
+ m_backGround = new BackgroundItem("background.svg");
+ m_scene->addItem(m_backGround);
+ m_backGround->setZValue(0);
+
+ //Menu
+ m_menu = new Menu(this);
+ m_scene->addItem(m_menu); //Add menu to the scene directly
+ m_menu->setZValue(10); //Bring to front
+
+ m_mainLayout = new QGraphicsLinearLayout(Qt::Vertical);
+ m_mainLayout->setContentsMargins(0,0,0,0);
+ m_mainLayout->setSpacing(0);
+
+ m_mainWidget = new QGraphicsWidget;
+ m_mainWidget->setLayout(m_mainLayout);
+ m_mainWidget->setZValue(1);
+ m_scene->addItem(m_mainWidget);
+
+ //Topbar
+ m_topBar = new TopBar(this, 0);
+ m_mainLayout->addItem(m_topBar);
+ m_topBar->setZValue(1);
+ connect(m_topBar, SIGNAL(clicked(bool)), m_menu, SLOT(menuShowHide()));
+
+ setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ setContentsMargins(0,0,0,0);
+ setViewportMargins(0,0,0,0);
+ setFrameShape(QFrame::NoFrame);
+
+ fpsReset();
+ m_fpsUpdated.start();
+}
+
+void MainView::updateFps()
+{
+ int msecs = m_fpsFirstTs.msecsTo(m_fpsLatestTs);
+ qreal fps = 0;
+ if (msecs > 0) {
+ fps = m_frameCount * 1000.0 / msecs;
+
+ if (m_OutputFps)
+ qDebug() << "FPS: " << fps;
+
+ m_Fpss.append(fps);
+ }
+ m_fpsFirstTs = m_fpsLatestTs;
+ m_frameCount = 0;
+}
+
+Menu *MainView::menu()
+{
+ return m_menu;
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h
new file mode 100644
index 0000000000..ecb5cb4758
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/mainview.h
@@ -0,0 +1,123 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __MAINWINDOW_H__
+#define __MAINWINDOW_H__
+
+#include <QGraphicsView>
+#include <QTime>
+#include <QTimer>
+
+#include "settings.h"
+
+class QGraphicsScene;
+class QGraphicsLinearLayout;
+class QResizeEvent;
+class Label;
+class Menu;
+class BackgroundItem;
+class TopBar;
+
+class MainView : public QGraphicsView {
+
+Q_OBJECT
+
+public:
+ MainView(const bool enableOpenGL, const bool outputFps, const bool imageBasedRendering = false, QWidget *parent = 0);
+ ~MainView();
+
+ void setTestWidget(QGraphicsWidget *testWidget);
+ QGraphicsWidget *takeTestWidget();
+ QGraphicsWidget *testWidget();
+
+ qreal fps();
+ void fpsReset();
+ void setImageBasedRendering(const bool imageBasedRendering);
+ bool imageBasedRendering() const;
+ Menu *menu();
+ int rotationAngle() const;
+
+signals:
+ void repainted();
+
+public slots:
+ void rotateContent(int angle);
+
+protected:
+
+ virtual void resizeEvent(QResizeEvent * event);
+ virtual void paintEvent(QPaintEvent *event);
+ virtual void keyPressEvent(QKeyEvent *event);
+ virtual void wheelEvent(QWheelEvent *event) { Q_UNUSED (event); };
+
+private slots:
+ void updateFps();
+
+private:
+ void construct();
+ void resizeContent(const QSize &s);
+
+private:
+ Q_DISABLE_COPY(MainView)
+
+ QGraphicsScene *m_scene;
+ QGraphicsLinearLayout *m_mainLayout;
+ QGraphicsWidget *m_mainWidget;
+ QGraphicsWidget *m_testWidget;
+ Menu* m_menu;
+ BackgroundItem* m_backGround;
+ TopBar* m_topBar;
+
+ bool m_imageBasedRendering;
+ QPixmap *m_pixmapToRender;
+ // Used for FPS
+ int m_frameCount;
+ QTime m_fpsFirstTs;
+ QTime m_fpsLatestTs;
+ bool m_OutputFps;
+ QTime m_fpsUpdated;
+ QList<qreal> m_Fpss;
+
+ int m_angle;
+ bool m_enableOpenGL;
+};
+
+#endif //__MAINWINDOW_H__
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp
new file mode 100644
index 0000000000..48dff585c0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.cpp
@@ -0,0 +1,202 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsView>
+#include <QGraphicsWidget>
+#include <QGraphicsLinearLayout>
+#include <QList>
+
+#include "button.h"
+#include "menu.h"
+#include "themeevent.h"
+#include "theme.h"
+
+static const int MinMenuItemWidth = 150;
+static const int MinMenuItemHeight = 40;
+
+Menu::Menu(QGraphicsView* parent) : QGraphicsWidget(),
+ m_Parent(parent), m_Layout(new QGraphicsLinearLayout(Qt::Vertical, this)),
+ m_ButtonContainer(0), m_isMenuVisible(false), m_currentSelectedIndex(-1)
+{
+ init();
+}
+
+Menu::~Menu()
+{
+ for(int i = 0; i < m_ButtonContainer->count(); i++ ) {
+ delete m_ButtonContainer->at(i);
+ }
+ m_ButtonContainer->clear();
+
+ delete m_ButtonContainer;
+ m_ButtonContainer = 0;
+}
+
+void Menu::init()
+{
+ m_ButtonContainer = new QList<Button*>;
+
+ m_Layout->setContentsMargins(0,0,0,0);
+ m_Layout->setSpacing(0);
+
+ setMinimumWidth(150);
+
+ setLayout(m_Layout);
+
+ connect(Theme::p(), SIGNAL(themeChanged()), this, SLOT(themeChange()));
+}
+
+Button* Menu::addMenuItem(const QString itemName, QObject* receiver, const char* member)
+{
+ Button* button = new Button(itemName ,this);
+ button->setVisible(m_isMenuVisible);
+ connect(button, SIGNAL(clicked(bool)), receiver, member);
+ connect(button, SIGNAL(clicked(bool)), this, SLOT(menuShowHide()));
+ m_ButtonContainer->append(button);
+ button->setMinimumWidth(MinMenuItemWidth);
+ button->setMinimumHeight(MinMenuItemHeight);
+ return button;
+}
+
+void Menu::menuShowHide()
+{
+ m_isMenuVisible ? menuHide() : menuShow();
+ m_isMenuVisible = !m_isMenuVisible;
+}
+
+void Menu::menuShow()
+{
+ for(int i = 0; i < m_ButtonContainer->count(); i++) {
+ Button* button = m_ButtonContainer->at(i);
+ m_Layout->addItem(button);
+ button->show();
+ }
+}
+
+void Menu::menuHide()
+{
+ for(int i = 0; i < m_ButtonContainer->count(); i++) {
+ Button* button = m_ButtonContainer->at(i);
+ button->select(false);
+ button->hide();
+ m_Layout->removeItem(button);
+ }
+ m_currentSelectedIndex = -1;
+}
+
+void Menu::themeChange()
+{
+ QPixmap pixmap = Theme::p()->pixmap("status_field_middle.svg",
+ QSize(MinMenuItemWidth, MinMenuItemHeight));
+
+ for(int i = 0; i < m_ButtonContainer->count(); i++) {
+ Button* button = m_ButtonContainer->at(i);
+ button->setBackground(pixmap);
+ }
+ update();
+}
+
+void Menu::keyPressEvent(QKeyEvent *event)
+{
+ //S60 3.x specific
+ if(event->key() == 16777235 ) { //Up Arrow
+ if(m_currentSelectedIndex > 0) { //One step up
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(false);
+ button->update();
+
+ m_currentSelectedIndex--;
+ button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(true);
+ button->update();
+ }
+ else { //Jump to bottom
+ if(m_currentSelectedIndex >= 0) {
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(false);
+ button->update();
+ }
+ m_currentSelectedIndex = m_ButtonContainer->count() -1;
+ if(m_currentSelectedIndex >= 0) {
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(true);
+ button->update();
+ }
+ }
+ }
+
+ if(event->key() == 16777237 ) { //Down Arrow
+ if (m_currentSelectedIndex < m_ButtonContainer->count()-1) { //One step down
+ if(m_currentSelectedIndex >= 0) {
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(false);
+ button->update();
+ }
+ m_currentSelectedIndex++;
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(true);
+ button->update();
+ }
+ else { //Jump to top
+ if(m_currentSelectedIndex >= 0) {
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(false);
+ button->update();
+ m_currentSelectedIndex = 0;
+ button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->select(true);
+ button->update();
+ }
+ }
+ }
+
+ if(event->key() == 17825792 || event->key() == 16842752 || //LSK, center key or enter
+ event->key() == 16777221 ) {
+ if(m_currentSelectedIndex >= 0) {
+ Button* button = m_ButtonContainer->at(m_currentSelectedIndex);
+ button->click();
+ }
+ }
+
+ if(event->key() == 17825793 ) { //RSK
+ menuShowHide();
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h
new file mode 100644
index 0000000000..1c75f461bf
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/menu.h
@@ -0,0 +1,84 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __MENU_H__
+#define __MENU_H__
+
+#include <QGraphicsWidget>
+#include <QList>
+
+class QGraphicsView;
+class QGraphicsLinearLayout;
+class Button;
+
+class Menu : public QGraphicsWidget
+{
+ Q_OBJECT
+public:
+ Menu(QGraphicsView* parent);
+ ~Menu();
+
+public:
+ Button* addMenuItem(const QString itemName, QObject* receiver, const char* member);
+ inline bool menuVisible() { return m_isMenuVisible; }
+ virtual void keyPressEvent(QKeyEvent *event);
+
+public slots:
+ void themeChange();
+
+public slots:
+ void menuShowHide();
+
+private:
+ void init();
+ void menuShow();
+ void menuHide();
+
+private:
+ Q_DISABLE_COPY(Menu)
+ QGraphicsView* m_Parent;
+ QGraphicsLinearLayout* m_Layout;
+ QList<Button*>* m_ButtonContainer;
+ bool m_isMenuVisible;
+ int m_currentSelectedIndex;
+};
+
+#endif // __MENU_H__
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp
new file mode 100644
index 0000000000..9645c89370
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.cpp
@@ -0,0 +1,147 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsGridLayout>
+#include <QDebug>
+
+#include "recycledlistitem.h"
+#include "listmodel.h"
+
+static const int MinItemHeight = 70;
+static const int MinItemWidth = 276;
+
+RecycledListItem::RecycledListItem(QGraphicsWidget *parent)
+ : AbstractViewItem(parent),
+ m_item(new ListItem(this)),
+ m_item2(0),
+ m_model(0),
+ m_layout(new QGraphicsGridLayout())
+{
+ m_item->setMinimumWidth(MinItemWidth);
+ setContentsMargins(0,0,0,0);
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ m_layout->addItem(m_item, 0, 0);
+ setLayout(m_layout);
+ m_layout->setContentsMargins(0,0,0,0);
+ m_layout->setSpacing(0);
+ m_layout->setHorizontalSpacing(0.0);
+ m_layout->setVerticalSpacing(0.0);
+}
+
+RecycledListItem::~RecycledListItem()
+{
+}
+
+void RecycledListItem::setModel(QAbstractItemModel *model)
+{
+ m_model = model;
+}
+
+/*virtual*/
+AbstractViewItem *RecycledListItem::newItemInstance()
+{
+ RecycledListItem* item = new RecycledListItem();
+ return item;
+}
+
+QSizeF RecycledListItem::effectiveSizeHint(Qt::SizeHint which, const QSizeF &constraint) const
+{
+ QSizeF s = m_item->effectiveSizeHint(which,constraint);
+ if (m_item2)
+ s.setWidth(s.width()*2);
+ if (s.height()<MinItemHeight)
+ s.setHeight(MinItemHeight);
+ return s;
+}
+
+QVariant RecycledListItem::data(int role) const
+{
+ if (m_item && role == Qt::DisplayRole)
+ return m_item->data();
+
+ return QVariant();
+}
+
+void RecycledListItem::setData(const QVariant &value, int role)
+{
+ if (m_item && role == Qt::DisplayRole) {
+ m_item->setData(value);
+ if (m_item2) {
+ m_item2->setData(value);
+ }
+ }
+}
+
+/*virtual*/
+void RecycledListItem::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ AbstractViewItem::resizeEvent(event);
+}
+
+void RecycledListItem::updateItemContents()
+{
+ AbstractViewItem::updateItemContents();
+ if (m_model && m_index.isValid())
+ setData(m_model->data(m_index,Qt::DisplayRole), Qt::DisplayRole);
+}
+
+void RecycledListItem::setTwoColumns(const bool enabled)
+{
+ if (m_item2 && enabled)
+ return;
+
+ if (enabled) {
+ m_item2 = new ListItem();
+ m_item2->setMinimumWidth(MinItemWidth);
+ m_layout->addItem(m_item2, 0, 1);
+ updateItemContents();
+ }
+ else {
+ if (m_layout->count() > 1) {
+ m_layout->removeAt(1);
+ }
+ delete m_item2;
+ m_item2 = 0;
+ }
+
+ if (!m_layout->isActivated())
+ m_layout->activate();
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h
new file mode 100644
index 0000000000..2665683447
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/recycledlistitem.h
@@ -0,0 +1,83 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef RECYCLEDLISTITEM_H
+#define RECYCLEDLISTITEM_H
+
+#include "abstractviewitem.h"
+
+class ListItem;
+class QGraphicsWidget;
+class QGraphicsGridLayout;
+
+class RecycledListItem : public AbstractViewItem
+{
+ Q_OBJECT
+public:
+ RecycledListItem(QGraphicsWidget *parent=0);
+ virtual ~RecycledListItem();
+
+ virtual void setModel(QAbstractItemModel *model);
+
+ virtual AbstractViewItem *newItemInstance();
+ virtual void updateItemContents();
+
+ virtual QVariant data(int role) const;
+ virtual void setData(const QVariant &value, int role = Qt::DisplayRole);
+
+ ListItem *item() { return m_item; }
+
+ void setTwoColumns(const bool enabled);
+
+protected:
+ virtual QSizeF effectiveSizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const;
+ virtual void resizeEvent(QGraphicsSceneResizeEvent *event);
+
+private:
+ Q_DISABLE_COPY(RecycledListItem)
+
+ ListItem *m_item;
+ ListItem *m_item2;
+ QAbstractItemModel *m_model;
+ QGraphicsGridLayout *m_layout;
+};
+
+#endif // RECYCLEDLISTITEM_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h
new file mode 100644
index 0000000000..dea6aae169
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/resourcemoninterface.h
@@ -0,0 +1,97 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __RESOURCEMONINTERFACE_H__
+#define __RESOURCEMONINTERFACE_H__
+
+class ResourceMonitorInterface
+{
+public:
+ struct MemoryAllocation
+ {
+ int allocatedInAppThread;
+ int numberOfAllocatedCellsInAppThread;
+ int availableMemoryInAppThreadHeap;
+ qint64 availableMemoryInSystem;
+ qint64 totalMemoryInSystem;
+ MemoryAllocation() :
+ allocatedInAppThread(0),
+ numberOfAllocatedCellsInAppThread(0),
+ availableMemoryInAppThreadHeap(0),
+ availableMemoryInSystem(0),
+ totalMemoryInSystem(0)
+ {}
+ };
+
+ struct CpuUsage
+ {
+ qreal systemUsage;
+ qreal appTreadUsage;
+ CpuUsage() :
+ systemUsage(0.0),
+ appTreadUsage(0.0)
+ {}
+ };
+
+public:
+ virtual ~ResourceMonitorInterface() {}
+
+public:
+ //for symbian, prepares the resource monitor for data capture, opens handle to ekern null
+ //thread and sets initial values
+ virtual bool Prepare(QString applicationThreadName) = 0;
+
+ //functions for CPU load and memory - Call Prepare before calling these
+ virtual CpuUsage CPULoad()=0;
+ virtual MemoryAllocation MemoryLoad()=0;
+
+ virtual void BeginMeasureMemoryLoad()=0;
+ virtual MemoryAllocation EndMeasureMemoryLoad()=0;
+
+ virtual void BeginMeasureCPULoad()=0;
+ virtual CpuUsage EndMeasureCPULoad()=0;
+
+};
+
+Q_DECLARE_INTERFACE(ResourceMonitorInterface,
+ "com.trolltech.Plugin.ResourceMonitorInterface/1.0");
+
+#endif //__RESOURCEMONINTERFACE_H__
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp
new file mode 100644
index 0000000000..71bfbb2757
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.cpp
@@ -0,0 +1,299 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsWidget>
+#include <QPainter>
+#include <QGraphicsSceneMouseEvent>
+#include <QDebug>
+
+#include "scrollbar.h"
+#include "theme.h"
+
+class ScrollBarPrivate {
+ Q_DECLARE_PUBLIC(ScrollBar)
+
+public:
+
+ ScrollBarPrivate(Qt::Orientation orientation, ScrollBar *scrollBar)
+ : orientation(orientation)
+ , sliderPosition(0.0)
+ , sliderSize(0.0)
+ , sliderDown(false)
+ , q_ptr(scrollBar)
+ {
+ construct();
+ }
+
+ void themeChange()
+ {
+ construct();
+ updateSlider();
+ }
+
+ void construct()
+ {
+ scrollerPixmap = Theme::p()->pixmap("scroll.svg");
+ scrollBarPixmap = Theme::p()->pixmap("scrollbar.svg");
+
+ if (orientation == Qt::Horizontal) {
+ scrollerPixmap = scrollerPixmap.transformed(QTransform().rotate(90));
+ scrollBarPixmap = scrollBarPixmap.transformed(QTransform().rotate(90));
+ }
+ }
+
+ void setSliderPosition(qreal pos)
+ {
+ if (pos < 0.0)
+ pos = 0.0;
+
+ if (pos > sliderSize)
+ pos = sliderSize;
+
+ sliderPosition = pos;
+
+ if (!qFuzzyCompare(pos, sliderPosition))
+ updateSlider();
+ }
+
+ void updateSlider()
+ {
+ QRectF oldSlider = slider;
+ slider = q_func()->boundingRect();
+
+ qreal x = 0;
+ qreal y = 0;
+ qreal w = scrollerPixmap.width();
+ qreal h = scrollerPixmap.height();
+
+ //Adjust the scrollBar in relation to the scroller
+
+ if (orientation == Qt::Horizontal) {
+ qreal scrollBarHeight = scrollBarPixmap.height();
+
+ if (h > scrollBarHeight) {
+ slider.setTop((h - scrollBarHeight)/2.0);
+ slider.setHeight(scrollBarHeight);
+ }
+ } else {
+ qreal scrollBarWidth = scrollBarPixmap.width();
+
+ if (w > scrollBarWidth) {
+ slider.setLeft((w - scrollBarWidth)/2.0);
+ }
+ slider.setWidth(scrollBarWidth);
+ }
+
+ if(oldSlider != slider && (slider.size().width() > 0 &&slider.size().height() > 0 )) {
+ scrollBarPixmap = Theme::p()->pixmap("scrollbar.svg", slider.size().toSize());
+ }
+ cursor = QRectF(x, y, w, h);
+
+ if (orientation == Qt::Horizontal) {
+ qreal dx = qreal(int(sliderPosition)) * (slider.width() - cursor.width()) / sliderSize;
+ cursor.translate(dx, 0.0);
+ } else {
+ qreal dy = qreal(int(sliderPosition)) * (slider.height() - cursor.height()) / sliderSize;
+ cursor.translate(0.0, dy);
+ }
+ }
+
+ Qt::Orientation orientation;
+ qreal sliderPosition;
+ qreal sliderSize;
+
+ QPointF pressPos;
+ bool sliderDown;
+
+ QRectF slider;
+ QRectF cursor;
+ QPixmap scrollerPixmap;
+ QPixmap scrollBarPixmap;
+
+ ScrollBar *q_ptr;
+};
+
+ScrollBar::ScrollBar(Qt::Orientation orientation, QGraphicsWidget *parent)
+ : QGraphicsWidget(parent)
+ , d_ptr(new ScrollBarPrivate(orientation, this))
+{
+ setSizePolicy(QSizePolicy::Fixed, QSizePolicy::MinimumExpanding);
+ setContentsMargins(0, 0, 0, 0);
+
+ connect(Theme::p(), SIGNAL(themeChanged()), this, SLOT(themeChange()));
+}
+
+ScrollBar::~ScrollBar()
+{
+ delete d_ptr;
+}
+
+qreal ScrollBar::sliderSize() const
+{
+ Q_D(const ScrollBar);
+ return d->sliderSize;
+}
+
+void ScrollBar::setSliderSize(const qreal s)
+{
+ Q_D(ScrollBar);
+ d->sliderSize = s;
+}
+
+void ScrollBar::setSliderPosition(qreal pos)
+{
+ Q_D(ScrollBar);
+
+ d->setSliderPosition(pos);
+ prepareGeometryChange();
+ emit sliderPositionChange(d->sliderPosition);
+}
+
+qreal ScrollBar::sliderPosition() const
+{
+ Q_D(const ScrollBar);
+ return d->sliderPosition;
+}
+
+bool ScrollBar::sliderDown() const
+{
+ Q_D(const ScrollBar);
+ return d->sliderDown;
+}
+
+void ScrollBar::paint(QPainter *painter,
+ const QStyleOptionGraphicsItem *option,
+ QWidget *widget)
+{
+ Q_D(ScrollBar);
+ Q_UNUSED(widget);
+ Q_UNUSED(option);
+
+ d->updateSlider();
+
+ QRect sliderRect = d->slider.toRect();
+ painter->drawPixmap(sliderRect.topLeft(), d->scrollBarPixmap);
+
+ QRect cursorRect = d->cursor.toRect();
+ painter->drawPixmap(cursorRect.topLeft(), d->scrollerPixmap);
+}
+
+QSizeF ScrollBar::sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint) const
+{
+ Q_D(const ScrollBar);
+
+ QSizeF s;
+
+ if (d->orientation == Qt::Horizontal)
+ s = QSizeF(-1, qMax(d->scrollBarPixmap.height(), d->scrollerPixmap.height()));
+ else
+ s = QSizeF(qMax(d->scrollBarPixmap.width(), d->scrollerPixmap.width()), -1);
+
+ switch (which)
+ {
+ case Qt::MinimumSize:
+ return s;
+
+ case Qt::MaximumSize:
+ return s;
+
+ default:
+ return QGraphicsWidget::sizeHint(which, constraint);
+ }
+}
+
+void ScrollBar::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_D(ScrollBar);
+
+ d->updateSlider();
+
+ if (d->cursor.contains(event->pos())) {
+ d->sliderDown = true;
+ d->pressPos = event->pos();
+ emit sliderPressed();
+ }
+}
+
+void ScrollBar::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_D(ScrollBar);
+ Q_UNUSED(event);
+
+ d->sliderDown = false;
+}
+
+void ScrollBar::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_D(ScrollBar);
+
+ if (!d->sliderDown)
+ return;
+
+ if (d->orientation == Qt::Horizontal) {
+ qreal f = (event->pos().x() - d->pressPos.x())/(d->slider.width() - d->cursor.width());
+ qreal dx = f * d->sliderSize;
+
+ d->setSliderPosition(d->sliderPosition + dx);
+ } else {
+ qreal f = (event->pos().y() - d->pressPos.y())/(d->slider.height() - d->cursor.height());
+ qreal dy = f * d->sliderSize;
+
+ d->setSliderPosition(d->sliderPosition + dy);
+ }
+
+ d->pressPos = event->pos();
+
+ prepareGeometryChange();
+ emit sliderPositionChange(d->sliderPosition);
+}
+
+void ScrollBar::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ QGraphicsWidget::resizeEvent(event);
+}
+
+void ScrollBar::themeChange()
+{
+ Q_D(ScrollBar);
+ d->themeChange();
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h
new file mode 100644
index 0000000000..076708d94c
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scrollbar.h
@@ -0,0 +1,97 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SCROLLBAR_H
+#define SCROLLBAR_H
+
+#include <QGraphicsWidget>
+#include <QPixmap>
+
+class ScrollBarPrivate;
+
+class ScrollBar : public QGraphicsWidget
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(ScrollBar)
+
+public:
+
+ ScrollBar(Qt::Orientation orientation, QGraphicsWidget *parent=0);
+ virtual ~ScrollBar();
+
+public:
+
+ bool sliderDown() const;
+ qreal sliderPosition() const;
+ qreal sliderSize() const;
+ void setSliderSize(const qreal s);
+
+signals:
+
+ void sliderPressed();
+
+ void sliderPositionChange(qreal position);
+
+public slots:
+
+ void setSliderPosition(qreal pos);
+ void themeChange();
+
+private:
+
+ void paint(QPainter *painter,
+ const QStyleOptionGraphicsItem *option,
+ QWidget *widget);
+
+ QSizeF sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint = QSizeF()) const;
+
+ void mousePressEvent(QGraphicsSceneMouseEvent *event);
+ void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
+ void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+
+private:
+ Q_DISABLE_COPY(ScrollBar)
+ ScrollBarPrivate *d_ptr;
+};
+
+#endif // SCROLLBAR_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp
new file mode 100644
index 0000000000..1b8433f767
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.cpp
@@ -0,0 +1,305 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QScrollBar>
+#include <QEvent>
+#include <QGraphicsSceneMouseEvent>
+#include <QGraphicsView>
+#include <QDebug>
+
+#include "scroller.h"
+#include "scroller_p.h"
+#include "abstractscrollarea.h"
+#include "scrollbar.h"
+
+const int ScrollStep = 1;
+const int UpdateScrollingInterval = 55;
+const int UpdateScrollingSmoothInterval = 0;
+static const qreal MaxScrollingSpeed = 48.0;
+
+ScrollerPrivate::ScrollerPrivate(Scroller *scroller)
+ : m_scrollArea(0)
+ , m_scrollFactor(1.0)
+ , m_state(Stopped)
+ , q_ptr(scroller)
+ , m_eventViewport(0)
+{
+}
+
+ScrollerPrivate::~ScrollerPrivate()
+{
+}
+
+void ScrollerPrivate::stopScrolling()
+{
+ m_state = ScrollerPrivate::Started;
+ m_cursorPos = QCursor::pos();
+ m_speed = QPoint(0, 0);
+
+ if (m_scrollTimer.isActive())
+ m_scrollTimer.stop();
+}
+
+//Maps screen coordinates to scrollArea coordinates though current m_eventViewport widget
+QPointF ScrollerPrivate::mapToScrollArea(const QPoint &point)
+{
+ if (!m_scrollArea || !m_eventViewport)
+ return point;
+
+ QObject *vparent = m_eventViewport->parent();
+ if (!vparent)
+ return point;
+
+ QGraphicsView *view = qobject_cast<QGraphicsView*>(vparent);
+ if (!view)
+ return point;
+
+ QPoint pt = view->mapFromGlobal(point);
+ return m_scrollArea->mapFromScene(view->mapToScene(pt));
+}
+
+bool ScrollerPrivate::eventFilter(QObject *obj, QEvent *event)
+{
+ if (obj != m_scrollArea
+ || (event->type() != QEvent::GraphicsSceneMouseMove
+ && event->type() != QEvent::GraphicsSceneMousePress
+ && event->type() != QEvent::GraphicsSceneMouseRelease
+ /*&& event->type() != QEvent::GraphicsSceneKeyPressed
+ && event->type() != QEvent::GraphicsSceneKeyReleased*/))
+ return false;
+
+ QGraphicsSceneMouseEvent* mouseEvent =
+ static_cast<QGraphicsSceneMouseEvent*>(event);
+
+ m_eventViewport = mouseEvent->widget();
+
+ bool eventConsumed = false;
+
+ switch (m_state) {
+ case ScrollerPrivate::Stopped:
+ if (mouseEvent->type() == QEvent::GraphicsSceneMousePress &&
+ mouseEvent->buttons() == Qt::LeftButton) {
+ m_cursorPos = QCursor::pos();
+ m_speed = QPointF(0.0, 0.0);
+ m_state = Started;
+ }
+
+ eventConsumed = true;
+ break;
+
+ case ScrollerPrivate::Started:
+ if (mouseEvent->type() == QEvent::GraphicsSceneMouseMove) {
+ m_cursorPos = QCursor::pos();
+ m_state = ManualScrolling;
+
+ if (!m_scrollTimer.isActive())
+ m_scrollTimer.start(UpdateScrollingInterval);
+ else {
+ m_scrollTimer.stop();
+ m_scrollTimer.start(UpdateScrollingInterval);
+ }
+
+ } else if (mouseEvent->type() == QEvent::MouseButtonRelease) {
+ m_speed = QPoint(0, 0);
+ m_state = Stopped;
+
+ if (m_scrollTimer.isActive())
+ m_scrollTimer.stop();
+ }
+ eventConsumed = true;
+ break;
+
+ case ScrollerPrivate::ManualScrolling:
+ if (mouseEvent->type() == QEvent::GraphicsSceneMouseMove &&
+ m_scrollArea->viewport()->boundingRect().contains(mouseEvent->pos()) ) {
+
+ ScrollBar *hscroll = m_scrollArea->horizontalScrollBar();
+ ScrollBar *vscroll = m_scrollArea->verticalScrollBar();
+
+ QPointF d = m_scrollFactor * (mapToScrollArea(QCursor::pos()) - mapToScrollArea(m_cursorPos));
+
+ hscroll->setSliderPosition(hscroll->sliderPosition() - d.x());
+ vscroll->setSliderPosition(vscroll->sliderPosition() - d.y());
+
+ if (m_lastCursorTime.elapsed() > UpdateScrollingInterval) {
+ m_speed = mapToScrollArea(QCursor::pos()) - mapToScrollArea(m_cursorPos);
+ m_lastCursorTime.restart();
+ }
+
+ m_lastFrameTime.restart();
+
+ m_cursorPos = QCursor::pos();
+ } else if (mouseEvent->type() == QEvent::GraphicsSceneMouseRelease) {
+ m_state = AutoScrolling;
+ m_scrollSlowAccum = 0;
+ if (m_scrollTimer.isActive()) {
+ m_scrollTimer.stop();
+ m_scrollTimer.start(UpdateScrollingSmoothInterval);
+ }
+ }
+ eventConsumed = true;
+ break;
+
+ case ScrollerPrivate::AutoScrolling:
+ if (mouseEvent->type() == QEvent::GraphicsSceneMousePress) {
+ stopScrolling();
+ } else if (mouseEvent->type() == QEvent::MouseButtonRelease) {
+ m_state = Stopped;
+ }
+ eventConsumed = true;
+ break;
+
+ default:
+ break;
+ }
+
+ return eventConsumed;
+}
+
+void ScrollerPrivate::updateScrolling()
+{
+ bool scrollOngoing = false;
+
+ if (!m_scrollArea) {
+ m_scrollTimer.stop();
+ return;
+ }
+
+ if (m_state == ManualScrolling) {
+ scrollOngoing = true;
+ m_speed = mapToScrollArea(QCursor::pos()) - mapToScrollArea(m_cursorPos);
+ m_cursorPos = QCursor::pos();
+ } else if (m_state == AutoScrolling) {
+ scrollOngoing = true;
+
+
+ qreal x = qMax(-MaxScrollingSpeed, qMin(m_speed.x(), MaxScrollingSpeed));
+ qreal y = qMax(-MaxScrollingSpeed, qMin(m_speed.y(), MaxScrollingSpeed));
+
+ int sinceLast = m_lastFrameTime.elapsed();
+ int slowdown = (ScrollStep * sinceLast) + m_scrollSlowAccum;
+ m_scrollSlowAccum = slowdown & 0x3F;
+ slowdown >>= 6;
+
+ if (x > 0)
+ x= qMax(qreal(0.0), x - slowdown);
+ else
+ x = qMin(qreal(0.0), x + slowdown);
+
+ if (y > 0)
+ y = qMax(qreal(0.0), y - slowdown);
+ else
+ y = qMin(qreal(0.0), y + slowdown);
+
+ m_speed = QPoint(x,y);
+
+ if (m_speed != QPoint(0,0)) {
+ QPointF d;
+
+ int xstep = (int(m_speed.x()) * sinceLast)>>6; // >>6 ~= *60 /1000 (==*64 /1024)
+ int ystep = (int(m_speed.y()) * sinceLast)>>6;
+ //qDebug() << sinceLast << "speedy" << speed.y()<<"ystep" << ystep;
+ QPoint step = QPoint(xstep,ystep);
+
+ if (ystep > 0)
+ d = (m_scrollArea->pos() + step);
+ else
+ d = -(m_scrollArea->pos() - step);
+
+ ScrollBar *hscroll = m_scrollArea->horizontalScrollBar();
+ ScrollBar *vscroll = m_scrollArea->verticalScrollBar();
+
+ hscroll->setSliderPosition(hscroll->sliderPosition() - m_scrollFactor * d.x());
+ vscroll->setSliderPosition(vscroll->sliderPosition() - m_scrollFactor * d.y());
+ } else {
+ m_state = Stopped;
+ scrollOngoing = false;
+ }
+ }
+
+ m_lastFrameTime.restart();
+
+ if (!scrollOngoing)
+ m_scrollTimer.stop();
+}
+
+
+Scroller::Scroller(QObject *parent)
+ : QObject(parent), d_ptr(new ScrollerPrivate(this))
+{
+ Q_D(Scroller);
+ connect(&d->m_scrollTimer, SIGNAL(timeout()), this, SLOT(updateScrolling()));
+}
+
+Scroller::~Scroller()
+{
+ delete d_ptr;
+}
+
+void Scroller::setScrollable(AbstractScrollArea *area)
+{
+ Q_D(Scroller);
+
+ if (!area)
+ return;
+
+ d->m_scrollArea = area;
+}
+
+void Scroller::setScrollFactor(qreal scrollFactor)
+{
+ Q_D(Scroller);
+
+ d->m_scrollFactor = scrollFactor;
+}
+
+bool Scroller::eventFilter(QObject *obj, QEvent *event)
+{
+ Q_D(Scroller);
+ return d->eventFilter(obj, event);
+}
+
+void Scroller::stopScrolling()
+{
+ Q_D(Scroller);
+ d->stopScrolling();
+}
+#include "moc_scroller.cpp"
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h
new file mode 100644
index 0000000000..9c82473884
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller.h
@@ -0,0 +1,79 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SCROLLER_H
+#define SCROLLER_H
+
+#include <QObject>
+
+class ScrollerPrivate;
+class AbstractScrollArea;
+
+class Scroller : public QObject
+{
+ Q_OBJECT
+
+public:
+
+ Scroller(QObject *parent = 0);
+ virtual ~Scroller();
+
+public:
+
+ void setScrollable(AbstractScrollArea *area);
+ void setScrollFactor(qreal scrollFactor);
+ void stopScrolling();
+
+private:
+
+ bool eventFilter(QObject *obj, QEvent *ev);
+
+private:
+
+ Q_DECLARE_PRIVATE(Scroller)
+ Q_DISABLE_COPY(Scroller)
+
+ Q_PRIVATE_SLOT(d_ptr, void updateScrolling())
+
+ ScrollerPrivate * const d_ptr;
+};
+
+#endif // SCROLLER_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h
new file mode 100644
index 0000000000..6f9bbb1b48
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/scroller_p.h
@@ -0,0 +1,103 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SCROLLER_P_H
+#define SCROLLER_P_H
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#include <QPoint>
+#include <QTimer>
+#include <QTime>
+
+#include "scroller.h"
+
+class AbstractScrollArea;
+
+class ScrollerPrivate
+{
+ Q_DECLARE_PUBLIC(Scroller)
+
+public:
+ enum State {
+ Stopped,
+ Started,
+ ManualScrolling,
+ AutoScrolling
+ };
+
+ ScrollerPrivate(Scroller *scroller);
+ ~ScrollerPrivate();
+ void stopScrolling();
+ bool eventFilter(QObject *obj, QEvent *ev);
+
+ AbstractScrollArea *m_scrollArea;
+ qreal m_scrollFactor;
+ QPoint m_cursorPos;
+ QPointF m_speed;
+ State m_state;
+ QTime m_lastCursorTime;
+ QTime m_lastFrameTime;
+ QTimer m_scrollTimer;
+ int m_scrollSlowAccum;
+
+private Q_SLOTS:
+
+ void updateScrolling();
+
+private:
+
+ Q_DISABLE_COPY(ScrollerPrivate)
+ Scroller * const q_ptr;
+ QPointF mapToScrollArea(const QPoint &point);
+ QWidget *m_eventViewport;
+};
+
+#endif // SCROLLER_P_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp
new file mode 100644
index 0000000000..6b3fb51e3e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.cpp
@@ -0,0 +1,59 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "settings.h"
+
+
+Settings::Settings()
+ : QObject(),
+ m_scriptName(),
+ m_outputFileName(),
+ m_resultFormat(0),
+ m_size(0,0),
+ m_angle(0),
+ m_listItemCount(200),
+ m_options()
+{
+}
+
+Settings::~Settings()
+{
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h
new file mode 100644
index 0000000000..c5eb87502f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/settings.h
@@ -0,0 +1,116 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SETTINGS_H
+#define SETTINGS_H
+
+#include <QObject>
+#include <QSize>
+#include <QString>
+#include <QFlags>
+
+class Settings : public QObject {
+ Q_OBJECT
+
+public:
+ enum Option {
+ NoOptions = 0x1,
+ UseListItemCache = 0x2,
+ UseOpenGL = 0x4,
+ OutputFps = 0x8,
+ NoResourceUsage = 0x10,
+ ManualTest = 0x20
+ };
+ Q_DECLARE_FLAGS(Options, Option)
+
+ Settings();
+ ~Settings();
+
+ const QString &scriptName() const
+ { return m_scriptName; }
+ void setScriptName(const QString& scriptName)
+ { m_scriptName = scriptName; }
+
+ const QString &outputFileName() const
+ { return m_outputFileName; }
+ void setOutputFileName(const QString& outputFileName)
+ { m_outputFileName = outputFileName; }
+
+ int resultFormat() const
+ { return m_resultFormat; }
+ void setResultFormat(int resultFormat)
+ { m_resultFormat = resultFormat; }
+
+ const QSize& size() const
+ { return m_size; }
+ void setSize(const QSize& size)
+ { m_size = size; }
+
+ int angle() const
+ { return m_angle; }
+ void setAngle(int angle)
+ { m_angle = angle; }
+
+ const Options& options() const
+ { return m_options; }
+ void setOptions(Options options)
+ { m_options = options; }
+
+ int listItemCount()
+ { return m_listItemCount; }
+
+ void setListItemCount(int items)
+ { m_listItemCount = items; }
+
+private:
+
+ QString m_scriptName;
+ QString m_outputFileName;
+ int m_resultFormat;
+ QSize m_size;
+ int m_angle;
+ int m_listItemCount;
+ Options m_options;
+};
+
+Q_DECLARE_OPERATORS_FOR_FLAGS(Settings::Options)
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp
new file mode 100644
index 0000000000..3e3f5bb84b
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.cpp
@@ -0,0 +1,164 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QGraphicsLinearLayout>
+#include <QFont>
+#include <QTime>
+
+#include "simplelist.h"
+static const int MinItemWidth = 276;
+
+SimpleList::SimpleList(QGraphicsWidget *parent)
+ : GvbWidget(parent),
+ m_list(new ListWidget(this))
+{
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout();
+ layout->setContentsMargins(0,0,0,0);
+ setContentsMargins(0,0,0,0);
+ setLayout(layout);
+ layout->addItem(m_list);
+ setObjectName("SimpleList");
+}
+
+/*virtual*/
+SimpleList::~SimpleList()
+{
+}
+
+void SimpleList::addItem(ListItem *item)
+{
+ item->setMinimumWidth(MinItemWidth);
+ m_list->addItem(item);
+}
+
+void SimpleList::insertItem(int index, ListItem *item)
+{
+ item->setMinimumWidth(MinItemWidth);
+ m_list->insertItem(index, item);
+}
+
+ListItem* SimpleList::takeItem(int row)
+{
+ return static_cast<ListItem*>(m_list->takeItem(row));
+}
+
+ListItem* SimpleList::itemAt(int row)
+{
+ return static_cast<ListItem*>(m_list->itemAt(row));
+}
+
+int SimpleList::itemCount() const
+{
+ if (m_list)
+ return m_list->itemCount();
+ return 0;
+}
+
+ScrollBar* SimpleList::verticalScrollBar() const
+{
+ if (m_list)
+ return m_list->verticalScrollBar();
+ return 0;
+}
+
+bool SimpleList::listItemCaching() const
+{
+#if (QT_VERSION >= 0x040600)
+ return m_list->listItemCaching();
+#else
+ return false;
+#endif
+}
+
+void SimpleList::setListItemCaching(bool enable)
+{
+#if (QT_VERSION >= 0x040600)
+ m_list->setListItemCaching(enable);
+#else
+ Q_UNUSED(enable)
+#endif
+}
+
+void SimpleList::keyPressEvent(QKeyEvent *event)
+{
+ static QTime keyPressInterval = QTime::currentTime();
+ static qreal step = 0.0;
+ static bool repeat = false;
+ int interval = keyPressInterval.elapsed();
+
+ ScrollBar* sb = verticalScrollBar();
+ qreal currentValue = sb->sliderPosition();
+
+ if(interval < 250 ) {
+ if(!repeat) step = 0.0;
+ step = step + 2.0;
+ if(step > 100) step = 100;
+ repeat = true;
+ }
+ else {
+ step = 1.0;
+ if(itemAt(0))
+ step = itemAt(0)->size().height();
+ repeat = false;
+ }
+
+ if(event->key() == Qt::Key_Up ) { //Up Arrow
+ sb->setSliderPosition(currentValue - step);
+ }
+
+ if(event->key() == Qt::Key_Down ) { //Down Arrow
+ sb->setSliderPosition(currentValue + step);
+ }
+ keyPressInterval.start();
+}
+
+
+void SimpleList::setTwoColumns(const bool twoColumns)
+{
+ m_list->setTwoColumns(twoColumns);
+}
+
+bool SimpleList::twoColumns()
+{
+ return m_list->twoColumns();
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h
new file mode 100644
index 0000000000..65901a11b4
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelist.h
@@ -0,0 +1,80 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SIMPLELIST_H_
+#define SIMPLELIST_H_
+
+
+#include "gvbwidget.h"
+#include "listitem.h"
+#include "listwidget.h"
+
+class QGraphicsWidget;
+
+class SimpleList : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+ SimpleList(QGraphicsWidget *parent=0);
+ virtual ~SimpleList();
+ void addItem(ListItem *item);
+ void insertItem(int index, ListItem *item);
+ ListItem* takeItem(int row);
+ ListItem* itemAt(int row);
+ int itemCount() const;
+ virtual void keyPressEvent(QKeyEvent *event);
+ bool listItemCaching() const;
+ void setListItemCaching(bool enable);
+
+ void setTwoColumns(const bool twoColumns);
+ bool twoColumns();
+
+public slots:
+ ScrollBar* verticalScrollBar() const;
+
+private:
+ Q_DISABLE_COPY(SimpleList)
+
+ ListWidget *m_list;
+};
+
+#endif /* LISTTEST_H_ */
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp
new file mode 100644
index 0000000000..3f2fb8baa8
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.cpp
@@ -0,0 +1,500 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtGui>
+
+#include "simplelistview.h"
+#include "scrollbar.h"
+#include "simplelistview.h"
+#include "scrollbar.h"
+#include "listitem.h"
+#if (QT_VERSION >= 0x040600)
+#include "listitemcache.h"
+#endif
+#include "theme.h"
+
+class SimpleListViewPrivate
+{
+ Q_DECLARE_PUBLIC(SimpleListView)
+
+public:
+
+ SimpleListViewPrivate(SimpleListView *button)
+ : m_content(0)
+ , m_layout(0)
+ , m_twoColumns(false)
+ , q_ptr(button)
+#if (QT_VERSION >= 0x040600)
+ , m_listItemCaching(false)
+#endif
+ {
+ Q_Q(SimpleListView);
+
+ m_layout = new QGraphicsGridLayout();
+ m_layout->setContentsMargins(0, 0, 0, 0);
+ m_layout->setSpacing(0);
+ m_layout->setColumnSpacing(0,0);
+ m_layout->setColumnSpacing(1,0);
+ m_layout->setRowSpacing(0,0);
+ m_layout->setRowSpacing(1,0);
+ m_content = new QGraphicsWidget;
+ m_content->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ m_content->setParentItem(q->viewport());
+ m_content->setLayout(m_layout);
+
+ q->horizontalScrollBar()->setSliderSize(0.0);
+
+ QObject::connect(Theme::p(), SIGNAL(themeChanged()), q, SLOT(themeChange()));
+ }
+
+ ~SimpleListViewPrivate()
+ {
+ if (!m_content->parentItem() && !m_content->parent())
+ delete m_content;
+ }
+
+ void resizeContents(QSizeF s)
+ {
+ Q_UNUSED(s);
+ Q_Q(SimpleListView);
+
+ if (!m_content)
+ return;
+
+#if (QT_VERSION >= 0x040600)
+ const bool caching = q->listItemCaching();
+ q->setListItemCaching(false);
+#endif
+ m_content->resize(q->viewport()->size().width(),
+ m_layout->preferredHeight());
+ const bool clip =
+ m_content->size().width() > q->viewport()->size().width()
+ || m_content->size().height() > q->viewport()->size().height();
+
+ q->viewport()->setFlag(
+ QGraphicsItem::ItemClipsChildrenToShape, clip);
+
+#if (QT_VERSION >= 0x040600)
+ q->setListItemCaching(caching);
+#endif
+ }
+
+ void resizeScrollBars()
+ {
+ Q_Q(SimpleListView);
+
+ if (!m_content)
+ return;
+
+ m_content->resize(m_content->size().width(),
+ m_layout->preferredHeight());
+
+ QRectF contentRect = m_content->boundingRect();
+ QRectF listRect = q->boundingRect();
+
+ // List do not have horizontal scroll bar visible.
+ q->horizontalScrollBar()->setSliderSize(0.0);
+
+ if (contentRect.height()-q->boundingRect().height() > 0) {
+ q->verticalScrollBar()->setSliderSize(contentRect.height()-q->boundingRect().height());
+ if (q->verticalScrollBarPolicy() != Qt::ScrollBarAlwaysOff &&
+ !q->verticalScrollBar()->isVisible()) {
+ q->verticalScrollBar()->show();
+ }
+ }
+ else if (q->verticalScrollBarPolicy() == Qt::ScrollBarAsNeeded ||
+ q->verticalScrollBarPolicy() == Qt::ScrollBarAlwaysOff) {
+ q->verticalScrollBar()->setSliderSize(0.0);
+ q->verticalScrollBar()->hide();
+ }
+ else {
+ q->verticalScrollBar()->setSliderSize(0.0);
+ }
+
+ qreal pos = 0.0;
+ if ((m_content->boundingRect().height() - q->boundingRect().height()) != 0) {
+ qreal min = qMin(-contentRect.top(), m_content->pos().y());
+ qreal diff = contentRect.height() - listRect.height();
+ pos = qAbs(contentRect.top() + min) / diff;
+ }
+
+ q->verticalScrollBar()->setSliderPosition(pos);
+ }
+
+ void updateListContents()
+ {
+#if (QT_VERSION >= 0x040600)
+ Q_Q(SimpleListView);
+
+ const bool caching = q->listItemCaching();
+ q->setListItemCaching(false);
+#endif
+ const QString defaultIcon = Theme::p()->pixmapPath()+"contact_default_icon.svg";
+ const int itemCount = m_layout->count();
+
+ for (int i=0; i<itemCount; ++i) {
+ ListItem* item = static_cast<ListItem*>(m_layout->itemAt(i));
+
+ // Update default icons
+ const QString filename = item->icon(ListItem::LeftIcon)->fileName();
+ if (filename.contains("contact_default_icon")) {
+ item->icon(ListItem::LeftIcon)->setFileName(defaultIcon);
+ }
+
+ // Update status icons
+ QString statusIcon = item->icon(ListItem::RightIcon)->fileName();
+ const int index = statusIcon.indexOf("contact_status");
+ if (index != -1) {
+ statusIcon.remove(0, index);
+ item->icon(ListItem::RightIcon)->setFileName(Theme::p()->pixmapPath()+statusIcon);
+ }
+
+ // Update fonts
+ item->setFont(Theme::p()->font(Theme::ContactName), ListItem::FirstPos);
+ item->setFont(Theme::p()->font(Theme::ContactNumber), ListItem::SecondPos);
+ item->setFont(Theme::p()->font(Theme::ContactEmail), ListItem::ThirdPos);
+
+ // Update list dividers
+ if (i%2) {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushOdd());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityOdd());
+ }
+ else {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushEven());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityEven());
+ }
+
+ // Update borders
+ item->setBorderPen(Theme::p()->listItemBorderPen());
+ item->setRounding(Theme::p()->listItemRounding());
+
+ // Update icons
+ item->icon(ListItem::LeftIcon)->setRotation(Theme::p()->iconRotation(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setRotation(Theme::p()->iconRotation(ListItem::RightIcon));
+#if (QT_VERSION >= 0x040600)
+ item->icon(ListItem::LeftIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setOpacityEffectEnabled(Theme::p()->isIconOpacityEffectEnabled(ListItem::RightIcon));
+#endif
+ item->icon(ListItem::LeftIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::LeftIcon));
+ item->icon(ListItem::RightIcon)->setSmoothTransformationEnabled(Theme::p()->isIconSmoothTransformationEnabled(ListItem::RightIcon));
+ }
+#if (QT_VERSION >= 0x040600)
+ q->setListItemCaching(caching);
+#endif
+ }
+
+ void updateListItemBackgrounds(int index)
+ {
+#if (QT_VERSION >= 0x040600)
+ Q_Q(SimpleListView);
+
+ const bool caching = q->listItemCaching();
+ q->setListItemCaching(false);
+#endif
+ const int itemCount = m_layout->count();
+
+ for (int i=index; i<itemCount; ++i) {
+ ListItem* item = static_cast<ListItem*>(m_layout->itemAt(i));
+ if (i%2) {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushOdd());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityOdd());
+ }
+ else {
+ item->setBackgroundBrush(Theme::p()->listItemBackgroundBrushEven());
+ item->setBackgroundOpacity(Theme::p()->listItemBackgroundOpacityEven());
+ }
+ }
+
+#if (QT_VERSION >= 0x040600)
+ q->setListItemCaching(caching);
+#endif
+ }
+
+ void setTwoColumns(const bool twoColumns)
+ {
+ if(twoColumns == m_twoColumns)
+ return;
+
+ Q_Q(SimpleListView);
+ m_twoColumns = twoColumns;
+
+#if (QT_VERSION >= 0x040600)
+ bool cache = q->listItemCaching();
+ q->setListItemCaching(false);
+#endif
+ QList<QGraphicsLayoutItem *> moveditems;
+ if(twoColumns) {
+ int half = m_layout->count()/2;
+ for (int i = m_layout->count()-1; i>=half; --i) {
+ QGraphicsLayoutItem *item = m_layout->itemAt(i);
+ m_layout->removeAt(i);
+ moveditems.append(item);
+ }
+ for ( int i = 0; i < moveditems.count(); ++i)
+ m_layout->addItem(moveditems.at(i), i, 1);
+
+ m_layout->setColumnSpacing(0,0);
+ m_layout->setColumnSpacing(1,0);
+ m_layout->setRowSpacing(0,0);
+ m_layout->setRowSpacing(1,0);
+ }
+ else {
+ int count = m_layout->count()/2;
+ for (int i = m_layout->count()-1; i>=0; --i) {
+ if (i >= count)
+ moveditems.append(m_layout->itemAt(i));
+ else
+ moveditems.insert(moveditems.begin(), m_layout->itemAt(i));
+ m_layout->removeAt(i);
+ }
+ for (int i = 0; i<moveditems.count(); ++i) {
+ m_layout->addItem(moveditems.at(i), m_layout->count(), 0);
+ }
+ }
+
+ resizeContents(q->size());
+ resizeScrollBars();
+
+#if (QT_VERSION >= 0x040600)
+ q->setListItemCaching(cache);
+#endif
+ }
+
+ bool twoColumns()
+ {
+ return m_twoColumns;
+ }
+
+ QGraphicsWidget *m_content;
+ QGraphicsGridLayout *m_layout;
+ bool m_twoColumns;
+ SimpleListView *q_ptr;
+#if (QT_VERSION >= 0x040600)
+ bool m_listItemCaching;
+#endif
+};
+
+SimpleListView::SimpleListView(QGraphicsWidget *parent)
+ : AbstractScrollArea(parent)
+ , d_ptr(new SimpleListViewPrivate(this))
+{
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ setContentsMargins(0, 0, 0, 0);
+ verticalScrollBar()->hide();
+ horizontalScrollBar()->hide();
+}
+
+SimpleListView::~SimpleListView()
+{
+ Q_D(SimpleListView);
+
+ if (d->m_content) {
+ d->m_content->setParentItem(0);
+ }
+
+ delete d_ptr;
+}
+
+void SimpleListView::addItem(QGraphicsWidget *item)
+{
+ Q_D(SimpleListView);
+
+ Q_ASSERT(item);
+
+ insertItem(d->m_layout->count(), item);
+}
+
+void SimpleListView::insertItem(int index, QGraphicsWidget *item)
+{
+ Q_D(SimpleListView);
+
+ // Grid layout doe not have insert item method.
+ // We need to first remove all items, add new item and
+ // append old items to layout.
+ QList<QGraphicsLayoutItem *> moveditems;
+
+ for (int i = d->m_layout->count()-1; i >= index; --i) {
+ moveditems.append(d->m_layout->itemAt(i));
+ d->m_layout->removeAt(i);
+ }
+ moveditems.append(item);
+
+ for (int i = moveditems.count()-1; i>=0; --i) {
+ d->m_layout->addItem(moveditems.at(i), d->m_layout->count(), 0);
+ }
+
+#if (QT_VERSION >= 0x040600)
+ ListItemCache *cache = new ListItemCache;
+ item->setGraphicsEffect(cache);
+ cache->setEnabled(listItemCaching());
+#endif
+
+ d->resizeScrollBars();
+ d->updateListItemBackgrounds(index);
+}
+
+QGraphicsWidget *SimpleListView::takeItem(int index)
+{
+ Q_D(SimpleListView);
+
+ QGraphicsWidget *item = 0;
+
+ if (index >= 0 && d->m_layout->count() > index) {
+ QList<QGraphicsLayoutItem *> moveditems;
+ for (int i = d->m_layout->count()-1; i >=0; --i) {
+ if (index != i)
+ moveditems.insert(moveditems.begin(), d->m_layout->itemAt(i));
+ else {
+ item = static_cast<QGraphicsWidget*>(d->m_layout->itemAt(index));
+ item->setGraphicsEffect(0);
+ }
+
+ d->m_layout->removeAt(i);
+ }
+
+ for (int i = 0; i < moveditems.count(); ++i)
+ d->m_layout->addItem(moveditems.at(i), d->m_layout->count(), 0);
+ }
+ d->resizeScrollBars();
+ return item;
+}
+
+QGraphicsWidget *SimpleListView::itemAt(int row)
+{
+ Q_D(SimpleListView);
+
+ QGraphicsWidget *item = 0;
+
+ if (row >= 0 && d->m_layout->count() > row) {
+ item = static_cast<QGraphicsWidget*>(d->m_layout->itemAt(row));
+ }
+
+ return item;
+}
+
+int SimpleListView::itemCount()
+{
+ Q_D(SimpleListView);
+ return d->m_layout->count();
+}
+
+#if (QT_VERSION >= 0x040600)
+bool SimpleListView::listItemCaching() const
+{
+ Q_D(const SimpleListView);
+ return d->m_listItemCaching;
+}
+
+void SimpleListView::setListItemCaching(bool enabled)
+{
+ Q_D(SimpleListView);
+
+ if (d->m_listItemCaching == enabled)
+ return;
+
+ d->m_listItemCaching = enabled;
+
+ for (int i = 0; i < d->m_layout->count(); ++i) {
+ ListItem *item = static_cast<ListItem*>(d->m_layout->itemAt(i));
+ ListItemCache *cache = static_cast<ListItemCache *>(
+ item->graphicsEffect());
+ cache->setEnabled(enabled);
+ }
+}
+#endif
+
+void SimpleListView::scrollContentsBy(qreal dx, qreal dy)
+{
+ Q_D(SimpleListView);
+ Q_UNUSED(dx)
+ QRectF contentRect = d->m_content->boundingRect();
+ QRectF viewportRect = viewport()->boundingRect();
+ QPointF contentPos = d->m_content->pos();
+
+ qreal newy = contentPos.y() - dy;
+ qreal miny = qMin(qreal(0.0), -(contentRect.height() - viewportRect.height()));
+
+ if (newy < miny)
+ newy = miny;
+ else if (newy > 0)
+ newy = 0.0;
+
+ d->m_content->setPos(contentPos.x(), newy);
+}
+
+void SimpleListView::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ Q_D(SimpleListView);
+
+ AbstractScrollArea::resizeEvent(event);
+ d->resizeContents(event->newSize());
+ d->resizeScrollBars();
+}
+
+QSizeF SimpleListView::sizeHint(Qt::SizeHint which, const QSizeF & constraint) const
+{
+ Q_D(const SimpleListView);
+
+ if (which == Qt::PreferredSize)
+ return d->m_content->size();
+
+ return AbstractScrollArea::sizeHint(which, constraint);
+}
+
+void SimpleListView::themeChange()
+{
+ Q_D(SimpleListView);
+
+ d->updateListContents();
+ d->resizeScrollBars();
+}
+
+void SimpleListView::setTwoColumns(const bool twoColumns)
+{
+ Q_D(SimpleListView);
+ d->setTwoColumns(twoColumns);
+}
+
+bool SimpleListView::twoColumns()
+{
+ Q_D(SimpleListView);
+ return d->twoColumns();
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h
new file mode 100644
index 0000000000..e2fcfff6d0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/simplelistview.h
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef SIMPLELISTVIEW_H
+#define SIMPLELISTVIEW_H
+
+#include "scrollbar.h"
+#include "abstractscrollarea.h"
+
+class SimpleListViewPrivate;
+
+class SimpleListView : public AbstractScrollArea
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(SimpleListView)
+
+public:
+
+ SimpleListView(QGraphicsWidget *parent = 0);
+ virtual ~SimpleListView();
+
+public:
+
+ void addItem(QGraphicsWidget *item);
+ void insertItem(int index, QGraphicsWidget *item);
+ QGraphicsWidget* takeItem(int row);
+ QGraphicsWidget* itemAt(int row);
+ int itemCount();
+ void updateListContents();
+
+ void setTwoColumns(const bool twoColumns);
+ bool twoColumns();
+
+public slots:
+
+ void themeChange();
+#if (QT_VERSION >= 0x040600)
+ bool listItemCaching() const;
+ void setListItemCaching(bool enabled);
+#endif
+
+protected:
+
+ virtual void scrollContentsBy(qreal dx, qreal dy);
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+ QSizeF sizeHint(Qt::SizeHint which,
+ const QSizeF & constraint) const;
+
+private:
+
+ SimpleListViewPrivate *d_ptr;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp
new file mode 100644
index 0000000000..06baf7729c
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.cpp
@@ -0,0 +1,240 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QPainter>
+#include <QPixmapCache>
+#include <QSvgRenderer>
+
+#include "theme.h"
+
+Q_DECLARE_METATYPE(Theme::Themes*)
+
+Theme::Theme(QObject *parent)
+ : QObject(parent)
+ , m_currentTheme()
+ , m_availableThemes()
+ , m_fonts()
+ , m_pixmapPath()
+ , m_listItemBackgroundBrushEven()
+ , m_listItemBackgroundOpacityEven()
+ , m_listItemBackgroundBrushOdd()
+ , m_listItemBackgroundOpacityOdd()
+ , m_listItemBorderPen(QPen())
+ , m_listItemRounding()
+#if (QT_VERSION >= 0x040600)
+ , m_iconOpacityEffectEnabled()
+#endif
+ , m_iconRotation()
+ , m_iconSmoothTransformation()
+{
+ m_availableThemes << "Blue" << "Lime";
+
+ // Set blue theme as a default theme without emiting themeChanged() signal
+ setBlueTheme();
+}
+
+Theme::~Theme()
+{
+}
+
+Theme* Theme::p()
+{
+ static Theme t;
+ return &t;
+}
+
+void Theme::setTheme(const QString theme)
+{
+ if (theme.compare("blue", Qt::CaseInsensitive) == 0)
+ {
+ setTheme(Theme::Blue);
+ }
+ else if (theme.compare("lime", Qt::CaseInsensitive) == 0)
+ {
+ setTheme(Theme::Lime);
+ }
+ else
+ {
+ qDebug() << "Unknown theme";
+ }
+}
+
+void Theme::setTheme(const Themes theme)
+{
+ if (m_currentTheme == theme)
+ return;
+
+ switch (theme)
+ {
+ case Theme::Blue:
+ setBlueTheme();
+ emit themeChanged();
+ break;
+
+ case Theme::Lime:
+ setLimeTheme();
+ emit themeChanged();
+ break;
+ }
+}
+
+void Theme::setBlueTheme()
+{
+ m_currentTheme = Theme::Blue;
+
+ m_fonts[ContactName].setFamily("Arial");
+ m_fonts[ContactName].setPixelSize(16);
+ m_fonts[ContactName].setStyle(QFont::StyleNormal);
+ m_fonts[ContactName].setWeight(QFont::Normal);
+
+ m_fonts[ContactNumber].setFamily("Arial");
+ m_fonts[ContactNumber].setPixelSize(14);
+ m_fonts[ContactNumber].setStyle(QFont::StyleNormal);
+
+ m_fonts[ContactEmail].setFamily("Arial");
+ m_fonts[ContactEmail].setPixelSize(14);
+ m_fonts[ContactEmail].setStyle(QFont::StyleNormal);
+
+ m_fonts[TitleBar].setFamily("Arial");
+ m_fonts[TitleBar].setPixelSize(36);
+ m_fonts[TitleBar].setStyle(QFont::StyleNormal);
+
+ m_fonts[StatusBar].setFamily("Arial");
+ m_fonts[StatusBar].setPixelSize(16);
+ m_fonts[StatusBar].setStyle(QFont::StyleNormal);
+
+ m_fonts[MenuItem].setFamily("Arial");
+ m_fonts[MenuItem].setPixelSize(14);
+ m_fonts[MenuItem].setStyle(QFont::StyleNormal);
+
+ m_pixmapPath = ":/themes/blue/";
+
+ m_listItemBackgroundBrushEven = QBrush(Qt::NoBrush);
+ m_listItemBackgroundOpacityEven = 1.0;
+ m_listItemBackgroundBrushOdd = QBrush(QColor(44,214,250), Qt::SolidPattern);
+ m_listItemBackgroundOpacityOdd = 1.0;
+
+ m_listItemBorderPen = QPen(Qt::NoPen);
+ m_listItemRounding = QSize(0.0, 0.0);
+
+#if (QT_VERSION >= 0x040600)
+ m_iconOpacityEffectEnabled[ListItem::LeftIcon] = false;
+ m_iconOpacityEffectEnabled[ListItem::RightIcon] = false;
+#endif
+ m_iconRotation[ListItem::LeftIcon] = 0.0;
+ m_iconRotation[ListItem::RightIcon] = 0.0;
+
+ m_iconSmoothTransformation[ListItem::LeftIcon] = false;
+ m_iconSmoothTransformation[ListItem::RightIcon] = false;
+}
+
+void Theme::setLimeTheme()
+{
+ m_currentTheme = Theme::Lime;
+
+ m_fonts[ContactName].setFamily("Arial");
+ m_fonts[ContactName].setPixelSize(16);
+ m_fonts[ContactName].setStyle(QFont::StyleItalic);
+ m_fonts[ContactName].setWeight(QFont::Bold);
+
+ m_fonts[ContactNumber].setFamily("Arial");
+ m_fonts[ContactNumber].setPixelSize(14);
+ m_fonts[ContactNumber].setStyle(QFont::StyleItalic);
+
+ m_fonts[ContactEmail].setFamily("Arial");
+ m_fonts[ContactEmail].setPixelSize(14);
+ m_fonts[ContactEmail].setStyle(QFont::StyleItalic);
+
+ m_fonts[TitleBar].setFamily("Arial");
+ m_fonts[TitleBar].setPixelSize(36);
+ m_fonts[TitleBar].setStyle(QFont::StyleItalic);
+
+ m_fonts[StatusBar].setFamily("Arial");
+ m_fonts[StatusBar].setPixelSize(16);
+ m_fonts[StatusBar].setStyle(QFont::StyleItalic);
+
+ m_fonts[MenuItem].setFamily("Arial");
+ m_fonts[MenuItem].setPixelSize(14);
+ m_fonts[MenuItem].setStyle(QFont::StyleItalic);
+
+ m_pixmapPath = ":/themes/lime/";
+
+ m_listItemBackgroundBrushEven = QBrush(QPixmap(":/avatars/avatar_014.png"));
+ m_listItemBackgroundOpacityEven = 0.05;
+
+ m_listItemBackgroundBrushOdd = QBrush(QPixmap(":/avatars/avatar_012.png"));
+ m_listItemBackgroundOpacityOdd = 0.15;
+
+ m_listItemBorderPen = QPen(QColor(0,0,0,55), 3, Qt::SolidLine);
+ m_listItemRounding = QSize(12.0, 12.0);
+
+#if (QT_VERSION >= 0x040600)
+ m_iconOpacityEffectEnabled[ListItem::LeftIcon] = true;
+ m_iconOpacityEffectEnabled[ListItem::RightIcon] = false;
+#endif
+ m_iconRotation[ListItem::LeftIcon] = -4.0;
+ m_iconRotation[ListItem::RightIcon] = 0.0;
+
+ m_iconSmoothTransformation[ListItem::LeftIcon] = true;
+ m_iconSmoothTransformation[ListItem::RightIcon] = false;
+}
+
+QPixmap Theme::pixmap(const QString filename, QSize size)
+{
+ if (filename.endsWith(".svg", Qt::CaseInsensitive))
+ {
+ QSvgRenderer doc(m_pixmapPath+filename);
+ if (size == QSize(0,0))
+ size = doc.defaultSize();
+ QPixmap pix(size.width(),size.height());
+ pix.fill(Qt::transparent);
+ QPainter painter(&pix);
+ painter.setViewport(0, 0, size.width(), size.height());
+ doc.render(&painter);
+ return pix;
+ }
+ else
+ {
+ QPixmap pix(m_pixmapPath+filename);
+ return pix.scaled(size);
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h
new file mode 100644
index 0000000000..04972b7ca2
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/theme.h
@@ -0,0 +1,134 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef THEME_H
+#define THEME_H
+
+#include <QPen>
+#include <QPainter>
+
+#include "gvbwidget.h"
+#include "listitem.h"
+
+class Theme : public QObject
+{
+ Q_OBJECT
+
+public:
+ enum Themes
+ {
+ Blue = 0,
+ Lime = 1,
+ };
+
+ enum Fonts
+ {
+ ContactName,
+ ContactNumber,
+ ContactEmail,
+ TitleBar,
+ StatusBar,
+ MenuItem,
+ };
+
+ virtual ~Theme();
+
+ static Theme* p();
+
+ void setTheme(const QString theme);
+ void setTheme(const Themes theme);
+
+ Themes theme() const { return m_currentTheme; }
+ QString currentThemeName() { return m_availableThemes.at(m_currentTheme); }
+ QStringList themes() const { return m_availableThemes; }
+ int themesCount() const { return m_availableThemes.count(); }
+
+ QPixmap pixmap(const QString filename = "", QSize size = QSize(0,0));
+ QFont font(Fonts type) const { return m_fonts[type]; }
+ QString pixmapPath() const { return m_pixmapPath; }
+
+ QBrush listItemBackgroundBrushEven() const { return m_listItemBackgroundBrushEven; }
+ QBrush listItemBackgroundBrushOdd() const { return m_listItemBackgroundBrushOdd; }
+ qreal listItemBackgroundOpacityEven() const { return m_listItemBackgroundOpacityEven; }
+ qreal listItemBackgroundOpacityOdd() const { return m_listItemBackgroundOpacityOdd; }
+
+ QPen listItemBorderPen() const { return m_listItemBorderPen; }
+ QSize listItemRounding() const { return m_listItemRounding; }
+
+#if (QT_VERSION >= 0x040600)
+ bool isIconOpacityEffectEnabled(const ListItem::IconItemPos iconPos) const { return m_iconOpacityEffectEnabled[iconPos]; }
+#endif
+ qreal iconRotation(const ListItem::IconItemPos iconPos) const { return m_iconRotation[iconPos]; }
+ bool isIconSmoothTransformationEnabled(const ListItem::IconItemPos iconPos) const { return m_iconSmoothTransformation[iconPos]; }
+
+signals:
+ void themeChanged();
+
+private:
+ Theme(QObject *parent = 0);
+
+ void setBlueTheme();
+ void setLimeTheme();
+
+private:
+ Q_DISABLE_COPY(Theme)
+
+ Themes m_currentTheme;
+ QStringList m_availableThemes;
+ QHash<Fonts, QFont> m_fonts;
+ QString m_pixmapPath;
+
+ QBrush m_listItemBackgroundBrushEven;
+ qreal m_listItemBackgroundOpacityEven;
+ QBrush m_listItemBackgroundBrushOdd;
+ qreal m_listItemBackgroundOpacityOdd;
+
+ QPen m_listItemBorderPen;
+ QSize m_listItemRounding;
+
+#if (QT_VERSION >= 0x040600)
+ QHash<ListItem::IconItemPos, bool> m_iconOpacityEffectEnabled;
+#endif
+ QHash<ListItem::IconItemPos, qreal> m_iconRotation;
+ QHash<ListItem::IconItemPos, bool> m_iconSmoothTransformation;
+};
+
+#endif // THEME_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp
new file mode 100644
index 0000000000..0a41647da3
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.cpp
@@ -0,0 +1,53 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "themeevent.h"
+
+ThemeEvent::ThemeEvent( QString newTheme, Type type) : QEvent(type),
+ m_theme(newTheme)
+{
+
+}
+
+ThemeEvent::~ThemeEvent()
+{
+
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h
new file mode 100644
index 0000000000..56e9377290
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/themeevent.h
@@ -0,0 +1,64 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __THEMEEVENT_H__
+#define __THEMEEVENT_H__
+
+#include <QEvent>
+#include <QString>
+
+static QEvent::Type ThemeEventType = (QEvent::Type) 1010;
+
+class ThemeEvent : public QEvent
+{
+public:
+ ThemeEvent(QString newTheme, QEvent::Type type = ThemeEventType );
+ ~ThemeEvent();
+
+public:
+ inline QString getTheme() { return m_theme; }
+
+private:
+ QString m_theme;
+};
+
+
+#endif /* __THEMEEVENT_H__ */
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp
new file mode 100644
index 0000000000..3da0e04bf9
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.cpp
@@ -0,0 +1,359 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGraphicsView>
+#include <QStyleOptionGraphicsItem>
+#include <QGraphicsSceneResizeEvent>
+#include <QPixmap>
+#include <QFont>
+
+#include "themeevent.h"
+#include "theme.h"
+#include "topbar.h"
+#include "mainview.h"
+
+TopBar::TopBar(QGraphicsView* mainView, QGraphicsWidget* parent) :
+ GvbWidget(parent), m_mainView(mainView), m_isLimeTheme(false),
+ m_orientation(TopBar::None), m_topBarPixmap(), m_sizesBlue(), m_sizesLime()
+{
+ setDefaultSizes();
+
+ m_titleFont = Theme::p()->font(Theme::TitleBar);
+ m_statusFont = Theme::p()->font(Theme::StatusBar);
+
+ connect(Theme::p(), SIGNAL(themeChanged()), this, SLOT(themeChange()));
+}
+
+TopBar::~TopBar()
+{
+}
+
+void TopBar::resizeEvent(QGraphicsSceneResizeEvent* /*event*/)
+{
+ //Check orientation
+ QString topbarName;
+ QSize mainViewSize = m_mainView->size();
+ int rotationAngle = static_cast<MainView*>(m_mainView)->rotationAngle();
+ if(rotationAngle == 90 || rotationAngle == 270 ) {
+ int wd = mainViewSize.width();
+ int ht = mainViewSize.height();
+ mainViewSize.setWidth(ht);
+ mainViewSize.setHeight(wd);
+ }
+ bool m_orientationChanged = false;
+ if(mainViewSize.height() >= mainViewSize.width()) {
+ if(m_orientation == TopBar::Landscape)
+ m_orientationChanged = true;
+ m_orientation = TopBar::Portrait;
+ topbarName = "topbar.svg";
+ }
+ else {
+ if(m_orientation == TopBar::Portrait)
+ m_orientationChanged = true;
+ m_orientation = TopBar::Landscape;
+ topbarName = "topbar_horisontal.svg";
+ }
+
+ //Calculate new size, resize by height, don't make it wider than the screen
+ QHash<QString, QSize>sizes = (Theme::p()->theme() == Theme::Blue) ?
+ m_sizesBlue : m_sizesLime;
+
+ //Get current size for topbarpixmap
+ QSize currentSize = !m_topBarPixmap.isNull() && !m_orientationChanged ?
+ m_topBarPixmap.size() : sizes[topbarName];
+ QSize newSize = !m_orientationChanged ? QSize(currentSize) : sizes[topbarName];
+
+ //Scale according to aspect ratio
+ newSize.scale(size().toSize(), Qt::KeepAspectRatio);
+
+ //fix width to window widht if previous scaling produced too narrow image
+ if(newSize.width() < size().width()) {
+ newSize.scale(size().toSize(), Qt::KeepAspectRatioByExpanding);
+ }
+
+ //Calculate scaling factor for rest of the graphics scaling
+ qreal scaleFactor = (newSize.width() *1.0) / (currentSize.width() * 1.0);
+
+ //Scale graphics, if the scalefactor applies
+ //This is really heavy since the SVG graphics are read again from the resource
+ if(scaleFactor != 1 || m_topBarPixmap.isNull() ) {
+ m_topBarPixmap = Theme::p()->pixmap(topbarName, newSize );
+ m_topBarUserIcon = Theme::p()->pixmap("user_default_icon.svg",
+ !m_topBarUserIcon.isNull() && !m_orientationChanged ? m_topBarUserIcon.size()* scaleFactor : sizes["user_default_icon.svg"] * scaleFactor);
+
+ m_topBarUserStatus = Theme::p()->pixmap("user_status_online.svg",
+ !m_topBarUserStatus.isNull() && !m_orientationChanged ? m_topBarUserStatus.size() * scaleFactor : sizes["user_status_online.svg"] * scaleFactor);
+
+ m_topBarStatusBarLeft = Theme::p()->pixmap("status_field_left.svg",
+ !m_topBarStatusBarLeft.isNull() && !m_orientationChanged ? m_topBarStatusBarLeft.size()* scaleFactor : sizes["status_field_left.svg"] * scaleFactor);
+
+ m_topBarStatusBarRight = Theme::p()->pixmap("status_field_right.svg",
+ !m_topBarStatusBarRight.isNull() && !m_orientationChanged ? m_topBarStatusBarRight.size()* scaleFactor : sizes["status_field_right.svg"] * scaleFactor);
+
+ m_topBarStatusBarMiddle = Theme::p()->pixmap("status_field_middle.svg",
+ !m_topBarStatusBarMiddle.isNull() && !m_orientationChanged ? m_topBarStatusBarMiddle.size() * scaleFactor : QSize(185, sizes["status_field_middle.svg"].height()) * scaleFactor);
+
+ //Update the sizeHint to match the size of the scaled m_topBarPixmap
+ updateGeometry();
+
+ //Point Update - Positions relative to the Top Bar "Backgroud" size.
+ //TODO: consider some layout instead of calculating relative locations
+ QSize topBarPixmapSize = m_topBarPixmap.size();
+ QSize topBarUserIconSize = m_topBarUserIcon.size();
+ QSize topBarUserStatusSize = m_topBarUserStatus.size();
+ QSize topBarStatusBarLeftSize = m_topBarStatusBarLeft.size();
+ QSize topBarStatusBarMiddleSize = m_topBarStatusBarMiddle.size();
+
+ //Location for Title text 5% width, 35% heigth of the background pixmap
+ m_topBarTitlePoint = QPoint(topBarPixmapSize.width()* 0.05,
+ topBarPixmapSize.height() * 0.35);
+
+ //User Icon location
+ //Placing 70% of the width and 10% of the height of the top bar background
+ m_topBarUserIconPoint = QPoint((topBarPixmapSize.width() * 0.7), (topBarPixmapSize.height() * 0.1));
+
+ //If Blue theme is in use - position user status icon on the right side of the user icon
+ if(!m_isLimeTheme) {
+ //Place the status icon on top of the right edge of the user icon, lower it by 35% of the height of the user icon
+ m_topBarUserStatusPoint = QPoint( ( (m_topBarUserIconPoint.x()+topBarUserIconSize.width() ) -
+ ( topBarUserStatusSize.width()/2 )),
+ (m_topBarUserIconPoint.y() + (topBarUserIconSize.height() * 0.35 )));
+ }
+ //If Lime theme is in use - position user status icon on the left side of the user icon
+ else {
+ //Place the status icon on top of the left side of the user icon, lower it by 50% of the height of the user icon
+ //and move left by 5% of the icon
+ m_topBarUserStatusPoint = QPoint( m_topBarUserIconPoint.x() + ( topBarUserIconSize.width() * 0.05),
+ (m_topBarUserIconPoint.y() + (topBarUserIconSize.height() * 0.5 )));
+ }
+
+ //Status bar
+ //Placing the left side of the status bar 5% of the width, 50% of the height of the top bar background
+ //Set the text baseline 80% of the height of the status bar
+ m_topBarStatusBarLeftPoint = QPoint( (topBarPixmapSize.width()* 0.05),
+ (topBarPixmapSize.height() * 0.5));
+ m_topBarStatusBarMiddlePoint = QPoint( (m_topBarStatusBarLeftPoint.x() + topBarStatusBarLeftSize.width()),
+ (m_topBarStatusBarLeftPoint.y()));
+ m_topBarStatusBarRightPoint = QPoint( (m_topBarStatusBarMiddlePoint.x() + topBarStatusBarMiddleSize.width()),
+ (m_topBarStatusBarMiddlePoint.y() ) );
+ m_topBarStatusBarTextPoint = QPoint(m_topBarStatusBarMiddlePoint.x(),
+ m_topBarStatusBarMiddlePoint.y() + (topBarStatusBarMiddleSize.height()*0.8) );
+ } //if scalefactor
+}
+
+void TopBar::paint( QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget */*widget*/ )
+{
+ //Topbar background
+ painter->drawPixmap(option->exposedRect, m_topBarPixmap, option->exposedRect);
+
+ //User Icon
+ painter->drawPixmap(m_topBarUserIconPoint, m_topBarUserIcon);
+
+ //User Status
+ painter->drawPixmap(m_topBarUserStatusPoint, m_topBarUserStatus);
+
+ //Status bar
+ painter->drawPixmap(m_topBarStatusBarLeftPoint, m_topBarStatusBarLeft);
+ painter->drawPixmap(m_topBarStatusBarMiddlePoint, m_topBarStatusBarMiddle);
+ painter->drawPixmap(m_topBarStatusBarRightPoint, m_topBarStatusBarRight);
+
+ //Title text
+ painter->save();
+ painter->setFont(m_titleFont);
+ painter->setOpacity(0.7);
+ painter->setPen(Qt::white);
+ painter->drawText(m_topBarTitlePoint, QString("Contacts") );
+ //Status text
+ painter->setFont(m_statusFont);
+ painter->setOpacity(1.0);
+ painter->drawText(m_topBarStatusBarTextPoint, QString("My Status (fixed)") );
+ painter->restore();
+}
+
+QRectF TopBar::boundingRect() const
+{
+ //It's possible that m_topBarPixmap is not allocated yet,
+ //in this case default size is used for setting boundingRect
+ QHash<QString, QSize>sizes = (Theme::p()->theme() == Theme::Blue) ?
+ m_sizesBlue : m_sizesLime;
+
+ if(!m_topBarPixmap.isNull())
+ return QRectF(0, 0, m_topBarPixmap.size().width(), m_topBarPixmap.size().height());
+ else
+ return QRectF(0, 0, sizes["topbar.svg"].width(), sizes["topbar.svg"].height());
+}
+
+void TopBar::themeChange()
+{
+ m_titleFont = Theme::p()->font(Theme::TitleBar);
+ m_statusFont = Theme::p()->font(Theme::StatusBar);
+
+ //Calculate the scaling factor
+ QHash<QString, QSize>sizes = (Theme::p()->theme() == Theme::Blue) ?
+ m_sizesBlue : m_sizesLime;
+
+ QString topbarString= m_orientation == TopBar::Portrait ?
+ "topbar.svg" : "topbar_horisontal.svg";
+
+ QSize topBarSize = sizes[topbarString];
+ QSize newSize = QSize(topBarSize);
+
+ //Scale according to aspect ratio
+ newSize.scale(size().toSize(), Qt::KeepAspectRatio);
+
+ //fix width to window widht if previous scaling produced too narrow image
+ if(newSize.width() < size().width()) {
+ newSize.scale(size().toSize(), Qt::KeepAspectRatioByExpanding);
+ }
+
+ //Calculate scaling factor for rest of the graphics scaling
+ qreal scaleFactor = (newSize.width() *1.0) / (topBarSize.width() * 1.0);
+
+ //Background
+ m_topBarPixmap = Theme::p()->pixmap(topbarString, sizes[topbarString] * scaleFactor);
+
+ //User Icon
+ m_topBarUserIcon = Theme::p()->pixmap("user_default_icon.svg", sizes["user_default_icon.svg"] * scaleFactor);
+
+ //User Status
+ m_topBarUserStatus = Theme::p()->pixmap("user_status_online.svg", sizes["user_status_online.svg"] * scaleFactor);
+
+ //Status Bar
+ m_topBarStatusBarLeft = Theme::p()->pixmap("status_field_left.svg", sizes["status_field_left.svg"] * scaleFactor);
+ m_topBarStatusBarRight = Theme::p()->pixmap("status_field_right.svg", sizes["status_field_right.svg"] * scaleFactor);
+ m_topBarStatusBarMiddle = Theme::p()->pixmap("status_field_middle.svg",
+ QSize(185, sizes["status_field_middle.svg"].height())* scaleFactor);
+
+ //Update Drawing points for Top Bar elements, points are relative to the top bar background size
+ QSize topBarPixmapSize = m_topBarPixmap.size();
+ QSize topBarUserIconSize = m_topBarUserIcon.size();
+ QSize topBarUserStatusSize = m_topBarUserStatus.size();
+ QSize topBarStatusBarLeftSize = m_topBarStatusBarLeft.size();
+ QSize topBarStatusBarMiddleSize = m_topBarStatusBarMiddle.size();
+
+ //Theme Check
+ (Theme::p()->theme() == Theme::Lime) ? m_isLimeTheme = true : m_isLimeTheme = false;
+
+ //User Icon location
+ //Placing 70% of the width and 10% of the height of the top bar background
+ m_topBarUserIconPoint = QPoint((0.7*topBarPixmapSize.width()), (0.1*topBarPixmapSize.height()));
+
+ //If Blue theme is in use - position user status icon on the right side of the user icon
+ if(!m_isLimeTheme) {
+ //Place the status icon on top of the right edge of the user icon, lower it by 35% of the height of the user icon
+ m_topBarUserStatusPoint = QPoint( ( (m_topBarUserIconPoint.x()+topBarUserIconSize.width() ) - ( topBarUserStatusSize.width()/2 )),
+ (m_topBarUserIconPoint.y() + (topBarUserIconSize.height() * 0.35 )));
+ }
+ //If Lime theme is in use - position user status icon on the left side of the user icon
+ else {
+ //Place the status icon on top of the left side of the user icon, lower it by 50% of the height of the user icon
+ //and move left by 5% of the icon
+ m_topBarUserStatusPoint = QPoint( m_topBarUserIconPoint.x() + ( topBarUserIconSize.width() * 0.05),
+ (m_topBarUserIconPoint.y() + (topBarUserIconSize.height() * 0.5 )));
+ }
+
+ //Status bar
+ //Placing the left side of the status bar 5% of the width, 50% of the height of the top bar background
+ //Set the text baseline 80% of the height of the status bar
+ m_topBarStatusBarLeftPoint = QPoint( (topBarPixmapSize.width()* 0.05),
+ (topBarPixmapSize.height() * 0.5));
+ m_topBarStatusBarMiddlePoint = QPoint( (m_topBarStatusBarLeftPoint.x() + topBarStatusBarLeftSize.width()),
+ (m_topBarStatusBarLeftPoint.y()));
+ m_topBarStatusBarRightPoint = QPoint( (m_topBarStatusBarMiddlePoint.x() + topBarStatusBarMiddleSize.width()),
+ (m_topBarStatusBarMiddlePoint.y() ) );
+ m_topBarStatusBarTextPoint = QPoint(m_topBarStatusBarMiddlePoint.x(),
+ m_topBarStatusBarMiddlePoint.y() + (topBarStatusBarMiddleSize.height()*0.8) );
+
+ update();
+}
+
+QSizeF TopBar::sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint) const
+{
+ //It's possible that m_topBarPixmap is not allocated yet,
+ //in this case default size is used for setting size hint
+ QHash<QString, QSize>sizes = (Theme::p()->theme() == Theme::Blue) ?
+ m_sizesBlue : m_sizesLime;
+
+ int height = !m_topBarPixmap.isNull() ?
+ m_topBarPixmap.height() : sizes["topbar.svg"].height();
+
+ switch (which)
+ {
+ case Qt::MinimumSize:
+ return QSizeF(-1, height);
+
+ case Qt::MaximumSize:
+ return QSizeF(-1, height);
+
+ default:
+ return QGraphicsWidget::sizeHint(which, constraint);
+ }
+}
+
+void TopBar::setDefaultSizes()
+{
+ m_sizesBlue["topbar.svg"] = QSize(356,96);
+ m_sizesBlue["topbar_horisontal.svg"] = QSize(636,96);
+ m_sizesBlue["user_default_icon.svg"] = QSize(68,68);
+ m_sizesBlue["user_status_online.svg"] = QSize(38,38);
+ m_sizesBlue["status_field_left.svg"] = QSize(14,24);
+ m_sizesBlue["status_field_right.svg"] = QSize(10,24);
+ m_sizesBlue["status_field_middle.svg"] = QSize(14,24);
+
+ m_sizesLime["topbar.svg"] = QSize(356,96);
+ m_sizesLime["topbar_horisontal.svg"] = QSize(636,96);
+ m_sizesLime["user_default_icon.svg"] = QSize(84,68);
+ m_sizesLime["user_status_online.svg"] = QSize(24,24);
+ m_sizesLime["status_field_left.svg"] = QSize(14,24);
+ m_sizesLime["status_field_right.svg"] = QSize(10,24);
+ m_sizesLime["status_field_middle.svg"] = QSize(14,24);
+}
+
+void TopBar::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+ QRect rect = m_topBarStatusBarMiddle.rect();
+ rect.moveTopLeft(m_topBarStatusBarMiddlePoint);
+ QPointF scenePoint = event->scenePos();
+ if(rect.contains(scenePoint.toPoint())) {
+ emit clicked();
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h
new file mode 100644
index 0000000000..69b235a4fe
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/topbar.h
@@ -0,0 +1,126 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the examples of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef __TOPBAR_H__
+#define __TOPBAR_H__
+
+#include <QObject>
+#include <QHash>
+
+#include "gvbwidget.h"
+
+class QPixmap;
+class QPoint;
+class QGraphicsView;
+class QFont;
+
+class TopBar : public GvbWidget
+{
+ Q_OBJECT
+
+public:
+ enum Orientation
+ {
+ Portrait,
+ Landscape,
+ None
+ };
+
+public:
+ TopBar(QGraphicsView* mainView, QGraphicsWidget* parent);
+ ~TopBar();
+
+public:
+ void paint( QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0 );
+ QRectF boundingRect() const;
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+ inline QPoint getStatusBarLocation() { return m_topBarStatusBarMiddlePoint +
+ m_topBarStatusBarMiddle.rect().bottomLeft(); }
+
+public slots:
+ void themeChange();
+
+protected:
+ void mousePressEvent(QGraphicsSceneMouseEvent *event);
+
+signals:
+ void clicked(bool checked = false);
+
+private:
+ QSizeF sizeHint(Qt::SizeHint which,
+ const QSizeF &constraint = QSizeF()) const;
+ void setDefaultSizes();
+
+
+private:
+ Q_DISABLE_COPY(TopBar)
+
+ QGraphicsView* m_mainView;
+ bool m_isLimeTheme;
+ Orientation m_orientation;
+
+ //Fonts
+ QFont m_titleFont;
+ QFont m_statusFont;
+
+ //Pixmaps
+ QPixmap m_topBarPixmap;
+ QPixmap m_topBarUserIcon;
+ QPixmap m_topBarUserStatus;
+ QPixmap m_topBarStatusBarLeft;
+ QPixmap m_topBarStatusBarRight;
+ QPixmap m_topBarStatusBarMiddle;
+
+ //Drawing points
+ QPoint m_topBarUserIconPoint;
+ QPoint m_topBarUserStatusPoint;
+ QPoint m_topBarStatusBarLeftPoint;
+ QPoint m_topBarStatusBarRightPoint;
+ QPoint m_topBarStatusBarMiddlePoint;
+ QPoint m_topBarStatusBarTextPoint;
+ QPoint m_topBarTitlePoint;
+
+ //Sizes
+ QHash<QString, QSize> m_sizesBlue;
+ QHash<QString, QSize> m_sizesLime;
+};
+
+#endif // __TOPBAR_H__
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp
new file mode 100644
index 0000000000..1aaa4afc28
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.cpp
@@ -0,0 +1,304 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "webview.h"
+#include "webview_p.h"
+#include <QtGui>
+
+static const int MotionEndWaitTime = 2000;
+static const int TileSideLength = 128;
+
+WebViewPrivate::WebViewPrivate(WebView *w)
+ : q(w)
+ , cache(0)
+{
+ web = new QGraphicsWebView;
+
+ web->setParentItem(q->viewport());
+
+ web->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ web->page()->mainFrame()->setScrollBarPolicy(
+ Qt::Horizontal, Qt::ScrollBarAlwaysOff);
+ web->page()->mainFrame()->setScrollBarPolicy(
+ Qt::Vertical, Qt::ScrollBarAlwaysOff);
+ web->setZValue(3);
+
+// cache = new WebViewCache(web);
+// web->setGraphicsEffect(cache);
+
+ adjustSize();
+}
+
+void WebViewPrivate::adjustSize()
+{
+ QSizeF contentSize = web->page()->mainFrame()->contentsSize();
+ QPointF pos = web->pos();
+
+ qreal w = qMax(contentSize.width(), q->viewport()->boundingRect().width());
+ qreal h = qMax(contentSize.height(), q->viewport()->boundingRect().height());
+
+ if (web->boundingRect().size() != QSizeF(w, h)) {
+ //qDebug() << "WebView: adjustSize:" << QSizeF(w, h);
+
+ web->resize(w, h);
+ web->setPos(pos);
+
+ if (w > q->viewport()->boundingRect().width())
+ q->horizontalScrollBar()->setSliderSize(w);
+ else
+ q->horizontalScrollBar()->setSliderSize(0.0);
+
+
+ if (h > q->viewport()->boundingRect().height())
+ q->verticalScrollBar()->setSliderSize(h);
+ else
+ q->verticalScrollBar()->setSliderSize(0.0);
+ }
+}
+
+void WebViewPrivate::_q_loadStarted()
+{
+ qDebug() << "WebView: load started";
+ adjustSize();
+}
+
+void WebViewPrivate::_q_loadProgress(int progress)
+{
+ Q_UNUSED(progress)
+// qDebug() << "WebView: load progress" << progress;
+ adjustSize();
+}
+
+void WebViewPrivate::_q_loadFinished(bool ok)
+{
+ qDebug() << "WebView: load finished" << (ok ? "ok" : "not ok");
+ adjustSize();
+}
+
+void WebViewPrivate::_q_viewportChanged(QGraphicsWidget* viewport)
+{
+ web->setParentItem(viewport);
+ viewport->setFlag(QGraphicsItem::ItemClipsChildrenToShape,
+ true);
+ adjustSize();
+}
+
+void WebViewPrivate::_q_motionEnded()
+{
+ motionTimer.stop();
+ qDebug() << "Motion ended";
+ q->prepareGeometryChange();
+}
+
+WebViewCache::WebViewCache(QGraphicsWebView *webView)
+ : m_webView(webView)
+{
+
+}
+
+WebViewCache::~WebViewCache()
+{
+}
+
+void WebViewCache::draw(QPainter * painter, QGraphicsEffectSource * source)
+{
+ const QGraphicsItem *item = source->graphicsItem();
+
+ QSizeF itemSize = item->boundingRect().size();
+
+ if (!qFuzzyCompare(itemSize.width(), m_itemSize.width()) ||
+ !qFuzzyCompare(itemSize.height(), m_itemSize.height())) {
+ qDebug() << "Refresh tile cache, for new size" << itemSize;
+
+ for (int i = 0; i < m_tilePixmaps.size(); i++) {
+ QPixmapCache::remove(m_tilePixmaps[i]);
+ }
+
+ m_tilePixmaps.clear();
+ m_tileRects.clear();
+
+ int itemWidth = itemSize.width() + 0.5;
+ int itemHeight = itemSize.height() + 0.5;
+
+ int tilesX = itemWidth / TileSideLength;
+ int tilesY = itemHeight / TileSideLength;
+
+ if ((itemWidth % TileSideLength) != 0) {
+ ++tilesX;
+ }
+
+ if ((itemHeight % TileSideLength) != 0) {
+ ++tilesY;
+ }
+
+ int tilesCount = tilesX * tilesY;
+
+ m_tilePixmaps.resize(tilesCount);
+ m_tileRects.resize(tilesCount);
+
+ for (int i = 0; i < tilesX; i++) {
+ for (int j = 0; j < tilesY; j++) {
+ int x = i * TileSideLength;
+ int y = j * TileSideLength;
+
+ m_tileRects[i + j * tilesX]
+ = QRectF(x, y, TileSideLength, TileSideLength);
+ }
+ }
+
+ m_itemSize = itemSize;
+ }
+
+ const QGraphicsItem *parentItem = item->parentItem();
+ QPointF itemPos = item->pos();
+ QRectF parentRect = parentItem->boundingRect();
+
+ for (int i = 0; i < m_tileRects.size(); i++) {
+ QRectF tileRect = m_tileRects[i].translated(itemPos);
+
+ if (!tileRect.intersects(parentRect) && !tileRect.contains(parentRect)) {
+ continue;
+ }
+
+ QPixmap tilePixmap;
+
+ if (!QPixmapCache::find(m_tilePixmaps[i], &tilePixmap)) {
+ tilePixmap = QPixmap(TileSideLength, TileSideLength);
+
+ QWebFrame *webFrame = m_webView->page()->mainFrame();
+
+ QPainter tilePainter(&tilePixmap);
+ tilePainter.translate(-m_tileRects[i].left(), -m_tileRects[i].top());
+ webFrame->render(&tilePainter, m_tileRects[i].toRect());
+ tilePainter.end();
+
+ m_tilePixmaps[i] = QPixmapCache::insert(tilePixmap);
+ }
+
+ tileRect = tileRect.translated(-itemPos);
+
+ painter->drawPixmap(tileRect.topLeft(), tilePixmap);
+ }
+}
+
+WebView::WebView(QGraphicsWidget *parent)
+ : AbstractScrollArea(parent)
+ , d(new WebViewPrivate(this))
+{
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ setContentsMargins(0, 0, 0, 0);
+ connect(d->web->page(), SIGNAL(loadStarted()),
+ this, SLOT(_q_loadStarted()));
+ connect(d->web->page(), SIGNAL(loadProgress(int)),
+ this, SLOT(_q_loadProgress(int)));
+ connect(d->web->page(), SIGNAL(loadFinished(bool)),
+ this, SLOT(_q_loadFinished(bool)));
+ connect(this, SIGNAL(viewportChanged(QGraphicsWidget*)),
+ this, SLOT(_q_viewportChanged(QGraphicsWidget*)));
+ connect(&d->motionTimer, SIGNAL(timeout()),
+ this, SLOT(_q_motionEnded()));
+}
+
+WebView::~WebView()
+{
+ d->web->setGraphicsEffect(0);
+ delete d->cache;
+}
+
+void WebView::setUrl(const QUrl& url)
+{
+ d->adjustSize();
+ d->web->setUrl(url);
+}
+
+void WebView::scrollContentsBy(qreal dx, qreal dy)
+{
+ if (qFuzzyCompare((float)dy, 0.0f) && qFuzzyCompare((float)dx, 0.0f))
+ return;
+
+ if (!d->motionTimer.isActive()) {
+ d->motionTimer.start(MotionEndWaitTime);
+ }
+
+ QSizeF contentSize = d->web->page()->mainFrame()->contentsSize();
+ QRectF viewportRect = viewport()->boundingRect();
+ QPointF pos = d->web->pos();
+
+ qreal w = qMax(contentSize.width(), viewportRect.width());
+ qreal h = qMax(contentSize.height(), viewportRect.height());
+
+ qreal minx = qMin(0.0f, (float) -(w - viewportRect.width()));
+ qreal miny = qMin(0.0f, (float) -(h - viewportRect.height()));
+
+ qreal x = d->web->pos().x() - dx;
+
+ if (x < minx)
+ x = minx;
+ else if (x > 0)
+ x = 0.0;
+
+ qreal y = d->web->pos().y() - dy;
+
+ if (y < miny)
+ y = miny;
+ else if (y > 0)
+ y = 0.0;
+
+ d->web->setPos(x, y);
+}
+
+QSizeF WebView::sizeHint(Qt::SizeHint which, const QSizeF & constraint) const
+{
+ if (which == Qt::PreferredSize) {
+ QSizeF contentSize = d->web->page()->mainFrame()->contentsSize();
+ return contentSize;
+ }
+
+ return AbstractScrollArea::sizeHint(which, constraint);
+}
+
+void WebView::resizeEvent(QGraphicsSceneResizeEvent *event)
+{
+ AbstractScrollArea::resizeEvent(event);
+ d->adjustSize();
+}
+
+#include "moc_webview.cpp"
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h
new file mode 100644
index 0000000000..12127a016e
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview.h
@@ -0,0 +1,81 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef WEBVIEW_H
+#define WEBVIEW_H
+
+#include "scrollbar.h"
+#include "abstractscrollarea.h"
+
+class WebViewPrivate;
+
+class WebView : public AbstractScrollArea
+{
+ Q_OBJECT
+
+public:
+
+ WebView(QGraphicsWidget *parent = 0);
+ ~WebView();
+
+public:
+
+ void setUrl(const QUrl& url);
+
+private:
+
+ void scrollContentsBy(qreal dx, qreal dy);
+ void resizeEvent(QGraphicsSceneResizeEvent *event);
+ QSizeF sizeHint(Qt::SizeHint which, const QSizeF & constraint) const;
+
+private:
+
+ Q_PRIVATE_SLOT(d, void _q_loadStarted())
+ Q_PRIVATE_SLOT(d, void _q_loadProgress(int))
+ Q_PRIVATE_SLOT(d, void _q_loadFinished(bool))
+ Q_PRIVATE_SLOT(d, void _q_viewportChanged(QGraphicsWidget*))
+ Q_PRIVATE_SLOT(d, void _q_motionEnded())
+
+ WebViewPrivate *d;
+ friend class WebViewPrivate;
+};
+
+#endif // WEBVIEW_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h
new file mode 100644
index 0000000000..69d2afd5a7
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/GraphicsViewBenchmark/widgets/webview_p.h
@@ -0,0 +1,99 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef WEBVIEW_P_H
+#define WEBVIEW_P_H
+
+#include "webview.h"
+#include <QtWebKit/qgraphicswebview.h>
+#include <QtWebKit/qwebpage.h>
+#include <QtWebKit/qwebframe.h>
+#include <QGraphicsEffect>
+#include <QPainter>
+#include <QPixmapCache>
+#include <QTimer>
+#include <QDebug>
+
+class WebViewCache;
+
+class WebViewPrivate {
+public:
+
+ WebViewPrivate(WebView *w);
+ void adjustSize();
+ void _q_loadStarted();
+ void _q_loadProgress(int);
+ void _q_loadFinished(bool);
+ void _q_viewportChanged(QGraphicsWidget*);
+ void _q_motionEnded();
+
+ WebView *q;
+ QGraphicsWebView *web;
+ WebViewCache *cache;
+ QTimer motionTimer;
+};
+
+class WebViewCache : public QGraphicsEffect
+{
+ Q_OBJECT
+
+public:
+
+ WebViewCache(QGraphicsWebView *webView);
+ virtual ~WebViewCache();
+
+public:
+
+ void refresh();
+
+ void draw(QPainter * painter, QGraphicsEffectSource * source);
+
+private:
+
+ QVector<QRectF> m_tileRects;
+ QVector<QPixmapCache::Key> m_tilePixmaps;
+ QSizeF m_itemSize;
+ QGraphicsWebView *m_webView;
+
+ friend class WebViewPrivate;
+};
+
+#endif // WEBVIEW_P_H
diff --git a/tests/benchmarks/gui/graphicsview/functional/functional.pro b/tests/benchmarks/gui/graphicsview/functional/functional.pro
new file mode 100644
index 0000000000..f8e122be89
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/functional/functional.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ GraphicsViewBenchmark
diff --git a/tests/benchmarks/gui/graphicsview/graphicsview.pro b/tests/benchmarks/gui/graphicsview/graphicsview.pro
new file mode 100644
index 0000000000..e4fed197e9
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/graphicsview.pro
@@ -0,0 +1,8 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ functional \
+ qgraphicsanchorlayout \
+ qgraphicsitem \
+ qgraphicsscene \
+ qgraphicsview \
+ qgraphicswidget
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/qgraphicsanchorlayout.pro b/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/qgraphicsanchorlayout.pro
new file mode 100644
index 0000000000..3ede6e8c85
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/qgraphicsanchorlayout.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicsanchorlayout
+
+SOURCES += tst_qgraphicsanchorlayout.cpp
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp
new file mode 100644
index 0000000000..e879b3efb9
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp
@@ -0,0 +1,433 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QtTest>
+#include <QtGui/qgraphicsanchorlayout.h>
+#include <QtGui/qgraphicslinearlayout.h>
+#include <QtGui/qgraphicswidget.h>
+#include <QtGui/qgraphicsview.h>
+
+class tst_QGraphicsAnchorLayout : public QObject
+{
+ Q_OBJECT
+public:
+ tst_QGraphicsAnchorLayout() {}
+ ~tst_QGraphicsAnchorLayout() {}
+
+private slots:
+ void s60_hard_complex_data();
+ void s60_hard_complex();
+ void linearVsAnchorSizeHints_data();
+ void linearVsAnchorSizeHints();
+ void linearVsAnchorSetGeometry_data();
+ void linearVsAnchorSetGeometry();
+ void linearVsAnchorNested_data();
+ void linearVsAnchorNested();
+};
+
+
+class RectWidget : public QGraphicsWidget
+{
+public:
+ RectWidget(QGraphicsItem *parent = 0) : QGraphicsWidget(parent){}
+
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
+ {
+ Q_UNUSED(option);
+ Q_UNUSED(widget);
+ painter->drawRoundRect(rect());
+ painter->drawLine(rect().topLeft(), rect().bottomRight());
+ painter->drawLine(rect().bottomLeft(), rect().topRight());
+ }
+};
+
+static QGraphicsWidget *createItem(const QSizeF &minimum = QSizeF(100.0, 100.0),
+ const QSizeF &preferred = QSize(150.0, 100.0),
+ const QSizeF &maximum = QSizeF(200.0, 100.0),
+ const QString &name = QString())
+{
+ QGraphicsWidget *w = new RectWidget;
+ w->setMinimumSize(minimum);
+ w->setPreferredSize(preferred);
+ w->setMaximumSize(maximum);
+ w->setData(0, name);
+ return w;
+}
+
+static void setAnchor(QGraphicsAnchorLayout *l,
+ QGraphicsLayoutItem *firstItem,
+ Qt::AnchorPoint firstEdge,
+ QGraphicsLayoutItem *secondItem,
+ Qt::AnchorPoint secondEdge,
+ qreal spacing)
+{
+ QGraphicsAnchor *anchor = l->addAnchor(firstItem, firstEdge, secondItem, secondEdge);
+ anchor->setSpacing(spacing);
+}
+
+void tst_QGraphicsAnchorLayout::s60_hard_complex_data()
+{
+ QTest::addColumn<int>("whichSizeHint");
+ QTest::newRow("minimumSizeHint")
+ << int(Qt::MinimumSize);
+ QTest::newRow("preferredSizeHint")
+ << int(Qt::PreferredSize);
+ QTest::newRow("maximumSizeHint")
+ << int(Qt::MaximumSize);
+ // Add it as a reference to see how much overhead the body of effectiveSizeHint takes.
+ QTest::newRow("noSizeHint")
+ << -1;
+}
+
+void tst_QGraphicsAnchorLayout::s60_hard_complex()
+{
+ QFETCH(int, whichSizeHint);
+
+ // Test for "hard" complex case, taken from wiki
+ // https://cwiki.nokia.com/S60QTUI/AnchorLayoutComplexCases
+ QSizeF min(0, 10);
+ QSizeF pref(50, 10);
+ QSizeF max(100, 10);
+
+ QGraphicsWidget *a = createItem(min, pref, max, "a");
+ QGraphicsWidget *b = createItem(min, pref, max, "b");
+ QGraphicsWidget *c = createItem(min, pref, max, "c");
+ QGraphicsWidget *d = createItem(min, pref, max, "d");
+ QGraphicsWidget *e = createItem(min, pref, max, "e");
+ QGraphicsWidget *f = createItem(min, pref, max, "f");
+ QGraphicsWidget *g = createItem(min, pref, max, "g");
+
+ QGraphicsAnchorLayout *l = new QGraphicsAnchorLayout;
+ l->setContentsMargins(0, 0, 0, 0);
+
+ //<!-- Trunk -->
+ setAnchor(l, l, Qt::AnchorLeft, a, Qt::AnchorLeft, 10);
+ setAnchor(l, a, Qt::AnchorRight, b, Qt::AnchorLeft, 10);
+ setAnchor(l, b, Qt::AnchorRight, c, Qt::AnchorLeft, 10);
+ setAnchor(l, c, Qt::AnchorRight, d, Qt::AnchorLeft, 10);
+ setAnchor(l, d, Qt::AnchorRight, l, Qt::AnchorRight, 10);
+
+ //<!-- Above trunk -->
+ setAnchor(l, b, Qt::AnchorLeft, e, Qt::AnchorLeft, 10);
+ setAnchor(l, e, Qt::AnchorRight, d, Qt::AnchorLeft, 10);
+
+ //<!-- Below trunk -->
+ setAnchor(l, a, Qt::AnchorHorizontalCenter, g, Qt::AnchorLeft, 10);
+ setAnchor(l, g, Qt::AnchorRight, f, Qt::AnchorHorizontalCenter, 10);
+ setAnchor(l, c, Qt::AnchorLeft, f, Qt::AnchorLeft, 10);
+ setAnchor(l, f, Qt::AnchorRight, d, Qt::AnchorRight, 10);
+
+ //<!-- vertical is simpler -->
+ setAnchor(l, l, Qt::AnchorTop, e, Qt::AnchorTop, 0);
+ setAnchor(l, e, Qt::AnchorBottom, a, Qt::AnchorTop, 0);
+ setAnchor(l, e, Qt::AnchorBottom, b, Qt::AnchorTop, 0);
+ setAnchor(l, e, Qt::AnchorBottom, c, Qt::AnchorTop, 0);
+ setAnchor(l, e, Qt::AnchorBottom, d, Qt::AnchorTop, 0);
+ setAnchor(l, a, Qt::AnchorBottom, f, Qt::AnchorTop, 0);
+ setAnchor(l, a, Qt::AnchorBottom, b, Qt::AnchorBottom, 0);
+ setAnchor(l, a, Qt::AnchorBottom, c, Qt::AnchorBottom, 0);
+ setAnchor(l, a, Qt::AnchorBottom, d, Qt::AnchorBottom, 0);
+ setAnchor(l, f, Qt::AnchorBottom, g, Qt::AnchorTop, 0);
+ setAnchor(l, g, Qt::AnchorBottom, l, Qt::AnchorBottom, 0);
+
+ // It won't query the size hint if it already has a size set.
+ // If only one of the sizes is unset it will query sizeHint only of for that hint type.
+ l->setMinimumSize(60,40);
+ l->setPreferredSize(220,40);
+ l->setMaximumSize(240,40);
+
+ switch (whichSizeHint) {
+ case Qt::MinimumSize:
+ l->setMinimumSize(-1, -1);
+ break;
+ case Qt::PreferredSize:
+ l->setPreferredSize(-1, -1);
+ break;
+ case Qt::MaximumSize:
+ l->setMaximumSize(-1, -1);
+ break;
+ default:
+ break;
+ }
+
+ QSizeF sizeHint;
+ // warm up instruction cache
+ l->invalidate();
+ sizeHint = l->effectiveSizeHint((Qt::SizeHint)whichSizeHint);
+ // ...then measure...
+ QBENCHMARK {
+ l->invalidate();
+ sizeHint = l->effectiveSizeHint((Qt::SizeHint)whichSizeHint);
+ }
+}
+
+static QGraphicsLayout* createLayouts(int whichLayout)
+{
+ QSizeF min(0, 10);
+ QSizeF pref(50, 10);
+ QSizeF max(100, 10);
+
+ QGraphicsWidget *a = createItem(min, pref, max, "a");
+ QGraphicsWidget *b = createItem(min, pref, max, "b");
+ QGraphicsWidget *c = createItem(min, pref, max, "c");
+ QGraphicsWidget *d = createItem(min, pref, max, "d");
+
+ QGraphicsLayout *l;
+ if (whichLayout == 0) {
+ l = new QGraphicsLinearLayout;
+ QGraphicsLinearLayout *linear = static_cast<QGraphicsLinearLayout *>(l);
+ linear->setContentsMargins(0, 0, 0, 0);
+
+ linear->addItem(a);
+ linear->addItem(b);
+ linear->addItem(c);
+ linear->addItem(d);
+ } else {
+ l = new QGraphicsAnchorLayout;
+ QGraphicsAnchorLayout *anchor = static_cast<QGraphicsAnchorLayout *>(l);
+ anchor->setContentsMargins(0, 0, 0, 0);
+
+ // Horizontal
+ setAnchor(anchor, anchor, Qt::AnchorLeft, a, Qt::AnchorLeft, 0);
+ setAnchor(anchor, a, Qt::AnchorRight, b, Qt::AnchorLeft, 0);
+ setAnchor(anchor, b, Qt::AnchorRight, c, Qt::AnchorLeft, 0);
+ setAnchor(anchor, c, Qt::AnchorRight, d, Qt::AnchorLeft, 0);
+ setAnchor(anchor, d, Qt::AnchorRight, anchor, Qt::AnchorRight, 0);
+
+ // Vertical
+ anchor->addAnchors(anchor, a, Qt::Vertical);
+ anchor->addAnchors(anchor, b, Qt::Vertical);
+ anchor->addAnchors(anchor, c, Qt::Vertical);
+ anchor->addAnchors(anchor, d, Qt::Vertical);
+ }
+
+ return l;
+}
+
+void tst_QGraphicsAnchorLayout::linearVsAnchorSizeHints_data()
+{
+ QTest::addColumn<int>("whichLayout");
+ QTest::addColumn<int>("whichSizeHint");
+
+ QTest::newRow("QGraphicsLinearLayout::minimum")
+ << 0 << int(Qt::MinimumSize);
+ QTest::newRow("QGraphicsLinearLayout::preferred")
+ << 0 << int(Qt::PreferredSize);
+ QTest::newRow("QGraphicsLinearLayout::maximum")
+ << 0 << int(Qt::MaximumSize);
+ QTest::newRow("QGraphicsLinearLayout::noSizeHint")
+ << 0 << -1;
+
+ QTest::newRow("QGraphicsAnchorLayout::minimum")
+ << 1 << int(Qt::MinimumSize);
+ QTest::newRow("QGraphicsAnchorLayout::preferred")
+ << 1 << int(Qt::PreferredSize);
+ QTest::newRow("QGraphicsAnchorLayout::maximum")
+ << 1 << int(Qt::MaximumSize);
+ QTest::newRow("QGraphicsAnchorLayout::noSizeHint")
+ << 1 << -1;
+}
+
+void tst_QGraphicsAnchorLayout::linearVsAnchorSizeHints()
+{
+ QFETCH(int, whichSizeHint);
+ QFETCH(int, whichLayout);
+
+ QGraphicsLayout *l = createLayouts(whichLayout);
+
+ QSizeF sizeHint;
+ // warm up instruction cache
+ l->invalidate();
+ sizeHint = l->effectiveSizeHint((Qt::SizeHint)whichSizeHint);
+ // ...then measure...
+
+ QBENCHMARK {
+ l->invalidate();
+ sizeHint = l->effectiveSizeHint((Qt::SizeHint)whichSizeHint);
+ }
+}
+
+void tst_QGraphicsAnchorLayout::linearVsAnchorSetGeometry_data()
+{
+ QTest::addColumn<int>("whichLayout");
+
+ QTest::newRow("QGraphicsLinearLayout")
+ << 0;
+ QTest::newRow("QGraphicsAnchorLayout")
+ << 1;
+}
+
+void tst_QGraphicsAnchorLayout::linearVsAnchorSetGeometry()
+{
+ QFETCH(int, whichLayout);
+
+ QGraphicsLayout *l = createLayouts(whichLayout);
+
+ QRectF sizeHint;
+ qreal maxWidth;
+ qreal increment;
+ // warm up instruction cache
+ l->invalidate();
+ sizeHint.setSize(l->effectiveSizeHint(Qt::MinimumSize));
+ maxWidth = l->effectiveSizeHint(Qt::MaximumSize).width();
+ increment = (maxWidth - sizeHint.width()) / 100;
+ l->setGeometry(sizeHint);
+ // ...then measure...
+
+ QBENCHMARK {
+ l->invalidate();
+ for (qreal width = sizeHint.width(); width <= maxWidth; width += increment) {
+ sizeHint.setWidth(width);
+ l->setGeometry(sizeHint);
+ }
+ }
+}
+
+void tst_QGraphicsAnchorLayout::linearVsAnchorNested_data()
+{
+ QTest::addColumn<int>("whichLayout");
+ QTest::newRow("LinearLayout")
+ << 0;
+ QTest::newRow("AnchorLayout setup with null-anchors knot")
+ << 1;
+ QTest::newRow("AnchorLayout setup easy to simplificate")
+ << 2;
+}
+
+void tst_QGraphicsAnchorLayout::linearVsAnchorNested()
+{
+ QFETCH(int, whichLayout);
+
+ QSizeF min(10, 10);
+ QSizeF pref(80, 80);
+ QSizeF max(150, 150);
+
+ QGraphicsWidget *a = createItem(min, pref, max, "a");
+ QGraphicsWidget *b = createItem(min, pref, max, "b");
+ QGraphicsWidget *c = createItem(min, pref, max, "c");
+ QGraphicsWidget *d = createItem(min, pref, max, "d");
+
+ QGraphicsLayout *layout;
+
+ if (whichLayout == 0) {
+ QGraphicsLinearLayout *linear1 = new QGraphicsLinearLayout;
+ QGraphicsLinearLayout *linear2 = new QGraphicsLinearLayout(Qt::Vertical);
+ QGraphicsLinearLayout *linear3 = new QGraphicsLinearLayout;
+
+ linear1->addItem(a);
+ linear1->addItem(linear2);
+ linear2->addItem(b);
+ linear2->addItem(linear3);
+ linear3->addItem(c);
+ linear3->addItem(d);
+
+ layout = linear1;
+ } else if (whichLayout == 1) {
+ QGraphicsAnchorLayout *anchor = new QGraphicsAnchorLayout;
+
+ // A
+ anchor->addCornerAnchors(a, Qt::TopLeftCorner, anchor, Qt::TopLeftCorner);
+ anchor->addCornerAnchors(a, Qt::TopRightCorner, b, Qt::TopLeftCorner);
+ anchor->addCornerAnchors(a, Qt::BottomLeftCorner, anchor, Qt::BottomLeftCorner);
+ anchor->addCornerAnchors(a, Qt::BottomRightCorner, c, Qt::BottomLeftCorner);
+
+ // B
+ anchor->addCornerAnchors(b, Qt::TopRightCorner, anchor, Qt::TopRightCorner);
+ anchor->addCornerAnchors(b, Qt::BottomLeftCorner, c, Qt::TopLeftCorner);
+ anchor->addCornerAnchors(b, Qt::BottomRightCorner, d, Qt::TopRightCorner);
+
+ // C
+ anchor->addCornerAnchors(c, Qt::TopRightCorner, d, Qt::TopLeftCorner);
+ anchor->addCornerAnchors(c, Qt::BottomRightCorner, d, Qt::BottomLeftCorner);
+
+ // D
+ anchor->addCornerAnchors(d, Qt::BottomRightCorner, anchor, Qt::BottomRightCorner);
+
+ layout = anchor;
+ } else {
+ QGraphicsAnchorLayout *anchor = new QGraphicsAnchorLayout;
+
+ // A
+ anchor->addAnchor(a, Qt::AnchorLeft, anchor, Qt::AnchorLeft);
+ anchor->addAnchors(a, anchor, Qt::Vertical);
+ anchor->addAnchor(a, Qt::AnchorRight, b, Qt::AnchorLeft);
+ anchor->addAnchor(a, Qt::AnchorRight, c, Qt::AnchorLeft);
+
+ // B
+ anchor->addAnchor(b, Qt::AnchorTop, anchor, Qt::AnchorTop);
+ anchor->addAnchor(b, Qt::AnchorRight, anchor, Qt::AnchorRight);
+ anchor->addAnchor(b, Qt::AnchorBottom, c, Qt::AnchorTop);
+ anchor->addAnchor(b, Qt::AnchorBottom, d, Qt::AnchorTop);
+
+ // C
+ anchor->addAnchor(c, Qt::AnchorRight, d, Qt::AnchorLeft);
+ anchor->addAnchor(c, Qt::AnchorBottom, anchor, Qt::AnchorBottom);
+
+ // D
+ anchor->addAnchor(d, Qt::AnchorRight, anchor, Qt::AnchorRight);
+ anchor->addAnchor(d, Qt::AnchorBottom, anchor, Qt::AnchorBottom);
+
+ layout = anchor;
+ }
+
+ QSizeF sizeHint;
+ // warm up instruction cache
+ layout->invalidate();
+ sizeHint = layout->effectiveSizeHint(Qt::PreferredSize);
+
+ // ...then measure...
+ QBENCHMARK {
+ // To ensure that all sizeHints caches are invalidated in
+ // the LinearLayout setup, we must call updateGeometry on the
+ // children. If we didn't, only the top level layout would be
+ // re-calculated.
+ static_cast<QGraphicsLayoutItem *>(a)->updateGeometry();
+ static_cast<QGraphicsLayoutItem *>(b)->updateGeometry();
+ static_cast<QGraphicsLayoutItem *>(c)->updateGeometry();
+ static_cast<QGraphicsLayoutItem *>(d)->updateGeometry();
+ layout->invalidate();
+ sizeHint = layout->effectiveSizeHint(Qt::PreferredSize);
+ }
+}
+
+QTEST_MAIN(tst_QGraphicsAnchorLayout)
+
+#include "tst_qgraphicsanchorlayout.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsitem/qgraphicsitem.pro b/tests/benchmarks/gui/graphicsview/qgraphicsitem/qgraphicsitem.pro
new file mode 100644
index 0000000000..d4935c0c6a
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsitem/qgraphicsitem.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicsitem
+
+SOURCES += tst_qgraphicsitem.cpp
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp
new file mode 100644
index 0000000000..53adf66852
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp
@@ -0,0 +1,246 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QGraphicsItem>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+
+//TESTED_FILES=
+
+class tst_QGraphicsItem : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QGraphicsItem();
+ virtual ~tst_QGraphicsItem();
+
+public slots:
+ void initTestCase();
+ void init();
+ void cleanup();
+
+private slots:
+ void setParentItem();
+ void setParentItem_deep();
+ void setParentItem_deep_reversed();
+ void deleteItemWithManyChildren();
+ void setPos_data();
+ void setPos();
+ void setTransform_data();
+ void setTransform();
+ void rotate();
+ void scale();
+ void shear();
+ void translate();
+};
+
+tst_QGraphicsItem::tst_QGraphicsItem()
+{
+}
+
+tst_QGraphicsItem::~tst_QGraphicsItem()
+{
+}
+
+static inline void processEvents()
+{
+ QApplication::flush();
+ QApplication::processEvents();
+ QApplication::processEvents();
+}
+
+void tst_QGraphicsItem::initTestCase()
+{
+ QApplication::flush();
+ QTest::qWait(1500);
+ processEvents();
+}
+
+void tst_QGraphicsItem::init()
+{
+ processEvents();
+}
+
+void tst_QGraphicsItem::cleanup()
+{
+}
+
+void tst_QGraphicsItem::setParentItem()
+{
+ QBENCHMARK {
+ QGraphicsRectItem rect;
+ QGraphicsRectItem *childRect = new QGraphicsRectItem;
+ childRect->setParentItem(&rect);
+ }
+}
+
+void tst_QGraphicsItem::setParentItem_deep()
+{
+ QBENCHMARK {
+ QGraphicsRectItem rect;
+ QGraphicsRectItem *lastRect = &rect;
+ for (int i = 0; i < 10; ++i) {
+ QGraphicsRectItem *childRect = new QGraphicsRectItem;
+ childRect->setParentItem(lastRect);
+ lastRect = childRect;
+ }
+ QGraphicsItem *first = rect.children().first();
+ first->setParentItem(0);
+ }
+}
+
+void tst_QGraphicsItem::setParentItem_deep_reversed()
+{
+ QBENCHMARK {
+ QGraphicsRectItem *lastRect = new QGraphicsRectItem;
+ for (int i = 0; i < 100; ++i) {
+ QGraphicsRectItem *parentRect = new QGraphicsRectItem;
+ lastRect->setParentItem(parentRect);
+ lastRect = parentRect;
+ }
+ delete lastRect;
+ }
+}
+
+void tst_QGraphicsItem::deleteItemWithManyChildren()
+{
+ QBENCHMARK {
+ QGraphicsRectItem *rect = new QGraphicsRectItem;
+ for (int i = 0; i < 1000; ++i)
+ new QGraphicsRectItem(rect);
+ delete rect;
+ }
+}
+
+void tst_QGraphicsItem::setPos_data()
+{
+ QTest::addColumn<QPointF>("pos");
+
+ QTest::newRow("0, 0") << QPointF(0, 0);
+ QTest::newRow("10, 10") << QPointF(10, 10);
+ QTest::newRow("-10, -10") << QPointF(-10, -10);
+}
+
+void tst_QGraphicsItem::setPos()
+{
+ QFETCH(QPointF, pos);
+
+ QGraphicsScene scene;
+ QGraphicsRectItem *rect = scene.addRect(QRectF(0, 0, 100, 100));
+ processEvents();
+
+ QBENCHMARK {
+ rect->setPos(10, 10);
+ }
+}
+
+void tst_QGraphicsItem::setTransform_data()
+{
+ QTest::addColumn<QTransform>("transform");
+
+ QTest::newRow("rotate 45z") << QTransform().rotate(45);
+ QTest::newRow("scale 2x2") << QTransform().scale(2, 2);
+ QTest::newRow("translate 100, 100") << QTransform().translate(100, 100);
+ QTest::newRow("rotate 45x 45y 45z") << QTransform().rotate(45, Qt::XAxis)
+ .rotate(45, Qt::YAxis).rotate(45, Qt::ZAxis);
+}
+
+void tst_QGraphicsItem::setTransform()
+{
+ QFETCH(QTransform, transform);
+
+ QGraphicsScene scene;
+ QGraphicsRectItem *item = scene.addRect(QRectF(0, 0, 100, 100));
+ processEvents();
+
+ QBENCHMARK {
+ item->setTransform(transform);
+ }
+}
+
+void tst_QGraphicsItem::rotate()
+{
+ QGraphicsScene scene;
+ QGraphicsItem *item = scene.addRect(QRectF(0, 0, 100, 100));
+ processEvents();
+
+ QBENCHMARK {
+ item->rotate(45);
+ }
+}
+
+void tst_QGraphicsItem::scale()
+{
+ QGraphicsScene scene;
+ QGraphicsItem *item = scene.addRect(QRectF(0, 0, 100, 100));
+ processEvents();
+
+ QBENCHMARK {
+ item->scale(2, 2);
+ }
+}
+
+void tst_QGraphicsItem::shear()
+{
+ QGraphicsScene scene;
+ QGraphicsItem *item = scene.addRect(QRectF(0, 0, 100, 100));
+ processEvents();
+
+ QBENCHMARK {
+ item->shear(1.5, 1.5);
+ }
+}
+
+void tst_QGraphicsItem::translate()
+{
+ QGraphicsScene scene;
+ QGraphicsItem *item = scene.addRect(QRectF(0, 0, 100, 100));
+ processEvents();
+
+ QBENCHMARK {
+ item->translate(100, 100);
+ }
+}
+
+QTEST_MAIN(tst_QGraphicsItem)
+#include "tst_qgraphicsitem.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro
new file mode 100644
index 0000000000..ff85fe8e00
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicslinearlayout
+
+SOURCES += tst_qgraphicslinearlayout.cpp
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
new file mode 100644
index 0000000000..981e03ca19
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
@@ -0,0 +1,133 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QtTest>
+#include <QtGui/qgraphicslinearlayout.h>
+#include <QtGui/qgraphicswidget.h>
+#include <QtGui/qgraphicsview.h>
+
+class tst_QGraphicsLinearLayout : public QObject
+{
+ Q_OBJECT
+public:
+ tst_QGraphicsLinearLayout() {}
+ ~tst_QGraphicsLinearLayout() {}
+
+private slots:
+ void heightForWidth_data();
+ void heightForWidth();
+};
+
+
+struct MySquareWidget : public QGraphicsWidget
+{
+ MySquareWidget() {}
+ virtual QSizeF sizeHint ( Qt::SizeHint which, const QSizeF & constraint = QSizeF() ) const
+ {
+ if (which != Qt::PreferredSize)
+ return QGraphicsWidget::sizeHint(which, constraint);
+ if (constraint.width() < 0)
+ return QGraphicsWidget::sizeHint(which, constraint);
+ return QSizeF(constraint.width(), constraint.width());
+ }
+};
+
+void tst_QGraphicsLinearLayout::heightForWidth_data()
+{
+ QTest::addColumn<bool>("hfw");
+ QTest::addColumn<bool>("nested");
+
+ QTest::newRow("hfw") << true << false;
+ QTest::newRow("hfw, nested") << true << true;
+ QTest::newRow("not hfw") << false << false;
+ QTest::newRow("not hfw, nested") << false << true;
+}
+
+void tst_QGraphicsLinearLayout::heightForWidth()
+{
+ QFETCH(bool, hfw);
+ QFETCH(bool, nested);
+
+ QGraphicsScene scene;
+ QGraphicsWidget *form = new QGraphicsWidget;
+ scene.addItem(form);
+
+ QGraphicsLinearLayout *outerlayout = 0;
+ if (nested) {
+ outerlayout = new QGraphicsLinearLayout(form);
+ for (int i = 0; i < 8; i++) {
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
+ outerlayout->addItem(layout);
+ outerlayout = layout;
+ }
+ }
+
+ QGraphicsLinearLayout *qlayout = 0;
+ qlayout = new QGraphicsLinearLayout(Qt::Vertical);
+ if (nested)
+ outerlayout->addItem(qlayout);
+ else
+ form->setLayout(qlayout);
+
+ MySquareWidget *widget = new MySquareWidget;
+ for (int i = 0; i < 1; i++) {
+ widget = new MySquareWidget;
+ QSizePolicy sizepolicy = widget->sizePolicy();
+ sizepolicy.setHeightForWidth(hfw);
+ widget->setSizePolicy(sizepolicy);
+ qlayout->addItem(widget);
+ }
+ // make sure only one iteration is done.
+ // run with tst_QGraphicsLinearLayout.exe "heightForWidth" -tickcounter -iterations 6
+ // this will iterate 6 times the whole test, (not only the benchmark)
+ // which should reduce warmup time and give a realistic picture of the performance of
+ // effectiveSizeHint()
+ QSizeF constraint(hfw ? 100 : -1, -1);
+ QBENCHMARK {
+ (void)form->effectiveSizeHint(Qt::PreferredSize, constraint);
+ }
+
+}
+
+
+QTEST_MAIN(tst_QGraphicsLinearLayout)
+
+#include "tst_qgraphicslinearlayout.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsscene/qgraphicsscene.pro b/tests/benchmarks/gui/graphicsview/qgraphicsscene/qgraphicsscene.pro
new file mode 100644
index 0000000000..1b7a5dc641
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsscene/qgraphicsscene.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicsscene
+
+SOURCES += tst_qgraphicsscene.cpp
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp
new file mode 100644
index 0000000000..f313eeeeeb
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp
@@ -0,0 +1,259 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QGraphicsItem>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+
+//TESTED_FILES=
+
+class tst_QGraphicsScene : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QGraphicsScene();
+ virtual ~tst_QGraphicsScene();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void construct();
+ void addItem_data();
+ void addItem();
+ void itemAt_data();
+ void itemAt();
+ void initialShow();
+};
+
+tst_QGraphicsScene::tst_QGraphicsScene()
+{
+}
+
+tst_QGraphicsScene::~tst_QGraphicsScene()
+{
+}
+
+static inline void processEvents()
+{
+ QApplication::flush();
+ QApplication::processEvents();
+ QApplication::processEvents();
+}
+
+void tst_QGraphicsScene::init()
+{
+ processEvents();
+}
+
+void tst_QGraphicsScene::cleanup()
+{
+}
+
+void tst_QGraphicsScene::construct()
+{
+ QBENCHMARK {
+ QGraphicsScene scene;
+ }
+}
+
+void tst_QGraphicsScene::addItem_data()
+{
+ QTest::addColumn<int>("indexMethod");
+ QTest::addColumn<QRectF>("sceneRect");
+ QTest::addColumn<int>("numItems_X");
+ QTest::addColumn<int>("numItems_Y");
+ QTest::addColumn<int>("itemType");
+ QTest::addColumn<QRectF>("itemRect");
+
+ QTest::newRow("null") << 0 << QRectF() << 0 << 0 << 0 << QRectF();
+ QTest::newRow("0 QRectF() 10 x 10 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF() << 10 << 10 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 25 x 25 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF() << 25 << 25 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 100 x 100 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF() << 100 << 100 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 250 x 250 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF() << 250 << 250 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 10 x 10 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF() << 10 << 10 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 25 x 25 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF() << 25 << 25 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 100 x 100 QGraphicsEllipseItem (0,0,10,0)") << 0 << QRectF() << 100 << 100 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 250 x 250 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF() << 250 << 250 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 10 x 10 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF(0, 0, 100, 100) << 10 << 10 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 25 x 25 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF(0, 0, 250, 250) << 25 << 25 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 100 x 100 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF(0, 0, 1000, 1000) << 100 << 100 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 250 x 250 QGraphicsRectItem (0,0,10,10)") << 0 << QRectF(0, 0, 2500, 2500) << 250 << 250 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 10 x 10 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF(0, 0, 100, 100) << 10 << 10 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 25 x 25 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF(0, 0, 250, 250) << 25 << 25 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 100 x 100 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF(0, 0, 1000, 1000) << 100 << 100 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("0 QRectF() 250 x 250 QGraphicsEllipseItem (0,0,10,10)") << 0 << QRectF(0, 0, 2500, 2500) << 250 << 250 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 10 x 10 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF() << 10 << 10 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 25 x 25 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF() << 25 << 25 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 100 x 100 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF() << 100 << 100 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 250 x 250 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF() << 250 << 250 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 10 x 10 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF() << 10 << 10 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 25 x 25 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF() << 25 << 25 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 100 x 100 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF() << 100 << 100 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 250 x 250 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF() << 250 << 250 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 10 x 10 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF(0, 0, 100, 100) << 10 << 10 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 25 x 25 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF(0, 0, 250, 250) << 25 << 25 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 100 x 100 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF(0, 0, 1000, 1000) << 100 << 100 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 250 x 250 QGraphicsRectItem (0,0,10,10)") << 1 << QRectF(0, 0, 2500, 2500) << 250 << 250 << int(QGraphicsRectItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 10 x 10 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF(0, 0, 100, 100) << 10 << 10 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 25 x 25 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF(0, 0, 250, 250) << 25 << 25 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 100 x 100 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF(0, 0, 1000, 1000) << 100 << 100 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+ QTest::newRow("1 QRectF() 250 x 250 QGraphicsEllipseItem (0,0,10,10)") << 1 << QRectF(0, 0, 2500, 2500) << 250 << 250 << int(QGraphicsEllipseItem::Type) << QRectF(0, 0, 10, 10);
+}
+
+void tst_QGraphicsScene::addItem()
+{
+ QFETCH(int, indexMethod);
+ QFETCH(QRectF, sceneRect);
+ QFETCH(int, numItems_X);
+ QFETCH(int, numItems_Y);
+ QFETCH(int, itemType);
+ QFETCH(QRectF, itemRect);
+
+ QGraphicsScene scene;
+ scene.setItemIndexMethod(indexMethod ? QGraphicsScene::BspTreeIndex : QGraphicsScene::NoIndex);
+ if (!sceneRect.isNull())
+ scene.setSceneRect(sceneRect);
+
+ processEvents();
+
+ QBENCHMARK {
+ QGraphicsItem *item = 0;
+ for (int y = 0; y < numItems_Y; ++y) {
+ for (int x = 0; x < numItems_X; ++x) {
+ switch (itemType) {
+ case QGraphicsRectItem::Type:
+ item = new QGraphicsRectItem(itemRect);
+ break;
+ case QGraphicsEllipseItem::Type:
+ default:
+ item = new QGraphicsEllipseItem(itemRect);
+ break;
+ }
+ item->setPos(x * itemRect.width(), y * itemRect.height());
+ scene.addItem(item);
+ }
+ }
+ scene.itemAt(0, 0);
+ }
+ //let QGraphicsScene::_q_polishItems be called so ~QGraphicsItem doesn't spend all his time cleaning the unpolished list
+ qApp->processEvents();
+}
+
+void tst_QGraphicsScene::itemAt_data()
+{
+ QTest::addColumn<int>("bspTreeDepth");
+ QTest::addColumn<QRectF>("sceneRect");
+ QTest::addColumn<int>("numItems_X");
+ QTest::addColumn<int>("numItems_Y");
+ QTest::addColumn<QRectF>("itemRect");
+
+ QTest::newRow("null") << 0 << QRectF() << 0 << 0 << QRectF();
+ QTest::newRow("NoIndex 10x10") << -1 << QRectF() << 10 << 10 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("NoIndex 25x25") << -1 << QRectF() << 25 << 25 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("NoIndex 100x100") << -1 << QRectF() << 100 << 100 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("NoIndex 250x250") << -1 << QRectF() << 250 << 250 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=auto 10x10") << 0 << QRectF() << 10 << 10 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=auto 25x25") << 0 << QRectF() << 25 << 25 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=auto 100x100") << 0 << QRectF() << 100 << 100 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=auto 250x250") << 0 << QRectF() << 250 << 250 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=16 10x10") << 16 << QRectF() << 10 << 10 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=16 25x25") << 16 << QRectF() << 25 << 25 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=16 100x100") << 16 << QRectF() << 100 << 100 << QRectF(-10, -10, 20, 20);
+ QTest::newRow("BspTreeIndex depth=16 250x250") << 16 << QRectF() << 250 << 250 << QRectF(-10, -10, 20, 20);
+}
+
+void tst_QGraphicsScene::itemAt()
+{
+ QFETCH(int, bspTreeDepth);
+ QFETCH(QRectF, sceneRect);
+ QFETCH(int, numItems_X);
+ QFETCH(int, numItems_Y);
+ QFETCH(QRectF, itemRect);
+
+ QGraphicsScene scene;
+ scene.setItemIndexMethod(bspTreeDepth >= 0 ? QGraphicsScene::BspTreeIndex : QGraphicsScene::NoIndex);
+ if (bspTreeDepth > 0)
+ scene.setBspTreeDepth(bspTreeDepth);
+ if (!sceneRect.isNull())
+ scene.setSceneRect(sceneRect);
+
+ for (int y = 0; y < numItems_Y; ++y) {
+ for (int x = 0; x < numItems_X; ++x) {
+ QGraphicsRectItem *item = new QGraphicsRectItem(itemRect);
+ item->setPos((x - numItems_X/2) * itemRect.width(), (y - numItems_Y/2) * itemRect.height());
+ scene.addItem(item);
+ }
+ }
+
+ scene.itemAt(0, 0); // triggers indexing
+ processEvents();
+
+ QGraphicsItem *item = 0;
+ QBENCHMARK {
+ item = scene.itemAt(0, 0);
+ }
+
+ //let QGraphicsScene::_q_polishItems be called so ~QGraphicsItem doesn't spend all his time cleaning the unpolished list
+ qApp->processEvents();
+}
+
+void tst_QGraphicsScene::initialShow()
+{
+ QGraphicsScene scene;
+
+ QBENCHMARK {
+ for (int y = 0; y < 30000; ++y) {
+ QGraphicsRectItem *item = new QGraphicsRectItem(0, 0, 50, 50);
+ item->setPos((y/2) * item->rect().width(), (y/2) * item->rect().height());
+ scene.addItem(item);
+ }
+ scene.itemAt(0, 0); // triggers indexing
+ //This call polish the items so we bench their processing too.
+ qApp->processEvents();
+ }
+}
+
+QTEST_MAIN(tst_QGraphicsScene)
+#include "tst_qgraphicsscene.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp
new file mode 100644
index 0000000000..cb9796478d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.cpp
@@ -0,0 +1,176 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "chip.h"
+
+#include <QtGui>
+
+Chip::Chip(const QColor &color, int x, int y)
+{
+ this->x = x;
+ this->y = y;
+ this->color = color;
+ setZValue((x + y) % 2);
+
+ setFlags(ItemIsSelectable | ItemIsMovable);
+ setAcceptsHoverEvents(true);
+}
+
+QRectF Chip::boundingRect() const
+{
+ return QRectF(0, 0, 110, 70);
+}
+
+QPainterPath Chip::shape() const
+{
+ QPainterPath path;
+ path.addRect(14, 14, 82, 42);
+ return path;
+}
+
+void Chip::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
+{
+ Q_UNUSED(widget);
+
+ QColor fillColor = (option->state & QStyle::State_Selected) ? color.dark(150) : color;
+ if (option->state & QStyle::State_MouseOver)
+ fillColor = fillColor.light(125);
+
+ if (option->levelOfDetail < 0.2) {
+ if (option->levelOfDetail < 0.125) {
+ painter->fillRect(QRectF(0, 0, 110, 70), fillColor);
+ return;
+ }
+
+ painter->setPen(QPen(Qt::black, 0));
+ painter->setBrush(fillColor);
+ painter->drawRect(13, 13, 97, 57);
+ return;
+ }
+
+ QPen oldPen = painter->pen();
+ QPen pen = oldPen;
+ int width = 0;
+ if (option->state & QStyle::State_Selected)
+ width += 2;
+
+ pen.setWidth(width);
+ painter->setBrush(QBrush(fillColor.dark(option->state & QStyle::State_Sunken ? 120 : 100)));
+
+ painter->drawRect(QRect(14, 14, 79, 39));
+ if (option->levelOfDetail >= 1) {
+ painter->setPen(QPen(Qt::gray, 1));
+ painter->drawLine(15, 54, 94, 54);
+ painter->drawLine(94, 53, 94, 15);
+ painter->setPen(QPen(Qt::black, 0));
+ }
+
+ // Draw text
+ if (option->levelOfDetail >= 2) {
+ QFont font("Times", 10);
+ font.setStyleStrategy(QFont::ForceOutline);
+ painter->setFont(font);
+ painter->save();
+ painter->scale(0.1, 0.1);
+ painter->drawText(170, 180, QString("Model: VSC-2000 (Very Small Chip) at %1x%2").arg(x).arg(y));
+ painter->drawText(170, 200, QString("Serial number: DLWR-WEER-123L-ZZ33-SDSJ"));
+ painter->drawText(170, 220, QString("Manufacturer: Chip Manufacturer"));
+ painter->restore();
+ }
+
+ // Draw lines
+ QVarLengthArray<QLineF, 36> lines;
+ if (option->levelOfDetail >= 0.5) {
+ for (int i = 0; i <= 10; i += (option->levelOfDetail > 0.5 ? 1 : 2)) {
+ lines.append(QLineF(18 + 7 * i, 13, 18 + 7 * i, 5));
+ lines.append(QLineF(18 + 7 * i, 54, 18 + 7 * i, 62));
+ }
+ for (int i = 0; i <= 6; i += (option->levelOfDetail > 0.5 ? 1 : 2)) {
+ lines.append(QLineF(5, 18 + i * 5, 13, 18 + i * 5));
+ lines.append(QLineF(94, 18 + i * 5, 102, 18 + i * 5));
+ }
+ }
+ if (option->levelOfDetail >= 0.4) {
+ const QLineF lineData[] = {
+ QLineF(25, 35, 35, 35),
+ QLineF(35, 30, 35, 40),
+ QLineF(35, 30, 45, 35),
+ QLineF(35, 40, 45, 35),
+ QLineF(45, 30, 45, 40),
+ QLineF(45, 35, 55, 35)
+ };
+ lines.append(lineData, 6);
+ }
+ painter->drawLines(lines.data(), lines.size());
+
+ // Draw red ink
+ if (stuff.size() > 1) {
+ painter->setPen(QPen(Qt::red, 1, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
+ painter->setBrush(Qt::NoBrush);
+ QPainterPath path;
+ path.moveTo(stuff.first());
+ for (int i = 1; i < stuff.size(); ++i)
+ path.lineTo(stuff.at(i));
+ painter->drawPath(path);
+ }
+}
+
+void Chip::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+ QGraphicsItem::mousePressEvent(event);
+ update();
+}
+
+void Chip::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
+{
+ if (event->modifiers() & Qt::ShiftModifier) {
+ stuff << event->pos();
+ update();
+ return;
+ }
+ QGraphicsItem::mouseMoveEvent(event);
+}
+
+void Chip::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
+{
+ QGraphicsItem::mouseReleaseEvent(event);
+ update();
+}
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.debug b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.debug
new file mode 100644
index 0000000000..8fe1e5b0f1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.debug
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h
new file mode 100644
index 0000000000..4bd1b172f3
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.h
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef CHIP_H
+#define CHIP_H
+
+#include <QtGui/QColor>
+#include <QtGui/QGraphicsItem>
+
+class Chip : public QGraphicsItem
+{
+public:
+ Chip(const QColor &color, int x, int y);
+
+ QRectF boundingRect() const;
+ QPainterPath shape() const;
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *item, QWidget *widget);
+
+protected:
+ void mousePressEvent(QGraphicsSceneMouseEvent *event);
+ void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
+ void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
+
+private:
+ int x, y;
+ QColor color;
+ QList<QPointF> stuff;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.pro b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.pro
new file mode 100644
index 0000000000..53fa23b981
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/chip.pro
@@ -0,0 +1,19 @@
+RESOURCES += images.qrc
+
+HEADERS += mainwindow.h view.h chip.h
+SOURCES += main.cpp
+SOURCES += mainwindow.cpp view.cpp chip.cpp
+
+contains(QT_CONFIG, opengl):QT += opengl
+
+build_all:!build_pass {
+ CONFIG -= build_all
+ CONFIG += release
+}
+
+# install
+target.path = $$[QT_INSTALL_DEMOS]/chip
+sources.files = $$SOURCES $$HEADERS $$RESOURCES *.png *.pro *.html *.doc images
+sources.path = $$[QT_INSTALL_DEMOS]/chip
+INSTALLS += target sources
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/fileprint.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/fileprint.png
new file mode 100644
index 0000000000..ba7c02dc18
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/fileprint.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/images.qrc b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/images.qrc
new file mode 100644
index 0000000000..c7cdf0c4c0
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/images.qrc
@@ -0,0 +1,10 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+ <file>qt4logo.png</file>
+ <file>zoomin.png</file>
+ <file>zoomout.png</file>
+ <file>rotateleft.png</file>
+ <file>rotateright.png</file>
+ <file>fileprint.png</file>
+</qresource>
+</RCC>
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp
new file mode 100644
index 0000000000..8dd26deb23
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/main.cpp
@@ -0,0 +1,57 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "mainwindow.h"
+
+#include <QApplication>
+
+int main(int argc, char **argv)
+{
+ Q_INIT_RESOURCE(images);
+
+ QApplication app(argc, argv);
+ app.setAttribute(Qt::AA_DontCreateNativeWidgetSiblings);
+
+ MainWindow window;
+ window.show();
+
+ return app.exec();
+}
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp
new file mode 100644
index 0000000000..b23585a30d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.cpp
@@ -0,0 +1,87 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "mainwindow.h"
+#include "view.h"
+#include "chip.h"
+
+#include <QtGui>
+
+MainWindow::MainWindow(QWidget *parent)
+ : QWidget(parent)
+{
+ populateScene();
+
+ View *view = new View("Top left view");
+ view->view()->setScene(scene);
+ QHBoxLayout *layout = new QHBoxLayout;
+ layout->addWidget(view);
+ setLayout(layout);
+
+ setWindowTitle(tr("Chip Demo"));
+}
+
+void MainWindow::populateScene()
+{
+ scene = new QGraphicsScene;
+
+ QImage image(":/qt4logo.png");
+
+ // Populate scene
+ int xx = 0;
+ int nitems = 0;
+ for (int i = -11000; i < 11000; i += 110) {
+ ++xx;
+ int yy = 0;
+ for (int j = -7000; j < 7000; j += 70) {
+ ++yy;
+ qreal x = (i + 11000) / 22000.0;
+ qreal y = (j + 7000) / 14000.0;
+
+ QColor color(image.pixel(int(image.width() * x), int(image.height() * y)));
+ QGraphicsItem *item = new Chip(color, xx, yy);
+ item->setPos(QPointF(i, j));
+ scene->addItem(item);
+
+ ++nitems;
+ }
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h
new file mode 100644
index 0000000000..25e6104602
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/mainwindow.h
@@ -0,0 +1,66 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef MAINWINDOW_H
+#define MAINWINDOW_H
+
+#include <QtGui/qwidget.h>
+
+QT_FORWARD_DECLARE_CLASS(QGraphicsScene)
+QT_FORWARD_DECLARE_CLASS(QGraphicsView)
+QT_FORWARD_DECLARE_CLASS(QLabel)
+QT_FORWARD_DECLARE_CLASS(QSlider)
+QT_FORWARD_DECLARE_CLASS(QSplitter)
+
+class MainWindow : public QWidget
+{
+ Q_OBJECT
+public:
+ MainWindow(QWidget *parent = 0);
+
+private:
+ void setupMatrix();
+ void populateScene();
+
+ QGraphicsScene *scene;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/qt4logo.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/qt4logo.png
new file mode 100644
index 0000000000..157e86ed64
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/qt4logo.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateleft.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateleft.png
new file mode 100644
index 0000000000..8cfa931986
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateleft.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateright.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateright.png
new file mode 100644
index 0000000000..ec5e8664a1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/rotateright.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp
new file mode 100644
index 0000000000..617cad85ee
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.cpp
@@ -0,0 +1,264 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "view.h"
+
+#include <QtGui>
+
+#ifdef Q_WS_WIN
+#define CALLGRIND_START_INSTRUMENTATION {}
+#define CALLGRIND_STOP_INSTRUMENTATION {}
+#else
+#include "valgrind/callgrind.h"
+#endif
+
+#ifndef QT_NO_OPENGL
+#include <QtOpenGL>
+#endif
+
+#include <qmath.h>
+
+class CountView : public QGraphicsView
+{
+protected:
+ void paintEvent(QPaintEvent *event)
+ {
+ static int n = 0;
+ if (n)
+ CALLGRIND_START_INSTRUMENTATION
+ QGraphicsView::paintEvent(event);
+ if (n)
+ CALLGRIND_STOP_INSTRUMENTATION
+ if (++n == 500)
+ qApp->quit();
+ }
+};
+
+View::View(const QString &name, QWidget *parent)
+ : QFrame(parent)
+{
+ setFrameStyle(Sunken | StyledPanel);
+ graphicsView = new CountView;
+ graphicsView->setRenderHint(QPainter::Antialiasing, false);
+ graphicsView->setDragMode(QGraphicsView::RubberBandDrag);
+ graphicsView->setViewportUpdateMode(QGraphicsView::SmartViewportUpdate);
+
+ int size = style()->pixelMetric(QStyle::PM_ToolBarIconSize);
+ QSize iconSize(size, size);
+
+ QToolButton *zoomInIcon = new QToolButton;
+ zoomInIcon->setAutoRepeat(true);
+ zoomInIcon->setAutoRepeatInterval(33);
+ zoomInIcon->setAutoRepeatDelay(0);
+ zoomInIcon->setIcon(QPixmap(":/zoomin.png"));
+ zoomInIcon->setIconSize(iconSize);
+ QToolButton *zoomOutIcon = new QToolButton;
+ zoomOutIcon->setAutoRepeat(true);
+ zoomOutIcon->setAutoRepeatInterval(33);
+ zoomOutIcon->setAutoRepeatDelay(0);
+ zoomOutIcon->setIcon(QPixmap(":/zoomout.png"));
+ zoomOutIcon->setIconSize(iconSize);
+ zoomSlider = new QSlider;
+ zoomSlider->setMinimum(0);
+ zoomSlider->setMaximum(500);
+ zoomSlider->setValue(250);
+ zoomSlider->setTickPosition(QSlider::TicksRight);
+
+ // Zoom slider layout
+ QVBoxLayout *zoomSliderLayout = new QVBoxLayout;
+ zoomSliderLayout->addWidget(zoomInIcon);
+ zoomSliderLayout->addWidget(zoomSlider);
+ zoomSliderLayout->addWidget(zoomOutIcon);
+
+ QToolButton *rotateLeftIcon = new QToolButton;
+ rotateLeftIcon->setIcon(QPixmap(":/rotateleft.png"));
+ rotateLeftIcon->setIconSize(iconSize);
+ QToolButton *rotateRightIcon = new QToolButton;
+ rotateRightIcon->setIcon(QPixmap(":/rotateright.png"));
+ rotateRightIcon->setIconSize(iconSize);
+ rotateSlider = new QSlider;
+ rotateSlider->setOrientation(Qt::Horizontal);
+ rotateSlider->setMinimum(-360);
+ rotateSlider->setMaximum(360);
+ rotateSlider->setValue(0);
+ rotateSlider->setTickPosition(QSlider::TicksBelow);
+
+ // Rotate slider layout
+ QHBoxLayout *rotateSliderLayout = new QHBoxLayout;
+ rotateSliderLayout->addWidget(rotateLeftIcon);
+ rotateSliderLayout->addWidget(rotateSlider);
+ rotateSliderLayout->addWidget(rotateRightIcon);
+
+ resetButton = new QToolButton;
+ resetButton->setText(tr("0"));
+ resetButton->setEnabled(false);
+
+ // Label layout
+ QHBoxLayout *labelLayout = new QHBoxLayout;
+ label = new QLabel(name);
+ antialiasButton = new QToolButton;
+ antialiasButton->setText(tr("Antialiasing"));
+ antialiasButton->setCheckable(true);
+ antialiasButton->setChecked(false);
+ openGlButton = new QToolButton;
+ openGlButton->setText(tr("OpenGL"));
+ openGlButton->setCheckable(true);
+#ifndef QT_NO_OPENGL
+ openGlButton->setEnabled(QGLFormat::hasOpenGL());
+#else
+ openGlButton->setEnabled(false);
+#endif
+ printButton = new QToolButton;
+ printButton->setIcon(QIcon(QPixmap(":/fileprint.png")));
+
+ labelLayout->addWidget(label);
+ labelLayout->addStretch();
+ labelLayout->addWidget(antialiasButton);
+ labelLayout->addWidget(openGlButton);
+ labelLayout->addWidget(printButton);
+
+ QGridLayout *topLayout = new QGridLayout;
+ topLayout->addLayout(labelLayout, 0, 0);
+ topLayout->addWidget(graphicsView, 1, 0);
+ topLayout->addLayout(zoomSliderLayout, 1, 1);
+ topLayout->addLayout(rotateSliderLayout, 2, 0);
+ topLayout->addWidget(resetButton, 2, 1);
+ setLayout(topLayout);
+
+ connect(resetButton, SIGNAL(clicked()), this, SLOT(resetView()));
+ connect(zoomSlider, SIGNAL(valueChanged(int)), this, SLOT(setupMatrix()));
+ connect(rotateSlider, SIGNAL(valueChanged(int)), this, SLOT(setupMatrix()));
+ connect(graphicsView->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(setResetButtonEnabled()));
+ connect(graphicsView->horizontalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(setResetButtonEnabled()));
+ connect(antialiasButton, SIGNAL(toggled(bool)), this, SLOT(toggleAntialiasing()));
+ connect(openGlButton, SIGNAL(toggled(bool)), this, SLOT(toggleOpenGL()));
+ connect(rotateLeftIcon, SIGNAL(clicked()), this, SLOT(rotateLeft()));
+ connect(rotateRightIcon, SIGNAL(clicked()), this, SLOT(rotateRight()));
+ connect(zoomInIcon, SIGNAL(clicked()), this, SLOT(zoomIn()));
+ connect(zoomOutIcon, SIGNAL(clicked()), this, SLOT(zoomOut()));
+ connect(printButton, SIGNAL(clicked()), this, SLOT(print()));
+
+ setupMatrix();
+
+ startTimer(0);
+}
+
+QGraphicsView *View::view() const
+{
+ return graphicsView;
+}
+
+void View::resetView()
+{
+ zoomSlider->setValue(250);
+ rotateSlider->setValue(0);
+ setupMatrix();
+ graphicsView->ensureVisible(QRectF(0, 0, 0, 0));
+
+ resetButton->setEnabled(false);
+}
+
+void View::setResetButtonEnabled()
+{
+ resetButton->setEnabled(true);
+}
+
+void View::setupMatrix()
+{
+ qreal scale = qPow(qreal(2), (zoomSlider->value() - 250) / qreal(50));
+
+ QMatrix matrix;
+ matrix.scale(scale, scale);
+ matrix.rotate(rotateSlider->value());
+
+ graphicsView->setMatrix(matrix);
+ setResetButtonEnabled();
+}
+
+void View::toggleOpenGL()
+{
+#ifndef QT_NO_OPENGL
+ graphicsView->setViewport(openGlButton->isChecked() ? new QGLWidget(QGLFormat(QGL::SampleBuffers)) : new QWidget);
+#endif
+}
+
+void View::toggleAntialiasing()
+{
+ graphicsView->setRenderHint(QPainter::Antialiasing, antialiasButton->isChecked());
+}
+
+void View::print()
+{
+#ifndef QT_NO_PRINTER
+ QPrinter printer;
+ QPrintDialog dialog(&printer, this);
+ if (dialog.exec() == QDialog::Accepted) {
+ QPainter painter(&printer);
+ graphicsView->render(&painter);
+ }
+#endif
+}
+
+void View::zoomIn()
+{
+ zoomSlider->setValue(zoomSlider->value() + 1);
+}
+
+void View::zoomOut()
+{
+ zoomSlider->setValue(zoomSlider->value() - 1);
+}
+
+void View::rotateLeft()
+{
+ rotateSlider->setValue(rotateSlider->value() - 10);
+}
+
+void View::rotateRight()
+{
+ rotateSlider->setValue(rotateSlider->value() + 10);
+}
+
+void View::timerEvent(QTimerEvent *)
+{
+ graphicsView->horizontalScrollBar()->setValue(graphicsView->horizontalScrollBar()->value() + 1);
+}
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h
new file mode 100644
index 0000000000..d67e2673f3
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/view.h
@@ -0,0 +1,86 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef VIEW_H
+#define VIEW_H
+
+#include <QFrame>
+
+QT_FORWARD_DECLARE_CLASS(QGraphicsView)
+QT_FORWARD_DECLARE_CLASS(QLabel)
+QT_FORWARD_DECLARE_CLASS(QSlider)
+QT_FORWARD_DECLARE_CLASS(QToolButton)
+
+class View : public QFrame
+{
+ Q_OBJECT
+public:
+ View(const QString &name, QWidget *parent = 0);
+
+ QGraphicsView *view() const;
+
+private slots:
+ void resetView();
+ void setResetButtonEnabled();
+ void setupMatrix();
+ void toggleOpenGL();
+ void toggleAntialiasing();
+ void print();
+
+ void zoomIn();
+ void zoomOut();
+ void rotateLeft();
+ void rotateRight();
+
+ void timerEvent(QTimerEvent *);
+
+private:
+ QGraphicsView *graphicsView;
+ QLabel *label;
+ QToolButton *openGlButton;
+ QToolButton *antialiasButton;
+ QToolButton *printButton;
+ QToolButton *resetButton;
+ QSlider *zoomSlider;
+ QSlider *rotateSlider;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomin.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomin.png
new file mode 100644
index 0000000000..8b0daeea48
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomin.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomout.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomout.png
new file mode 100644
index 0000000000..1575dd24f6
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/chipTest/zoomout.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp
new file mode 100644
index 0000000000..937be984e8
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/main.cpp
@@ -0,0 +1,112 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtGui>
+
+#ifdef Q_WS_WIN
+#define CALLGRIND_START_INSTRUMENTATION {}
+#define CALLGRIND_STOP_INSTRUMENTATION {}
+#else
+#include "valgrind/callgrind.h"
+#endif
+
+#ifdef Q_WS_X11
+extern void qt_x11_wait_for_window_manager(QWidget *);
+#endif
+
+class View : public QGraphicsView
+{
+ Q_OBJECT
+public:
+ View(QGraphicsScene *scene, QGraphicsItem *item)
+ : QGraphicsView(scene), _item(item)
+ {
+ }
+
+protected:
+ void paintEvent(QPaintEvent *event)
+ {
+ static int n = 0;
+ if (n)
+ CALLGRIND_START_INSTRUMENTATION
+ QGraphicsView::paintEvent(event);
+ _item->moveBy(1, 1);
+ if (n)
+ CALLGRIND_STOP_INSTRUMENTATION
+ if (++n == 200)
+ qApp->quit();
+ }
+
+private:
+ QGraphicsItem *_item;
+};
+
+int main(int argc, char *argv[])
+{
+ QApplication app(argc, argv);
+
+ if (argc < 2) {
+ qDebug("usage: ./%s <numItems>", argv[0]);
+ return 1;
+ }
+
+ QGraphicsScene scene(-150, -150, 300, 300);
+ scene.setItemIndexMethod(QGraphicsScene::NoIndex);
+
+ QGraphicsRectItem *item = scene.addRect(-50, -50, 100, 100, QPen(Qt::NoPen), QBrush(Qt::blue));
+ item->setFlag(QGraphicsItem::ItemIsMovable);
+
+ for (int i = 0; i < atoi(argv[1]); ++i) {
+ QGraphicsRectItem *child = scene.addRect(-5, -5, 10, 10, QPen(Qt::NoPen), QBrush(Qt::blue));
+ child->setPos(-50 + qrand() % 100, -50 + qrand() % 100);
+ child->setParentItem(item);
+ }
+
+ View view(&scene, item);
+ view.resize(300, 300);
+ view.show();
+#ifdef Q_WS_X11
+ qt_x11_wait_for_window_manager(&view);
+#endif
+
+ return app.exec();
+}
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/moveItems.pro b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/moveItems.pro
new file mode 100644
index 0000000000..28dcadcbfa
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/moveItems/moveItems.pro
@@ -0,0 +1 @@
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp
new file mode 100644
index 0000000000..29a755f628
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/main.cpp
@@ -0,0 +1,152 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtGui>
+
+#ifdef Q_WS_WIN
+#define CALLGRIND_START_INSTRUMENTATION {}
+#define CALLGRIND_STOP_INSTRUMENTATION {}
+#else
+#include "valgrind/callgrind.h"
+#endif
+
+class ItemMover : public QObject
+{
+ Q_OBJECT
+public:
+ ItemMover(QGraphicsItem *item)
+ : _item(item)
+ {
+ startTimer(0);
+ }
+
+protected:
+ void timerEvent(QTimerEvent *event)
+ {
+ _item->moveBy(-1, 0);
+ }
+
+private:
+ QGraphicsItem *_item;
+};
+
+class ClipItem : public QGraphicsRectItem
+{
+public:
+ ClipItem(qreal x, qreal y, qreal w, qreal h, const QPen &pen, const QBrush &brush)
+ : QGraphicsRectItem(x, y, w, h)
+ {
+ setPen(pen);
+ setBrush(brush);
+ }
+
+ QPainterPath shape() const
+ {
+ QPainterPath path;
+ path.addRect(rect());
+ return path;
+ }
+};
+
+class CountView : public QGraphicsView
+{
+protected:
+ void paintEvent(QPaintEvent *event)
+ {
+ static int n = 0;
+ if (n)
+ CALLGRIND_START_INSTRUMENTATION
+ QGraphicsView::paintEvent(event);
+ if (n)
+ CALLGRIND_STOP_INSTRUMENTATION
+ if (++n == 500)
+ qApp->quit();
+ }
+};
+
+int main(int argc, char *argv[])
+{
+ QApplication app(argc, argv);
+
+ QGraphicsScene scene;
+ scene.setItemIndexMethod(QGraphicsScene::NoIndex);
+
+ ClipItem *clipItem = new ClipItem(0, 0, 100, 100, QPen(), QBrush(Qt::blue));
+ clipItem->setFlag(QGraphicsItem::ItemClipsChildrenToShape);
+ clipItem->setData(0, "clipItem");
+ scene.addItem(clipItem);
+
+ QGraphicsRectItem *scrollItem = scene.addRect(0, 0, 10, 10, QPen(Qt::NoPen), QBrush(Qt::NoBrush));
+ scrollItem->setParentItem(clipItem);
+ scrollItem->setFlag(QGraphicsItem::ItemIsMovable);
+ scrollItem->setData(0, "scrollItem");
+
+ for (int y = 0; y < 25; ++y) {
+ for (int x = 0; x < 25; ++x) {
+ ClipItem *rect = new ClipItem(0, 0, 90, 20, QPen(Qt::NoPen), QBrush(Qt::green));
+ rect->setParentItem(scrollItem);
+ rect->setPos(x * 95, y * 25);
+ rect->setData(0, qPrintable(QString("rect %1 %2").arg(x).arg(y)));
+ rect->setFlag(QGraphicsItem::ItemClipsChildrenToShape);
+
+ QGraphicsEllipseItem *ellipse = new QGraphicsEllipseItem(-5, -5, 10, 10);
+ ellipse->setPen(QPen(Qt::NoPen));
+ ellipse->setBrush(QBrush(Qt::yellow));
+ ellipse->setParentItem(rect);
+ ellipse->setData(0, qPrintable(QString("ellipse %1 %2").arg(x).arg(y)));
+ }
+ }
+
+ scrollItem->setRect(scrollItem->childrenBoundingRect());
+
+#if 0
+ ItemMover mover(scrollItem);
+#endif
+
+ CountView view;
+ view.setScene(&scene);
+ view.setSceneRect(-25, -25, 150, 150);
+ view.resize(300, 300);
+ view.show();
+
+ return app.exec();
+}
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/scrolltest.pro b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/scrolltest.pro
new file mode 100644
index 0000000000..28dcadcbfa
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/benchapps/scrolltest/scrolltest.pro
@@ -0,0 +1 @@
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp
new file mode 100644
index 0000000000..acc056eefe
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.cpp
@@ -0,0 +1,182 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "chip.h"
+
+#include <QtGui>
+
+Chip::Chip(const QColor &color, int x, int y)
+{
+ this->x = x;
+ this->y = y;
+ this->color = color;
+ setZValue((x + y) % 2);
+
+ setFlags(ItemIsSelectable | ItemIsMovable);
+ setAcceptsHoverEvents(true);
+}
+
+QRectF Chip::boundingRect() const
+{
+ return QRectF(0, 0, 110, 70);
+}
+
+QPainterPath Chip::shape() const
+{
+ QPainterPath path;
+ path.addRect(14, 14, 82, 42);
+ return path;
+}
+
+void Chip::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
+{
+ Q_UNUSED(widget);
+
+ QColor fillColor = (option->state & QStyle::State_Selected) ? color.dark(150) : color;
+ if (option->state & QStyle::State_MouseOver)
+ fillColor = fillColor.light(125);
+
+ if (option->levelOfDetail < 0.2) {
+ if (option->levelOfDetail < 0.125) {
+ painter->fillRect(QRectF(0, 0, 110, 70), fillColor);
+ return;
+ }
+
+ QBrush b = painter->brush();
+ painter->setBrush(fillColor);
+ painter->drawRect(13, 13, 97, 57);
+ painter->setBrush(b);
+ return;
+ }
+
+ QPen oldPen = painter->pen();
+ QPen pen = oldPen;
+ int width = 0;
+ if (option->state & QStyle::State_Selected)
+ width += 2;
+
+ pen.setWidth(width);
+ QBrush b = painter->brush();
+ painter->setBrush(QBrush(fillColor.dark(option->state & QStyle::State_Sunken ? 120 : 100)));
+
+ painter->drawRect(QRect(14, 14, 79, 39));
+ painter->setBrush(b);
+
+ if (option->levelOfDetail >= 1) {
+ painter->setPen(QPen(Qt::gray, 1));
+ painter->drawLine(15, 54, 94, 54);
+ painter->drawLine(94, 53, 94, 15);
+ painter->setPen(QPen(Qt::black, 0));
+ }
+
+ // Draw text
+ if (option->levelOfDetail >= 2) {
+ QFont font("Times", 10);
+ font.setStyleStrategy(QFont::ForceOutline);
+ painter->setFont(font);
+ painter->save();
+ painter->scale(0.1, 0.1);
+ painter->drawText(170, 180, QString("Model: VSC-2000 (Very Small Chip) at %1x%2").arg(x).arg(y));
+ painter->drawText(170, 200, QString("Serial number: DLWR-WEER-123L-ZZ33-SDSJ"));
+ painter->drawText(170, 220, QString("Manufacturer: Chip Manufacturer"));
+ painter->restore();
+ }
+
+ // Draw lines
+ QVarLengthArray<QLineF, 36> lines;
+ if (option->levelOfDetail >= 0.5) {
+ for (int i = 0; i <= 10; i += (option->levelOfDetail > 0.5 ? 1 : 2)) {
+ lines.append(QLineF(18 + 7 * i, 13, 18 + 7 * i, 5));
+ lines.append(QLineF(18 + 7 * i, 54, 18 + 7 * i, 62));
+ }
+ for (int i = 0; i <= 6; i += (option->levelOfDetail > 0.5 ? 1 : 2)) {
+ lines.append(QLineF(5, 18 + i * 5, 13, 18 + i * 5));
+ lines.append(QLineF(94, 18 + i * 5, 102, 18 + i * 5));
+ }
+ }
+ if (option->levelOfDetail >= 0.4) {
+ const QLineF lineData[] = {
+ QLineF(25, 35, 35, 35),
+ QLineF(35, 30, 35, 40),
+ QLineF(35, 30, 45, 35),
+ QLineF(35, 40, 45, 35),
+ QLineF(45, 30, 45, 40),
+ QLineF(45, 35, 55, 35)
+ };
+ lines.append(lineData, 6);
+ }
+ painter->drawLines(lines.data(), lines.size());
+
+ // Draw red ink
+ if (stuff.size() > 1) {
+ QPen p = painter->pen();
+ painter->setPen(QPen(Qt::red, 1, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
+ painter->setBrush(Qt::NoBrush);
+ QPainterPath path;
+ path.moveTo(stuff.first());
+ for (int i = 1; i < stuff.size(); ++i)
+ path.lineTo(stuff.at(i));
+ painter->drawPath(path);
+ painter->setPen(p);
+ }
+}
+
+void Chip::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+ QGraphicsItem::mousePressEvent(event);
+ update();
+}
+
+void Chip::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
+{
+ if (event->modifiers() & Qt::ShiftModifier) {
+ stuff << event->pos();
+ update();
+ return;
+ }
+ QGraphicsItem::mouseMoveEvent(event);
+}
+
+void Chip::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
+{
+ QGraphicsItem::mouseReleaseEvent(event);
+ update();
+}
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h
new file mode 100644
index 0000000000..4bd1b172f3
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chip.h
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef CHIP_H
+#define CHIP_H
+
+#include <QtGui/QColor>
+#include <QtGui/QGraphicsItem>
+
+class Chip : public QGraphicsItem
+{
+public:
+ Chip(const QColor &color, int x, int y);
+
+ QRectF boundingRect() const;
+ QPainterPath shape() const;
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *item, QWidget *widget);
+
+protected:
+ void mousePressEvent(QGraphicsSceneMouseEvent *event);
+ void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
+ void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
+
+private:
+ int x, y;
+ QColor color;
+ QList<QPointF> stuff;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp
new file mode 100644
index 0000000000..8d173874b7
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.cpp
@@ -0,0 +1,144 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "chiptester.h"
+#include "chip.h"
+
+#include <QtGui>
+#ifndef QT_NO_OPENGL
+#include <QtOpenGL>
+#endif
+
+ChipTester::ChipTester(QWidget *parent)
+ : QGraphicsView(parent),
+ npaints(0)
+{
+ resize(400, 300);
+ setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ setFrameStyle(0);
+ setTransformationAnchor(NoAnchor);
+
+ populateScene();
+ setScene(scene);
+
+ setWindowTitle(tr("Chip Demo"));
+}
+
+void ChipTester::setAntialias(bool enabled)
+{
+ setRenderHint(QPainter::Antialiasing, enabled);
+}
+
+void ChipTester::setOpenGL(bool enabled)
+{
+#ifndef QT_NO_OPENGL
+ setViewport(enabled ? new QGLWidget(QGLFormat(QGL::SampleBuffers)) : 0);
+#endif
+}
+
+void ChipTester::setOperation(Operation operation)
+{
+ this->operation = operation;
+}
+
+void ChipTester::runBenchmark()
+{
+ npaints = 0;
+ timerId = startTimer(0);
+ stopWatch.start();
+ eventLoop.exec();
+ killTimer(timerId);
+}
+
+void ChipTester::paintEvent(QPaintEvent *event)
+{
+ QGraphicsView::paintEvent(event);
+ if (++npaints == 50)
+ eventLoop.quit();
+}
+
+void ChipTester::timerEvent(QTimerEvent *)
+{
+ switch (operation) {
+ case Rotate360:
+ rotate(1);
+ break;
+ case ZoomInOut: {
+ qreal s = 0.05 + (npaints / 20.0);
+ setTransform(QTransform().scale(s, s));
+ break;
+ }
+ case Translate: {
+ int offset = horizontalScrollBar()->minimum()
+ + (npaints % (horizontalScrollBar()->maximum() - horizontalScrollBar()->minimum()));
+ horizontalScrollBar()->setValue(offset);
+ break;
+ }
+ }
+}
+
+void ChipTester::populateScene()
+{
+ scene = new QGraphicsScene;
+
+ QImage image(":/qt4logo.png");
+
+ // Populate scene
+ int xx = 0;
+ int nitems = 0;
+ for (int i = -1100; i < 1100; i += 110) {
+ ++xx;
+ int yy = 0;
+ for (int j = -700; j < 700; j += 70) {
+ ++yy;
+ qreal x = (i + 1100) / 2200.0;
+ qreal y = (j + 700) / 1400.0;
+
+ QColor color(image.pixel(int(image.width() * x), int(image.height() * y)));
+ QGraphicsItem *item = new Chip(color, xx, yy);
+ item->setPos(QPointF(i, j));
+ scene->addItem(item);
+
+ ++nitems;
+ }
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h
new file mode 100644
index 0000000000..805e2f471d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.h
@@ -0,0 +1,85 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef CHIPTESTER_H
+#define CHIPTESTER_H
+
+#include <QtGui>
+
+QT_FORWARD_DECLARE_CLASS(QGraphicsScene)
+QT_FORWARD_DECLARE_CLASS(QGraphicsView)
+QT_FORWARD_DECLARE_CLASS(QLabel)
+QT_FORWARD_DECLARE_CLASS(QSlider)
+QT_FORWARD_DECLARE_CLASS(QSplitter)
+
+class ChipTester : public QGraphicsView
+{
+ Q_OBJECT
+public:
+ enum Operation {
+ Rotate360,
+ ZoomInOut,
+ Translate
+ };
+ ChipTester(QWidget *parent = 0);
+
+ void setAntialias(bool enabled);
+ void setOpenGL(bool enabled);
+ void runBenchmark();
+ void setOperation(Operation operation);
+
+protected:
+ void paintEvent(QPaintEvent *event);
+ void timerEvent(QTimerEvent *event);
+
+private:
+ void populateScene();
+
+ QGraphicsView *view;
+ QGraphicsScene *scene;
+ int npaints;
+ int timerId;
+ QEventLoop eventLoop;
+ QTime stopWatch;
+ Operation operation;
+};
+
+#endif
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.pri b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.pri
new file mode 100644
index 0000000000..a9e0bf8272
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/chiptester.pri
@@ -0,0 +1,12 @@
+SOURCES += \
+ chiptester/chiptester.cpp \
+ chiptester/chip.cpp
+
+HEADERS += \
+ chiptester/chiptester.h \
+ chiptester/chip.h
+
+RESOURCES += \
+ chiptester/images.qrc
+
+contains(QT_CONFIG, opengl) QT += opengl
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/images.qrc b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/images.qrc
new file mode 100644
index 0000000000..73e8620b25
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/images.qrc
@@ -0,0 +1,5 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+ <file>qt4logo.png</file>
+</qresource>
+</RCC>
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/qt4logo.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/qt4logo.png
new file mode 100644
index 0000000000..157e86ed64
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/chiptester/qt4logo.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/images/designer.png b/tests/benchmarks/gui/graphicsview/qgraphicsview/images/designer.png
new file mode 100644
index 0000000000..0988fcee3f
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/images/designer.png
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine-big.jpeg b/tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine-big.jpeg
new file mode 100644
index 0000000000..9900a50f94
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine-big.jpeg
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine.jpeg b/tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine.jpeg
new file mode 100644
index 0000000000..8fe1d3a67d
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/images/wine.jpeg
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.pro b/tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.pro
new file mode 100644
index 0000000000..bfa374cdf8
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.pro
@@ -0,0 +1,16 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicsview
+
+SOURCES += tst_qgraphicsview.cpp
+RESOURCES += qgraphicsview.qrc
+
+include(chiptester/chiptester.pri)
+
+symbian {
+ qt_not_deployed {
+ plugins.files = qjpeg.dll
+ plugins.path = imageformats
+ DEPLOYMENT += plugins
+ }
+}
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.qrc b/tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.qrc
new file mode 100644
index 0000000000..3681648f56
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.qrc
@@ -0,0 +1,9 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+ <file>images/designer.png</file>
+ <file>images/wine.jpeg</file>
+ <file>images/wine-big.jpeg</file>
+ <file>random.data</file>
+</qresource>
+</RCC>
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/random.data b/tests/benchmarks/gui/graphicsview/qgraphicsview/random.data
new file mode 100644
index 0000000000..190a36c707
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/random.data
Binary files differ
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp b/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp
new file mode 100644
index 0000000000..d2e0c917ec
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicsview/tst_qgraphicsview.cpp
@@ -0,0 +1,917 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QDebug>
+#include <QGraphicsItem>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+#include <QImage>
+
+#include "chiptester/chiptester.h"
+//#define CALLGRIND_DEBUG
+#ifdef CALLGRIND_DEBUG
+#include "valgrind/callgrind.h"
+#endif
+
+//TESTED_FILES=
+
+static inline void processEvents()
+{
+ QPixmapCache::clear();
+ QApplication::flush();
+ QApplication::processEvents();
+ QApplication::processEvents();
+}
+
+class TestView : public QGraphicsView
+{
+ Q_OBJECT
+public:
+ TestView() : QGraphicsView(), waiting(false), timerId(-1)
+ {}
+
+ void waitForPaintEvent(int timeout = 4000)
+ {
+ if (waiting)
+ return;
+ waiting = true;
+ timerId = startTimer(timeout);
+ eventLoop.exec();
+ killTimer(timerId);
+ timerId = -1;
+ waiting = false;
+ }
+
+ void tryResize(int width, int height)
+ {
+ QDesktopWidget *desktop = QApplication::desktop();
+ if (desktop->width() < width)
+ width = desktop->width();
+ if (desktop->height() < height)
+ height = desktop->height();
+ if (size() != QSize(width, height)) {
+ resize(width, height);
+ QTest::qWait(250);
+ processEvents();
+ }
+ }
+
+protected:
+ void paintEvent(QPaintEvent *event)
+ {
+ QGraphicsView::paintEvent(event);
+ if (waiting)
+ eventLoop.exit();
+ }
+
+ void timerEvent(QTimerEvent *event)
+ {
+ if (event->timerId() == timerId)
+ eventLoop.exit();
+ }
+
+private:
+ QEventLoop eventLoop;
+ bool waiting;
+ int timerId;
+};
+
+class tst_QGraphicsView : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QGraphicsView();
+ virtual ~tst_QGraphicsView();
+
+public slots:
+ void initTestCase();
+ void init();
+ void cleanup();
+
+private slots:
+ void construct();
+ void paintSingleItem();
+ void paintDeepStackingItems();
+ void paintDeepStackingItems_clipped();
+ void moveSingleItem();
+ void mapPointToScene_data();
+ void mapPointToScene();
+ void mapPointFromScene_data();
+ void mapPointFromScene();
+ void mapRectToScene_data();
+ void mapRectToScene();
+ void mapRectFromScene_data();
+ void mapRectFromScene();
+ void chipTester_data();
+ void chipTester();
+ void deepNesting_data();
+ void deepNesting();
+ void imageRiver_data();
+ void imageRiver();
+ void textRiver_data();
+ void textRiver();
+ void moveItemCache_data();
+ void moveItemCache();
+ void paintItemCache_data();
+ void paintItemCache();
+
+private:
+ TestView mView;
+};
+
+tst_QGraphicsView::tst_QGraphicsView()
+{
+}
+
+tst_QGraphicsView::~tst_QGraphicsView()
+{
+}
+
+void tst_QGraphicsView::initTestCase()
+{
+ mView.setFrameStyle(0);
+ mView.setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ mView.setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
+ mView.tryResize(100, 100);
+ mView.show();
+ QTest::qWaitForWindowShown(&mView);
+ QTest::qWait(300);
+ processEvents();
+}
+
+void tst_QGraphicsView::init()
+{
+ mView.setRenderHints(QPainter::RenderHints(0));
+ mView.viewport()->setMouseTracking(false);
+ mView.setViewportUpdateMode(QGraphicsView::BoundingRectViewportUpdate);
+ for (int i = 0; i < 3; ++i)
+ processEvents();
+}
+
+void tst_QGraphicsView::cleanup()
+{
+}
+
+void tst_QGraphicsView::construct()
+{
+ QBENCHMARK {
+ QGraphicsView view;
+ }
+}
+
+void tst_QGraphicsView::paintSingleItem()
+{
+ QGraphicsScene scene(0, 0, 100, 100);
+ scene.addRect(0, 0, 10, 10);
+
+ mView.setScene(&scene);
+ mView.tryResize(100, 100);
+ processEvents();
+
+ QImage image(100, 100, QImage::Format_ARGB32_Premultiplied);
+ QPainter painter(&image);
+ QBENCHMARK {
+ mView.viewport()->render(&painter);
+ }
+}
+
+#define DEEP_STACKING_COUNT 85
+
+void tst_QGraphicsView::paintDeepStackingItems()
+{
+ QGraphicsScene scene(0, 0, 100, 100);
+ QGraphicsRectItem *item = scene.addRect(0, 0, 10, 10);
+ QGraphicsRectItem *lastRect = item;
+ for (int i = 0; i < DEEP_STACKING_COUNT; ++i) {
+ QGraphicsRectItem *rect = scene.addRect(0, 0, 10, 10);
+ rect->setPos(1, 1);
+ rect->setParentItem(lastRect);
+ lastRect = rect;
+ }
+
+ mView.setScene(&scene);
+ mView.tryResize(100, 100);
+ processEvents();
+
+ QImage image(100, 100, QImage::Format_ARGB32_Premultiplied);
+ QPainter painter(&image);
+ QBENCHMARK {
+ mView.viewport()->render(&painter);
+ }
+}
+
+void tst_QGraphicsView::paintDeepStackingItems_clipped()
+{
+ QGraphicsScene scene(0, 0, 100, 100);
+ QGraphicsRectItem *item = scene.addRect(0, 0, 10, 10);
+ item->setFlag(QGraphicsItem::ItemClipsChildrenToShape);
+ QGraphicsRectItem *lastRect = item;
+ for (int i = 0; i < DEEP_STACKING_COUNT; ++i) {
+ QGraphicsRectItem *rect = scene.addRect(0, 0, 10, 10);
+ rect->setPos(1, 1);
+ rect->setParentItem(lastRect);
+ lastRect = rect;
+ }
+
+ mView.setScene(&scene);
+ mView.tryResize(100, 100);
+ processEvents();
+
+ QImage image(100, 100, QImage::Format_ARGB32_Premultiplied);
+ QPainter painter(&image);
+ QBENCHMARK {
+ mView.viewport()->render(&painter);
+ }
+}
+
+void tst_QGraphicsView::moveSingleItem()
+{
+ QGraphicsScene scene(0, 0, 100, 100);
+ QGraphicsRectItem *item = scene.addRect(0, 0, 10, 10);
+
+ mView.setScene(&scene);
+ mView.tryResize(100, 100);
+ processEvents();
+
+ int n = 1;
+ QBENCHMARK {
+ item->setPos(25 * n, 25 * n);
+ mView.waitForPaintEvent();
+ n = n ? 0 : 1;
+ }
+}
+
+void tst_QGraphicsView::mapPointToScene_data()
+{
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<QPoint>("point");
+
+ QTest::newRow("null") << QTransform() << QPoint();
+ QTest::newRow("identity QPoint(100, 100)") << QTransform() << QPoint(100, 100);
+ QTest::newRow("rotate QPoint(100, 100)") << QTransform().rotate(90) << QPoint(100, 100);
+ QTest::newRow("scale QPoint(100, 100)") << QTransform().scale(5, 5) << QPoint(100, 100);
+ QTest::newRow("translate QPoint(100, 100)") << QTransform().translate(5, 5) << QPoint(100, 100);
+ QTest::newRow("shear QPoint(100, 100)") << QTransform().shear(1.5, 1.5) << QPoint(100, 100);
+ QTest::newRow("perspect QPoint(100, 100)") << QTransform().rotate(45, Qt::XAxis) << QPoint(100, 100);
+}
+
+void tst_QGraphicsView::mapPointToScene()
+{
+ QFETCH(QTransform, transform);
+ QFETCH(QPoint, point);
+
+ QGraphicsView view;
+ view.setTransform(transform);
+ processEvents();
+
+ QBENCHMARK {
+ view.mapToScene(point);
+ }
+}
+
+void tst_QGraphicsView::mapPointFromScene_data()
+{
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<QPointF>("point");
+
+ QTest::newRow("null") << QTransform() << QPointF();
+ QTest::newRow("identity QPointF(100, 100)") << QTransform() << QPointF(100, 100);
+ QTest::newRow("rotate QPointF(100, 100)") << QTransform().rotate(90) << QPointF(100, 100);
+ QTest::newRow("scale QPointF(100, 100)") << QTransform().scale(5, 5) << QPointF(100, 100);
+ QTest::newRow("translate QPointF(100, 100)") << QTransform().translate(5, 5) << QPointF(100, 100);
+ QTest::newRow("shear QPointF(100, 100)") << QTransform().shear(1.5, 1.5) << QPointF(100, 100);
+ QTest::newRow("perspect QPointF(100, 100)") << QTransform().rotate(45, Qt::XAxis) << QPointF(100, 100);
+}
+
+void tst_QGraphicsView::mapPointFromScene()
+{
+ QFETCH(QTransform, transform);
+ QFETCH(QPointF, point);
+
+ QGraphicsView view;
+ view.setTransform(transform);
+ processEvents();
+
+ QBENCHMARK {
+ view.mapFromScene(point);
+ }
+}
+
+void tst_QGraphicsView::mapRectToScene_data()
+{
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<QRect>("rect");
+
+ QTest::newRow("null") << QTransform() << QRect();
+ QTest::newRow("identity QRect(0, 0, 100, 100)") << QTransform() << QRect(0, 0, 100, 100);
+ QTest::newRow("rotate QRect(0, 0, 100, 100)") << QTransform().rotate(90) << QRect(0, 0, 100, 100);
+ QTest::newRow("scale QRect(0, 0, 100, 100)") << QTransform().scale(5, 5) << QRect(0, 0, 100, 100);
+ QTest::newRow("translate QRect(0, 0, 100, 100)") << QTransform().translate(5, 5) << QRect(0, 0, 100, 100);
+ QTest::newRow("shear QRect(0, 0, 100, 100)") << QTransform().shear(1.5, 1.5) << QRect(0, 0, 100, 100);
+ QTest::newRow("perspect QRect(0, 0, 100, 100)") << QTransform().rotate(45, Qt::XAxis) << QRect(0, 0, 100, 100);
+}
+
+void tst_QGraphicsView::mapRectToScene()
+{
+ QFETCH(QTransform, transform);
+ QFETCH(QRect, rect);
+
+ QGraphicsView view;
+ view.setTransform(transform);
+ processEvents();
+
+ QBENCHMARK {
+ view.mapToScene(rect);
+ }
+}
+
+void tst_QGraphicsView::mapRectFromScene_data()
+{
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<QRectF>("rect");
+
+ QTest::newRow("null") << QTransform() << QRectF();
+ QTest::newRow("identity QRectF(0, 0, 100, 100)") << QTransform() << QRectF(0, 0, 100, 100);
+ QTest::newRow("rotate QRectF(0, 0, 100, 100)") << QTransform().rotate(90) << QRectF(0, 0, 100, 100);
+ QTest::newRow("scale QRectF(0, 0, 100, 100)") << QTransform().scale(5, 5) << QRectF(0, 0, 100, 100);
+ QTest::newRow("translate QRectF(0, 0, 100, 100)") << QTransform().translate(5, 5) << QRectF(0, 0, 100, 100);
+ QTest::newRow("shear QRectF(0, 0, 100, 100)") << QTransform().shear(1.5, 1.5) << QRectF(0, 0, 100, 100);
+ QTest::newRow("perspect QRectF(0, 0, 100, 100)") << QTransform().rotate(45, Qt::XAxis) << QRectF(0, 0, 100, 100);
+}
+
+void tst_QGraphicsView::mapRectFromScene()
+{
+ QFETCH(QTransform, transform);
+ QFETCH(QRectF, rect);
+
+ QGraphicsView view;
+ view.setTransform(transform);
+ processEvents();
+
+ QBENCHMARK {
+ view.mapFromScene(rect);
+ }
+}
+
+void tst_QGraphicsView::chipTester_data()
+{
+ QTest::addColumn<bool>("antialias");
+ QTest::addColumn<bool>("opengl");
+ QTest::addColumn<int>("operation");
+ QTest::newRow("rotate, normal") << false << false << 0;
+ QTest::newRow("rotate, normal, antialias") << true << false << 0;
+ QTest::newRow("rotate, opengl") << false << true << 0;
+ QTest::newRow("rotate, opengl, antialias") << true << true << 0;
+ QTest::newRow("zoom, normal") << false << false << 1;
+ QTest::newRow("zoom, normal, antialias") << true << false << 1;
+ QTest::newRow("zoom, opengl") << false << true << 1;
+ QTest::newRow("zoom, opengl, antialias") << true << true << 1;
+ QTest::newRow("translate, normal") << false << false << 2;
+ QTest::newRow("translate, normal, antialias") << true << false << 2;
+ QTest::newRow("translate, opengl") << false << true << 2;
+ QTest::newRow("translate, opengl, antialias") << true << true << 2;
+}
+
+void tst_QGraphicsView::chipTester()
+{
+#ifdef Q_WS_WINCE_WM
+QSKIP("WinCE WM: Fails on Windows Mobile w/o OpenGL", SkipAll);
+#endif
+ QFETCH(bool, antialias);
+ QFETCH(bool, opengl);
+ QFETCH(int, operation);
+
+ ChipTester tester;
+ tester.setAntialias(antialias);
+ tester.setOpenGL(opengl);
+ tester.setOperation(ChipTester::Operation(operation));
+ tester.show();
+ QTest::qWaitForWindowShown(&tester);
+ QTest::qWait(250);
+ processEvents();
+
+ QBENCHMARK {
+ tester.runBenchmark();
+ }
+}
+
+static void addChildHelper(QGraphicsItem *parent, int n, bool rotate)
+{
+ if (!n)
+ return;
+ QGraphicsRectItem *item = new QGraphicsRectItem(QRectF(0, 0, 50, 50), parent);
+ item->setPos(10, 10);
+ if (rotate)
+ item->rotate(10);
+ addChildHelper(item, n - 1, rotate);
+}
+
+void tst_QGraphicsView::deepNesting_data()
+{
+ QTest::addColumn<bool>("rotate");
+ QTest::addColumn<bool>("sortCache");
+ QTest::addColumn<bool>("bsp");
+
+ QTest::newRow("bsp, no transform") << false << false << true;
+ QTest::newRow("bsp, rotation") << true << false << true;
+ QTest::newRow("bsp, no transform, sort cache") << false << true << true;
+ QTest::newRow("bsp, rotation, sort cache") << true << true << true;
+ QTest::newRow("no transform") << false << false << false;
+ QTest::newRow("rotation") << true << false << false;
+ QTest::newRow("no transform, sort cache") << false << true << false;
+ QTest::newRow("rotation, sort cache") << true << true << false;
+}
+
+void tst_QGraphicsView::deepNesting()
+{
+ QFETCH(bool, rotate);
+ QFETCH(bool, sortCache);
+ QFETCH(bool, bsp);
+
+ QGraphicsScene scene;
+ for (int y = 0; y < 15; ++y) {
+ for (int x = 0; x < 15; ++x) {
+ QGraphicsItem *item1 = scene.addRect(QRectF(0, 0, 50, 50));
+ if (rotate) item1->rotate(10);
+ item1->setPos(x * 25, y * 25);
+ addChildHelper(item1, 30, rotate);
+ }
+ }
+ scene.setItemIndexMethod(bsp ? QGraphicsScene::BspTreeIndex : QGraphicsScene::NoIndex);
+ scene.setSortCacheEnabled(sortCache);
+ scene.setSceneRect(scene.sceneRect());
+
+ mView.setRenderHint(QPainter::Antialiasing);
+ mView.setScene(&scene);
+ mView.tryResize(600, 600);
+ (void)scene.itemAt(0, 0);
+ processEvents();
+
+ QBENCHMARK {
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_START_INSTRUMENTATION
+#endif
+ mView.viewport()->update();
+ mView.waitForPaintEvent();
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_STOP_INSTRUMENTATION
+#endif
+ }
+}
+
+class AnimatedPixmapItem : public QGraphicsPixmapItem
+{
+public:
+ AnimatedPixmapItem(int x, int y, bool rot, bool scal, QGraphicsItem *parent = 0)
+ : QGraphicsPixmapItem(parent), rotateFactor(0), scaleFactor(0)
+ {
+ rotate = rot;
+ scale = scal;
+ xspeed = x;
+ yspeed = y;
+ }
+
+protected:
+ void advance(int i)
+ {
+ if (!i)
+ return;
+ int x = int(pos().x()) + pixmap().width();
+ x += xspeed;
+ x = (x % (300 + pixmap().width() * 2)) - pixmap().width();
+ int y = int(pos().y()) + pixmap().width();
+ y += yspeed;
+ y = (y % (300 + pixmap().width() * 2)) - pixmap().width();
+ setPos(x, y);
+
+ int rot = rotateFactor;
+ int sca = scaleFactor;
+ if (rotate)
+ rotateFactor = 1 + (rot + xspeed) % 360;
+ if (scale)
+ scaleFactor = 1 + (sca + yspeed) % 50;
+
+ if (rotate || scale) {
+ qreal s = 0.5 + scaleFactor / 50.0;
+ setTransform(QTransform().rotate(rotateFactor).scale(s, s));
+ }
+ }
+
+private:
+ int xspeed;
+ int yspeed;
+ int rotateFactor;
+ int scaleFactor;
+ bool rotate;
+ bool scale;
+};
+
+void tst_QGraphicsView::imageRiver_data()
+{
+ QTest::addColumn<int>("direction");
+ QTest::addColumn<bool>("rotation");
+ QTest::addColumn<bool>("scale");
+ QTest::newRow("horizontal") << 0 << false << false;
+ QTest::newRow("vertical") << 1 << false << false;
+ QTest::newRow("both") << 2 << false << false;
+ QTest::newRow("horizontal rot") << 0 << true << false;
+ QTest::newRow("horizontal scale") << 0 << false << true;
+ QTest::newRow("horizontal rot + scale") << 0 << true << true;
+}
+
+void tst_QGraphicsView::imageRiver()
+{
+ QFETCH(int, direction);
+ QFETCH(bool, rotation);
+ QFETCH(bool, scale);
+
+ QGraphicsScene scene(0, 0, 300, 300);
+
+ QPixmap pix(":/images/designer.png");
+ QVERIFY(!pix.isNull());
+
+ QList<QGraphicsItem *> items;
+ QFile file(":/random.data");
+ QVERIFY(file.open(QIODevice::ReadOnly));
+ QDataStream str(&file);
+ for (int i = 0; i < 50; ++i) {
+ AnimatedPixmapItem *item = 0;
+ if (direction == 0) item = new AnimatedPixmapItem((i % 4) + 1, 0, rotation, scale);
+ if (direction == 1) item = new AnimatedPixmapItem(0, (i % 4) + 1, rotation, scale);
+ if (direction == 2) item = new AnimatedPixmapItem((i % 4) + 1, (i % 4) + 1, rotation, scale);
+ item->setPixmap(pix);
+ int rnd1, rnd2;
+ str >> rnd1 >> rnd2;
+ item->setPos(-pix.width() + rnd1 % (300 + pix.width()),
+ -pix.height() + rnd2 % (300 + pix.height()));
+ scene.addItem(item);
+ }
+ scene.setSceneRect(0, 0, 300, 300);
+
+ mView.setScene(&scene);
+ mView.tryResize(300, 300);
+ processEvents();
+
+ QBENCHMARK {
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_START_INSTRUMENTATION
+#endif
+ for (int i = 0; i < 50; ++i) {
+ scene.advance();
+ mView.waitForPaintEvent();
+ }
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_STOP_INSTRUMENTATION
+#endif
+ }
+}
+
+class AnimatedTextItem : public QGraphicsSimpleTextItem
+{
+public:
+ AnimatedTextItem(int x, int y, bool rot, bool scal, QGraphicsItem *parent = 0)
+ : QGraphicsSimpleTextItem(parent), rotateFactor(0), scaleFactor(25)
+ {
+ setText("River of text");
+ rotate = rot;
+ scale = scal;
+ xspeed = x;
+ yspeed = y;
+ }
+
+protected:
+ void advance(int i)
+ {
+ if (!i)
+ return;
+ QRect r = boundingRect().toRect();
+ int x = int(pos().x()) + r.width();
+ x += xspeed;
+ x = (x % (300 + r.width() * 2)) - r.width();
+ int y = int(pos().y()) + r.width();
+ y += yspeed;
+ y = (y % (300 + r.width() * 2)) - r.width();
+ setPos(x, y);
+
+ int rot = rotateFactor;
+ int sca = scaleFactor;
+ if (rotate)
+ rotateFactor = 1 + (rot + xspeed) % 360;
+ if (scale)
+ scaleFactor = 1 + (sca + yspeed) % 50;
+
+ if (rotate || scale) {
+ qreal s = 0.5 + scaleFactor / 50.0;
+ setTransform(QTransform().rotate(rotateFactor).scale(s, s));
+ }
+ }
+
+private:
+ int xspeed;
+ int yspeed;
+ int rotateFactor;
+ int scaleFactor;
+ bool rotate;
+ bool scale;
+};
+
+void tst_QGraphicsView::textRiver_data()
+{
+ QTest::addColumn<int>("direction");
+ QTest::addColumn<bool>("rotation");
+ QTest::addColumn<bool>("scale");
+ QTest::newRow("horizontal") << 0 << false << false;
+ QTest::newRow("vertical") << 1 << false << false;
+ QTest::newRow("both") << 2 << false << false;
+ QTest::newRow("horizontal rot") << 0 << true << false;
+ QTest::newRow("horizontal scale") << 0 << false << true;
+ QTest::newRow("horizontal rot + scale") << 0 << true << true;
+}
+
+void tst_QGraphicsView::textRiver()
+{
+ QFETCH(int, direction);
+ QFETCH(bool, rotation);
+ QFETCH(bool, scale);
+
+ QGraphicsScene scene(0, 0, 300, 300);
+
+ QPixmap pix(":/images/designer.png");
+ QVERIFY(!pix.isNull());
+
+ QList<QGraphicsItem *> items;
+ QFile file(":/random.data");
+ QVERIFY(file.open(QIODevice::ReadOnly));
+ QDataStream str(&file);
+ for (int i = 0; i < 50; ++i) {
+ AnimatedTextItem *item = 0;
+ if (direction == 0) item = new AnimatedTextItem((i % 4) + 1, 0, rotation, scale);
+ if (direction == 1) item = new AnimatedTextItem(0, (i % 4) + 1, rotation, scale);
+ if (direction == 2) item = new AnimatedTextItem((i % 4) + 1, (i % 4) + 1, rotation, scale);
+ int rnd1, rnd2;
+ str >> rnd1 >> rnd2;
+ item->setPos(-pix.width() + rnd1 % (300 + pix.width()),
+ -pix.height() + rnd2 % (300 + pix.height()));
+ item->setAcceptDrops(false);
+ item->setAcceptHoverEvents(false);
+ scene.addItem(item);
+ }
+ scene.setSceneRect(0, 0, 300, 300);
+
+ mView.setScene(&scene);
+ mView.tryResize(300, 300);
+ processEvents();
+
+ QBENCHMARK {
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_START_INSTRUMENTATION
+#endif
+ for (int i = 0; i < 50; ++i) {
+ scene.advance();
+ mView.waitForPaintEvent();
+ }
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_STOP_INSTRUMENTATION
+#endif
+ }
+}
+
+class AnimatedPixmapCacheItem : public QGraphicsPixmapItem
+{
+public:
+ AnimatedPixmapCacheItem(int x, int y, QGraphicsItem *parent = 0)
+ : QGraphicsPixmapItem(parent)
+ {
+ xspeed = x;
+ yspeed = y;
+ }
+
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0)
+ {
+ QGraphicsPixmapItem::paint(painter,option,widget);
+ //We just want to wait, and we don't want to process the event loop with qWait
+ QTest::qSleep(3);
+ }
+protected:
+ void advance(int i)
+ {
+ if (!i)
+ return;
+ int x = int(pos().x()) + pixmap().width();
+ x += xspeed;
+ x = (x % (300 + pixmap().width() * 2)) - pixmap().width();
+ int y = int(pos().y()) + pixmap().width();
+ y += yspeed;
+ y = (y % (300 + pixmap().width() * 2)) - pixmap().width();
+ setPos(x, y);
+ }
+
+private:
+ int xspeed;
+ int yspeed;
+};
+
+void tst_QGraphicsView::moveItemCache_data()
+{
+ QTest::addColumn<int>("direction");
+ QTest::addColumn<bool>("rotation");
+ QTest::addColumn<int>("cacheMode");
+ QTest::newRow("Horizontal movement : ItemCoordinate Cache") << 0 << false << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Horizontal movement : DeviceCoordinate Cache") << 0 << false << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Horizontal movement : No Cache") << 0 << false << (int)QGraphicsItem::NoCache;
+ QTest::newRow("Vertical + Horizontal movement : ItemCoordinate Cache") << 2 << false << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Vertical + Horizontal movement : DeviceCoordinate Cache") << 2 << false << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Vertical + Horizontal movement : No Cache") << 2 << false << (int)QGraphicsItem::NoCache;
+ QTest::newRow("Horizontal movement + Rotation : ItemCoordinate Cache") << 0 << true << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Horizontal movement + Rotation : DeviceCoordinate Cache") << 0 << true << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Horizontal movement + Rotation : No Cache") << 0 << true << (int)QGraphicsItem::NoCache;
+}
+
+void tst_QGraphicsView::moveItemCache()
+{
+ QFETCH(int, direction);
+ QFETCH(bool, rotation);
+ QFETCH(int, cacheMode);
+
+ QGraphicsScene scene(0, 0, 300, 300);
+
+ QPixmap pix(":/images/wine.jpeg");
+ QVERIFY(!pix.isNull());
+
+ QList<QGraphicsItem *> items;
+ QFile file(":/random.data");
+ QVERIFY(file.open(QIODevice::ReadOnly));
+ QDataStream str(&file);
+ for (int i = 0; i < 5; ++i) {
+ AnimatedPixmapCacheItem *item = 0;
+ if (direction == 0) item = new AnimatedPixmapCacheItem((i % 4) + 1, 0);
+ if (direction == 1) item = new AnimatedPixmapCacheItem(0, (i % 4) + 1);
+ if (direction == 2) item = new AnimatedPixmapCacheItem((i % 4) + 1, (i % 4) + 1);
+ item->setPixmap(pix);
+ item->setCacheMode((QGraphicsItem::CacheMode)cacheMode);
+ if (rotation)
+ item->setTransform(QTransform().rotate(45));
+ int rnd1, rnd2;
+ str >> rnd1 >> rnd2;
+ item->setPos(-pix.width() + rnd1 % (400 + pix.width()),
+ -pix.height() + rnd2 % (400 + pix.height()));
+ scene.addItem(item);
+ }
+ scene.setSceneRect(0, 0, 400, 400);
+
+ mView.setScene(&scene);
+ mView.tryResize(400, 400);
+ processEvents();
+
+ QBENCHMARK {
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_START_INSTRUMENTATION
+#endif
+ for (int i = 0; i < 5; ++i) {
+ scene.advance();
+ mView.waitForPaintEvent();
+ }
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_STOP_INSTRUMENTATION
+#endif
+ }
+}
+
+class UpdatedPixmapCacheItem : public QGraphicsPixmapItem
+{
+public:
+ UpdatedPixmapCacheItem(bool partial, QGraphicsItem *parent = 0)
+ : QGraphicsPixmapItem(parent), partial(partial)
+ {
+ }
+
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0)
+ {
+ QGraphicsPixmapItem::paint(painter,option,widget);
+ }
+protected:
+ void advance(int i)
+ {
+ Q_UNUSED(i);
+ if (partial)
+ update(QRectF(boundingRect().center().x(), boundingRect().center().x(), 30, 30));
+ else
+ update();
+ }
+
+private:
+ bool partial;
+};
+
+void tst_QGraphicsView::paintItemCache_data()
+{
+ QTest::addColumn<bool>("updatePartial");
+ QTest::addColumn<bool>("rotation");
+ QTest::addColumn<int>("cacheMode");
+ QTest::newRow("Partial Update : ItemCoordinate Cache") << true << false << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Partial Update : DeviceCoordinate Cache") << true << false << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Partial Update : No Cache") << true << false << (int)QGraphicsItem::NoCache;
+ QTest::newRow("Full Update : ItemCoordinate Cache") << false << false << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Full Update : DeviceCoordinate Cache") << false << false << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Full Update : No Cache") << false << false << (int)QGraphicsItem::NoCache;
+ QTest::newRow("Partial Update : ItemCoordinate Cache item rotated") << true << true << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Partial Update : DeviceCoordinate Cache item rotated") << true << true << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Partial Update : No Cache item rotated") << true << true << (int)QGraphicsItem::NoCache;
+ QTest::newRow("Full Update : ItemCoordinate Cache item rotated") << false << true << (int)QGraphicsItem::ItemCoordinateCache;
+ QTest::newRow("Full Update : DeviceCoordinate Cache item rotated") << false << true << (int)QGraphicsItem::DeviceCoordinateCache;
+ QTest::newRow("Full Update : No Cache item rotated") << false << true <<(int)QGraphicsItem::NoCache;
+}
+
+void tst_QGraphicsView::paintItemCache()
+{
+ QFETCH(bool, updatePartial);
+ QFETCH(bool, rotation);
+ QFETCH(int, cacheMode);
+
+ QGraphicsScene scene(0, 0, 300, 300);
+
+ QPixmap pix(":/images/wine.jpeg");
+ QVERIFY(!pix.isNull());
+
+ QList<QGraphicsItem *> items;
+ QFile file(":/random.data");
+ QVERIFY(file.open(QIODevice::ReadOnly));
+ QDataStream str(&file);
+ UpdatedPixmapCacheItem *item = new UpdatedPixmapCacheItem(updatePartial);
+ item->setPixmap(pix);
+ item->setCacheMode((QGraphicsItem::CacheMode)cacheMode);
+ if (rotation)
+ item->setTransform(QTransform().rotate(45));
+ item->setPos(-100, -100);
+ scene.addItem(item);
+
+ QPixmap pix2(":/images/wine-big.jpeg");
+ item = new UpdatedPixmapCacheItem(updatePartial);
+ item->setPixmap(pix2);
+ item->setCacheMode((QGraphicsItem::CacheMode)cacheMode);
+ if (rotation)
+ item->setTransform(QTransform().rotate(45));
+ item->setPos(0, 0);
+ scene.addItem(item);
+ scene.setSceneRect(-100, -100, 600, 600);
+
+ mView.tryResize(600, 600);
+ mView.setScene(&scene);
+ processEvents();
+
+ QBENCHMARK {
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_START_INSTRUMENTATION
+#endif
+ for (int i = 0; i < 5; ++i) {
+ scene.advance();
+ mView.waitForPaintEvent();
+ }
+#ifdef CALLGRIND_DEBUG
+ CALLGRIND_STOP_INSTRUMENTATION
+#endif
+ }
+}
+
+QTEST_MAIN(tst_QGraphicsView)
+#include "tst_qgraphicsview.moc"
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicswidget/qgraphicswidget.pro b/tests/benchmarks/gui/graphicsview/qgraphicswidget/qgraphicswidget.pro
new file mode 100644
index 0000000000..ed532377a1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicswidget/qgraphicswidget.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicswidget
+TEMPLATE = app
+# Input
+SOURCES += tst_qgraphicswidget.cpp
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp b/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp
new file mode 100644
index 0000000000..2aba5a7caa
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp
@@ -0,0 +1,94 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QGraphicsItem>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+#include <QGraphicsWidget>
+//TESTED_FILES=
+
+class tst_QGraphicsWidget : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QGraphicsWidget();
+ virtual ~tst_QGraphicsWidget();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void move();
+};
+
+tst_QGraphicsWidget::tst_QGraphicsWidget()
+{
+}
+
+tst_QGraphicsWidget::~tst_QGraphicsWidget()
+{
+}
+
+void tst_QGraphicsWidget::init()
+{
+}
+
+void tst_QGraphicsWidget::cleanup()
+{
+}
+
+void tst_QGraphicsWidget::move()
+{
+ QGraphicsScene scene;
+ QGraphicsWidget *widget = new QGraphicsWidget();
+ scene.addItem(widget);
+ QGraphicsView view(&scene);
+ view.show();
+ QBENCHMARK {
+ widget->setPos(qrand(),qrand());
+ }
+}
+
+QTEST_MAIN(tst_QGraphicsWidget)
+#include "tst_qgraphicswidget.moc"
diff --git a/tests/benchmarks/gui/gui.pro b/tests/benchmarks/gui/gui.pro
new file mode 100644
index 0000000000..d8254583c5
--- /dev/null
+++ b/tests/benchmarks/gui/gui.pro
@@ -0,0 +1,18 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ animation \
+ graphicsview \
+ image \
+ itemviews \
+ kernel \
+ math3d \
+ painting \
+ styles \
+ text
+
+TRUSTED_BENCHMARKS += \
+ graphicsview/functional/GraphicsViewBenchmark \
+ graphicsview/qgraphicsview \
+ painting/qtracebench
+
+include(../trusted-benchmarks.pri) \ No newline at end of file
diff --git a/tests/benchmarks/gui/image/blendbench/blendbench.pro b/tests/benchmarks/gui/image/blendbench/blendbench.pro
new file mode 100644
index 0000000000..aa6ab95e11
--- /dev/null
+++ b/tests/benchmarks/gui/image/blendbench/blendbench.pro
@@ -0,0 +1,8 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_blendbench
+DEPENDPATH += .
+INCLUDEPATH += .
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/image/blendbench/main.cpp b/tests/benchmarks/gui/image/blendbench/main.cpp
new file mode 100644
index 0000000000..a16fd5a5fa
--- /dev/null
+++ b/tests/benchmarks/gui/image/blendbench/main.cpp
@@ -0,0 +1,227 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtGui>
+#include <QString>
+
+#include <qtest.h>
+
+void paint(QPaintDevice *device)
+{
+ QPainter p(device);
+ p.setCompositionMode(QPainter::CompositionMode_Source);
+ p.fillRect(0, 0, device->width(), device->height(), Qt::transparent);
+
+ QLinearGradient g(QPoint(0, 0), QPoint(1, 1));
+// g.setCoordinateMode(QGradient::ObjectBoundingMode);
+ g.setColorAt(0, Qt::magenta);
+ g.setColorAt(0, Qt::white);
+
+// p.setOpacity(0.8);
+ p.setPen(Qt::NoPen);
+ p.setBrush(g);
+ p.setRenderHint(QPainter::Antialiasing);
+ p.setOpacity(0.9);
+ p.drawEllipse(0, 0, device->width(), device->height());
+}
+
+QLatin1String compositionModes[] = {
+ QLatin1String("SourceOver"),
+ QLatin1String("DestinationOver"),
+ QLatin1String("Clear"),
+ QLatin1String("Source"),
+ QLatin1String("Destination"),
+ QLatin1String("SourceIn"),
+ QLatin1String("DestinationIn"),
+ QLatin1String("SourceOut"),
+ QLatin1String("DestinationOut"),
+ QLatin1String("SourceAtop"),
+ QLatin1String("DestinationAtop"),
+ QLatin1String("Xor"),
+
+ //svg 1.2 blend modes
+ QLatin1String("Plus"),
+ QLatin1String("Multiply"),
+ QLatin1String("Screen"),
+ QLatin1String("Overlay"),
+ QLatin1String("Darken"),
+ QLatin1String("Lighten"),
+ QLatin1String("ColorDodge"),
+ QLatin1String("ColorBurn"),
+ QLatin1String("HardLight"),
+ QLatin1String("SoftLight"),
+ QLatin1String("Difference"),
+ QLatin1String("Exclusion")
+};
+
+enum BrushType { ImageBrush, SolidBrush };
+QLatin1String brushTypes[] = {
+ QLatin1String("ImageBrush"),
+ QLatin1String("SolidBrush"),
+};
+
+class BlendBench : public QObject
+{
+ Q_OBJECT
+private slots:
+ void blendBench_data();
+ void blendBench();
+
+ void blendBenchAlpha_data();
+ void blendBenchAlpha();
+
+ void unalignedBlendArgb32_data();
+ void unalignedBlendArgb32();
+};
+
+void BlendBench::blendBench_data()
+{
+ int first = 0;
+ int limit = 12;
+ if (qApp->arguments().contains("--extended")) {
+ first = 12;
+ limit = 24;
+ }
+
+ QTest::addColumn<int>("brushType");
+ QTest::addColumn<int>("compositionMode");
+
+ for (int brush = ImageBrush; brush <= SolidBrush; ++brush)
+ for (int mode = first; mode < limit; ++mode)
+ QTest::newRow(QString("brush=%1; mode=%2")
+ .arg(brushTypes[brush]).arg(compositionModes[mode]).toAscii().data())
+ << brush << mode;
+}
+
+void BlendBench::blendBench()
+{
+ QFETCH(int, brushType);
+ QFETCH(int, compositionMode);
+
+ QImage img(512, 512, QImage::Format_ARGB32_Premultiplied);
+ QImage src(512, 512, QImage::Format_ARGB32_Premultiplied);
+ paint(&src);
+ QPainter p(&img);
+ p.setPen(Qt::NoPen);
+
+ p.setCompositionMode(QPainter::CompositionMode(compositionMode));
+ if (brushType == ImageBrush) {
+ p.setBrush(QBrush(src));
+ } else if (brushType == SolidBrush) {
+ p.setBrush(QColor(127, 127, 127, 127));
+ }
+
+ QBENCHMARK {
+ p.drawRect(0, 0, 512, 512);
+ }
+}
+
+void BlendBench::blendBenchAlpha_data()
+{
+ blendBench_data();
+}
+
+void BlendBench::blendBenchAlpha()
+{
+ QFETCH(int, brushType);
+ QFETCH(int, compositionMode);
+
+ QImage img(512, 512, QImage::Format_ARGB32_Premultiplied);
+ QImage src(512, 512, QImage::Format_ARGB32_Premultiplied);
+ paint(&src);
+ QPainter p(&img);
+ p.setPen(Qt::NoPen);
+
+ p.setCompositionMode(QPainter::CompositionMode(compositionMode));
+ if (brushType == ImageBrush) {
+ p.setBrush(QBrush(src));
+ } else if (brushType == SolidBrush) {
+ p.setBrush(QColor(127, 127, 127, 127));
+ }
+ p.setOpacity(0.7f);
+
+ QBENCHMARK {
+ p.drawRect(0, 0, 512, 512);
+ }
+}
+
+void BlendBench::unalignedBlendArgb32_data()
+{
+ // The performance of blending can depend of the alignment of the data
+ // on 16 bytes. Some SIMD instruction set have significantly better
+ // memory access when the memory is aligned on 16 bytes boundary.
+
+ // offset in 32 bits words
+ QTest::addColumn<int>("offset");
+ QTest::newRow("aligned on 16 bytes") << 0;
+ QTest::newRow("unaligned by 4 bytes") << 1;
+ QTest::newRow("unaligned by 8 bytes") << 2;
+ QTest::newRow("unaligned by 12 bytes") << 3;
+}
+
+void BlendBench::unalignedBlendArgb32()
+{
+ const int dimension = 1024;
+
+ // We use dst aligned by design. We don't want to test all the combination of alignemnt for src and dst.
+ // Moreover, it make sense for us to align dst in the implementation because it is accessed more often.
+ uchar *dstMemory = static_cast<uchar*>(qMallocAligned((dimension * dimension * sizeof(quint32)), 16));
+ QImage destination(dstMemory, dimension, dimension, QImage::Format_ARGB32_Premultiplied);
+ destination.fill(0x12345678); // avoid special cases of alpha
+
+ uchar *srcMemory = static_cast<uchar*>(qMallocAligned((dimension * dimension * sizeof(quint32)) + 16, 16));
+ QFETCH(int, offset);
+ srcMemory += (offset * sizeof(quint32));
+
+ QImage src(srcMemory, dimension, dimension, QImage::Format_ARGB32_Premultiplied);
+ src.fill(0x87654321);
+
+ QPainter painter(&destination);
+ QBENCHMARK {
+ painter.drawImage(QPoint(), src);
+ }
+
+ qFreeAligned(srcMemory);
+ qFreeAligned(dstMemory);
+}
+
+QTEST_MAIN(BlendBench)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/image/image.pro b/tests/benchmarks/gui/image/image.pro
new file mode 100644
index 0000000000..a8c6732413
--- /dev/null
+++ b/tests/benchmarks/gui/image/image.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ blendbench \
+ qimageconversion \
+ qimagereader \
+ qpixmap \
+ qpixmapcache
diff --git a/tests/benchmarks/gui/image/qimageconversion/qimageconversion.pro b/tests/benchmarks/gui/image/qimageconversion/qimageconversion.pro
new file mode 100644
index 0000000000..ec50d98c54
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimageconversion/qimageconversion.pro
@@ -0,0 +1,10 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_imageConversion
+
+SOURCES += tst_qimageconversion.cpp
+
+!contains(QT_CONFIG, no-gif):DEFINES += QTEST_HAVE_GIF
+!contains(QT_CONFIG, no-jpeg):DEFINES += QTEST_HAVE_JPEG
+!contains(QT_CONFIG, no-mng):DEFINES += QTEST_HAVE_MNG
+!contains(QT_CONFIG, no-tiff):DEFINES += QTEST_HAVE_TIFF
diff --git a/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp b/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp
new file mode 100644
index 0000000000..cf5b12008c
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimageconversion/tst_qimageconversion.cpp
@@ -0,0 +1,108 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QImage>
+
+Q_DECLARE_METATYPE(QImage)
+
+class tst_QImageConversion : public QObject
+{
+ Q_OBJECT
+private slots:
+ void convertRgb888ToRGB32_data();
+ void convertRgb888ToRGB32();
+
+private:
+ QImage generateImageRgb888(int width, int height);
+};
+
+void tst_QImageConversion::convertRgb888ToRGB32_data()
+{
+ QTest::addColumn<QImage>("inputImage");
+ // height = 5000 to get interesting timing.
+
+ // 3 pixels wide -> smaller than regular vector of 128bits
+ QTest::newRow("width: 3px; height: 5000px;") << generateImageRgb888(3, 5000);
+
+ // 8 pixels wide -> potential for 2 vectors
+ QTest::newRow("width: 8px; height: 5000px;") << generateImageRgb888(3, 5000);
+
+ // 16 pixels, minimum for the SSSE3 implementation
+ QTest::newRow("width: 16px; height: 5000px;") << generateImageRgb888(16, 5000);
+
+ // 50 pixels, more realistic use case
+ QTest::newRow("width: 50px; height: 5000px;") << generateImageRgb888(50, 5000);
+
+ // 2000 pixels -> typical values for pictures
+ QTest::newRow("width: 2000px; height: 5000px;") << generateImageRgb888(2000, 5000);
+}
+
+void tst_QImageConversion::convertRgb888ToRGB32()
+{
+ QFETCH(QImage, inputImage);
+
+ QBENCHMARK {
+ volatile QImage output = inputImage.convertToFormat(QImage::Format_RGB32);
+ // we need the volatile and the following to make sure the compiler does not do
+ // anything stupid :)
+ (void)output;
+ }
+}
+
+/*
+ Fill a RGB888 image with "random" pixel values.
+ */
+QImage tst_QImageConversion::generateImageRgb888(int width, int height)
+{
+ QImage image(width, height, QImage::Format_RGB888);
+ const int byteWidth = width * 3;
+
+ for (int y = 0; y < image.height(); ++y) {
+ uchar *scanline = image.scanLine(y);
+ for (int x = 0; x < byteWidth; ++x)
+ scanline[x] = x ^ y;
+ }
+ return image;
+}
+
+QTEST_MAIN(tst_QImageConversion)
+#include "tst_qimageconversion.moc"
diff --git a/tests/benchmarks/gui/image/qimagereader/images/16bpp.bmp b/tests/benchmarks/gui/image/qimagereader/images/16bpp.bmp
new file mode 100644
index 0000000000..74ce63edd4
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/16bpp.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/4bpp-rle.bmp b/tests/benchmarks/gui/image/qimagereader/images/4bpp-rle.bmp
new file mode 100644
index 0000000000..ae71e678fd
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/4bpp-rle.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.jpg b/tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.jpg
new file mode 100644
index 0000000000..b8aa9ea609
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.jpg
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.png b/tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.png
new file mode 100644
index 0000000000..a24db1b13f
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/YCbCr_cmyk.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/YCbCr_rgb.jpg b/tests/benchmarks/gui/image/qimagereader/images/YCbCr_rgb.jpg
new file mode 100644
index 0000000000..8771224cb5
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/YCbCr_rgb.jpg
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/away.png b/tests/benchmarks/gui/image/qimagereader/images/away.png
new file mode 100644
index 0000000000..0e21a37883
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/away.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/ball.mng b/tests/benchmarks/gui/image/qimagereader/images/ball.mng
new file mode 100644
index 0000000000..81544780fd
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/ball.mng
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/bat1.gif b/tests/benchmarks/gui/image/qimagereader/images/bat1.gif
new file mode 100644
index 0000000000..cb6f4f7a8e
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/bat1.gif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/bat2.gif b/tests/benchmarks/gui/image/qimagereader/images/bat2.gif
new file mode 100644
index 0000000000..fbbda4ef76
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/bat2.gif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/beavis.jpg b/tests/benchmarks/gui/image/qimagereader/images/beavis.jpg
new file mode 100644
index 0000000000..d55504779b
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/beavis.jpg
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/black.png b/tests/benchmarks/gui/image/qimagereader/images/black.png
new file mode 100644
index 0000000000..6c94085ed5
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/black.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/black.xpm b/tests/benchmarks/gui/image/qimagereader/images/black.xpm
new file mode 100644
index 0000000000..d7925bf211
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/black.xpm
@@ -0,0 +1,65 @@
+/* XPM */
+static char * ddd_xpm[] = {
+/* $Id: ddd.xpm,v 1.5 1999/08/19 11:30:07 andreas Exp $
+ * DDD Logo. Copyright (C) 1997 TU Braunschweig, Germany.
+ * For details on DDD, see `http://www.gnu.org/software/ddd/'.
+ * width height ncolors chars_per_pixel */
+" 48 48 8 1",
+/* Colors */
+" c None m None g None g4 None s Background ",
+". c black m black g black g4 black s Legs ",
+"X c grey m white g grey g4 grey s Body ",
+"- c grey m white g grey g4 grey s Border ",
+"o c #000040 m black g grey25 g4 grey25 s Handle1 ",
+"O c blue4 m black g grey25 g4 grey25 s Handle2 ",
+"+ c white m white g white g4 white s Light ",
+"* c DarkGreen m black g grey25 g4 grey25 s Eye ",
+/* Pixels */
+" . . ",
+" . .. ",
+" . . ",
+" .. . ",
+" .. .. .. ",
+" .. . . . ",
+" . . . . .. ",
+" . .X. . ",
+" . *.X.* .. ",
+" .. .. .XXX. .. ... ",
+" . .X...XXX...X. . ",
+" .. ..XXX.XXX.XXX. .. ",
+" .....XXXX...XXXX. . ",
+" .. ..XXXXXXXXX.. .. ",
+" ...XXXXXXX..... ",
+" ......... ",
+" .XXXXXXX. ",
+" .....XXX..... ",
+" .XXXXXoOOOOOOX. ... ",
+" .. ..XXXoOOO-----OOO..... ",
+" .........XXoO-----..----O .. ",
+" .. ..X..oO--.........--O .. ",
+" . ..XXXoO--..++.......--O .. ",
+" .. .XXXXO-XXX+++XXXXXXXXX-O . ",
+" .. .....oO-XX+++XXXXXXXXXXX-O .. ",
+" .. .XXXoO--XX++XXXXXXXXXXXX-O .. ",
+" .. ..XXXoO-..+++............-O .. ",
+" . .. .XXoO--..++.............-OO .. ",
+" . ... ...oO--..................-O ",
+".. . .XXoO-XXXXXXXXXXXXXXXXXXX-O ",
+" .. .XXoO-XXXXXXXXXXXXXXXXXXX-O ",
+" .. .XoO-XXXXXXXXXXXXXXXXXXX-O. ",
+" . ...oO-.................-O .. ",
+" . .XXoO-.................-O .. ",
+" . ..XoO-.................-O .. ",
+" . ...oO-XXXXXXXXXXXXXXX-OOO . ",
+" .. .XoOO-XXXXXXXXXXXXX-OOOOO . ",
+" .. ..XoOO---.......---OOOOOO . ",
+" .. ....oOO---...----OOOOOOOO ",
+" . .XX..oOO-----OOOOOOOOOOO ",
+" . .....OOOOOOOOooOOOOOOOOO ",
+" . .XXooooooOo oOOOOOOOOO ",
+" . .XXX. ooOOOOOOO ",
+" .. ... ooOOOOOO ",
+" . ooOOOOOO ",
+" ooOOOOOO ",
+" ooOOOOOO ",
+" ooOOOOOO "};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/colorful.bmp b/tests/benchmarks/gui/image/qimagereader/images/colorful.bmp
new file mode 100644
index 0000000000..8ea6f4acd7
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/colorful.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt-colors.xpm b/tests/benchmarks/gui/image/qimagereader/images/corrupt-colors.xpm
new file mode 100644
index 0000000000..f8d80edbbc
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt-colors.xpm
@@ -0,0 +1,26 @@
+/* XPM */
+static const char *marble_xpm[] = {
+/* width height num_colors chars_per_pixel */
+" 240 240 223 2",
+/* colors */
+".. c #959595",
+".# c #c5c5c5",
+".a c #adadad",
+".b c #dedede",
+".c c #b7b7b7",
+".d c #d2d2d2",
+".e c #bebebe",
+".f c #c9c9c9",
+".g c #b8b8b8",
+".h c #d6d6d6",
+".i c #9e9e9e",
+".j c #eaeaea",
+".k c #b2b2b2",
+".l c #cecece",
+".m c #a5a5a5",
+".n c #e4e4e4",
+".o c #c4c4c4",
+".p c #d9d9d9",
+".q c #b1b1b1",
+/* pixels */
+"aYbla9aN.N#x",
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt-data.tif b/tests/benchmarks/gui/image/qimagereader/images/corrupt-data.tif
new file mode 100644
index 0000000000..d63c688b27
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt-data.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt-pixels.xpm b/tests/benchmarks/gui/image/qimagereader/images/corrupt-pixels.xpm
new file mode 100644
index 0000000000..21031ee604
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt-pixels.xpm
@@ -0,0 +1,7 @@
+/* XPM */
+static char * test_xpm[] = {
+"256 256 1 1",
+" c grey",
+" ",
+" ",
+" "};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt.bmp b/tests/benchmarks/gui/image/qimagereader/images/corrupt.bmp
new file mode 100644
index 0000000000..824190bdeb
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt.gif b/tests/benchmarks/gui/image/qimagereader/images/corrupt.gif
new file mode 100644
index 0000000000..07259454c9
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt.gif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt.jpg b/tests/benchmarks/gui/image/qimagereader/images/corrupt.jpg
new file mode 100644
index 0000000000..1959662922
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt.jpg
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt.mng b/tests/benchmarks/gui/image/qimagereader/images/corrupt.mng
new file mode 100644
index 0000000000..17fd43a5ca
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt.mng
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt.png b/tests/benchmarks/gui/image/qimagereader/images/corrupt.png
new file mode 100644
index 0000000000..9d8911c64e
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/corrupt.xbm b/tests/benchmarks/gui/image/qimagereader/images/corrupt.xbm
new file mode 100644
index 0000000000..8510634e6d
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/corrupt.xbm
@@ -0,0 +1,5 @@
+#define noname_width 271
+#define noname_height 273
+static char noname_bits[] = {
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/crash-signed-char.bmp b/tests/benchmarks/gui/image/qimagereader/images/crash-signed-char.bmp
new file mode 100644
index 0000000000..b35cda6c35
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/crash-signed-char.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/earth.gif b/tests/benchmarks/gui/image/qimagereader/images/earth.gif
new file mode 100644
index 0000000000..2c229eb110
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/earth.gif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/fire.mng b/tests/benchmarks/gui/image/qimagereader/images/fire.mng
new file mode 100644
index 0000000000..c6695c8369
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/fire.mng
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/font.bmp b/tests/benchmarks/gui/image/qimagereader/images/font.bmp
new file mode 100644
index 0000000000..28b8c66924
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/font.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/gnus.xbm b/tests/benchmarks/gui/image/qimagereader/images/gnus.xbm
new file mode 100644
index 0000000000..58d1ac845a
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/gnus.xbm
@@ -0,0 +1,622 @@
+#define noname_width 271
+#define noname_height 273
+static char noname_bits[] = {
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x49,0xe0,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x97,0xaa,0x8a,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x57,0x2a,0x41,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa9,0x52,0x16,0xfe,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4a,0x49,0x05,
+ 0xf9,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0x95,0xaa,0x58,0xf4,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x7f,0xa5,0x54,0x26,0xe1,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x54,0x49,0x49,0xe4,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x2a,0xa5,
+ 0x2a,0xd1,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,0xd5,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xaf,0x52,0x95,0x54,0xc4,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xab,
+ 0x24,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x57,0x29,0xa9,0x92,0x11,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x57,0xd5,0xfa,0xff,0xff,0xab,0xea,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97,0x4a,0x55,0x2a,0x41,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x25,0x29,0xe5,0xff,0xff,0x95,0xa4,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa7,0xa4,
+ 0x24,0xa5,0x14,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4a,0xa5,0xd4,0xff,
+ 0x3f,0x52,0xa9,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x29,0x55,0x55,0x55,0x41,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xa9,0x54,0xea,0xff,0xdf,0x2a,0x55,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x55,0x55,0x4a,0x49,0x12,0x7e,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0x55,0xa5,0x92,0xff,0x23,0xa5,0x4a,0xd6,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa5,0xa4,0x94,0xaa,0x42,
+ 0x7d,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x4a,0x2a,0xa9,0xff,0xad,0x92,0x24,
+ 0xa9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2a,
+ 0x95,0x52,0x52,0x29,0x7c,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x52,0x49,0x55,
+ 0xfe,0x91,0x54,0x55,0x55,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0x49,0x29,0x55,0x25,0x85,0x7c,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x4f,0x95,0xaa,0x92,0x7e,0x55,0x55,0xa9,0x4a,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2a,0x50,0x95,0xaa,0x24,0x7e,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x57,0x2a,0x95,0x54,0x79,0x95,0x92,0x92,0x94,0xfc,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xb9,0x62,0x29,0x49,
+ 0x85,0x7c,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0x49,0x49,0x95,0xba,0xa4,0x54,
+ 0xaa,0x52,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,
+ 0x1a,0xf8,0xa7,0xaa,0x22,0x7c,0xff,0xff,0xff,0xff,0xff,0xff,0x55,0x55,0x52,
+ 0x2a,0x75,0x55,0xa5,0x24,0xa5,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xbf,0x5a,0xfd,0x57,0x92,0x94,0x7e,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x4a,0x4a,0x55,0x49,0x89,0x92,0x94,0xaa,0x94,0xf4,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x1a,0xfc,0x2f,0x55,0x05,0x7c,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x55,0xa9,0x4a,0x55,0x2a,0x55,0x55,0x55,0x55,0xe5,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x4e,0xfd,0x5f,
+ 0x29,0xa5,0x7c,0xff,0xff,0xff,0xff,0xff,0xff,0xa4,0x54,0x52,0x4a,0x55,0xa9,
+ 0xa4,0x24,0xa5,0x94,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x2f,0x1d,0xfe,0x3f,0x95,0x04,0x7c,0xff,0xfd,0xff,0xff,0xff,0x3f,0x49,0xa5,
+ 0x54,0xa9,0xa4,0x92,0x4a,0x49,0x4a,0x55,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xaf,0x44,0xfe,0x5f,0xa9,0x52,0x7d,0xff,0xe5,0xff,0xff,
+ 0xff,0x5f,0x55,0x92,0x2a,0x95,0x52,0x4a,0x52,0xaa,0x52,0x4a,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97,0x16,0xff,0xbf,0x4a,0x05,0x7c,
+ 0xff,0xd9,0xff,0xff,0xff,0x5f,0x95,0x42,0xa5,0x52,0x95,0xaa,0xaa,0xaa,0x94,
+ 0x54,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x57,0x43,0xfe,
+ 0xbf,0x54,0x52,0x7d,0x7f,0x25,0xff,0xff,0xff,0xa7,0xa4,0x28,0x92,0x54,0x4a,
+ 0xa5,0x4a,0x92,0xaa,0x4a,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xab,0x12,0xfe,0x7f,0xa5,0x02,0x7c,0x7f,0x55,0xfd,0xff,0xff,0x95,0x2a,
+ 0x82,0x54,0xa5,0x54,0x2a,0xa9,0x2a,0xa5,0x52,0xf5,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x27,0x4b,0xff,0xff,0x4a,0x29,0x7d,0xff,0x92,0xfe,
+ 0xff,0xff,0x55,0x92,0x20,0xa8,0x94,0x2a,0xa5,0x94,0x52,0x29,0xa9,0xf4,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97,0x01,0xff,0x7f,0x52,0x42,
+ 0x7c,0xff,0x25,0xf9,0xff,0x7f,0xaa,0x02,0x8a,0x40,0x29,0x49,0x09,0x41,0x4a,
+ 0x55,0x25,0xe5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x57,0x57,
+ 0xff,0xff,0x95,0x12,0x7d,0xff,0xa9,0xfa,0xff,0x7f,0x25,0xa9,0x20,0x2a,0xa5,
+ 0xaa,0x42,0x92,0x54,0x92,0x54,0x95,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xaf,0x83,0xff,0xff,0xa9,0x42,0x7e,0xff,0xaa,0xf4,0xff,0xaf,0x54,
+ 0x01,0x82,0x80,0xaa,0x54,0x14,0x08,0xa2,0xaa,0x4a,0xd2,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xef,0xcf,0xd7,0xff,0xff,0x52,0x12,0x7f,0xff,0x4a,
+ 0xea,0xff,0x57,0x92,0xaa,0x28,0x24,0x29,0x25,0x81,0x82,0x08,0x49,0x52,0x55,
+ 0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xdf,0xef,0xe7,0xff,0xff,0x2a,
+ 0x05,0x7e,0xff,0x55,0xd5,0xff,0xa5,0x2a,0x00,0x8e,0x10,0x4a,0x89,0x24,0x28,
+ 0xa0,0xaa,0x2a,0x49,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xe7,0xff,
+ 0xef,0xff,0xff,0xa5,0x50,0x7e,0xff,0x25,0xe5,0xff,0x2a,0xa5,0x52,0x7f,0x85,
+ 0x54,0x35,0x08,0x82,0x0a,0x55,0x95,0xaa,0xfc,0xff,0xff,0xff,0xcf,0xff,0xff,
+ 0xff,0xff,0xd7,0xff,0xff,0xff,0x7f,0x52,0x85,0x7e,0xff,0xab,0x94,0x1e,0x55,
+ 0x2a,0xc8,0xff,0x10,0x90,0x92,0xa0,0x08,0x20,0x24,0x52,0x25,0xfd,0xff,0xff,
+ 0xff,0xef,0xff,0xff,0xff,0xff,0xe9,0xff,0xff,0xff,0xff,0x94,0x10,0x7e,0xff,
+ 0x93,0xaa,0x6a,0x49,0x49,0xf2,0xff,0x85,0x52,0x09,0x0a,0xa2,0x4a,0x92,0x29,
+ 0xa9,0xf2,0xff,0xff,0xff,0xd3,0xff,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0x7f,
+ 0x55,0x25,0x7f,0xff,0x55,0x49,0x49,0x95,0x0a,0xf9,0xff,0x17,0x48,0x26,0x50,
+ 0x08,0x00,0xa9,0x4a,0x95,0xfa,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0xff,0xf2,
+ 0xff,0xff,0xff,0xff,0x92,0x80,0x7e,0xff,0xa7,0x54,0xaa,0xa4,0x52,0xfc,0xff,
+ 0xaf,0x42,0x89,0xfa,0xbf,0x54,0x20,0xa9,0xa4,0xd4,0xff,0xff,0xff,0xcb,0xff,
+ 0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0xff,0x54,0x29,0x7f,0xff,0x4b,0xa5,0x92,
+ 0x2a,0x01,0xff,0xff,0x1f,0xa8,0x22,0xff,0xff,0x01,0xa5,0x2a,0x55,0xa9,0xff,
+ 0xff,0xff,0xd4,0xff,0xff,0xff,0x7f,0xfa,0xff,0xff,0xff,0x7f,0xa5,0x04,0x7f,
+ 0xff,0x57,0x2a,0x55,0xa9,0x54,0xfe,0xff,0x3f,0x05,0x89,0xff,0xff,0x5f,0x48,
+ 0x92,0x2a,0x95,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,
+ 0x7f,0x2a,0x91,0x7f,0xff,0xa9,0x54,0x4a,0x52,0x02,0xff,0xff,0xff,0x50,0xd1,
+ 0xff,0xff,0x1f,0x81,0xaa,0xa4,0x52,0xfe,0xff,0x3f,0xe9,0xff,0xff,0xff,0x7f,
+ 0x1d,0xff,0xff,0xff,0xff,0x54,0x41,0x7f,0xff,0x93,0x92,0x52,0x95,0xc8,0xff,
+ 0xff,0xff,0x8b,0xc4,0xff,0xff,0x7f,0x24,0xa5,0x2a,0x49,0xf9,0xff,0x7f,0xd5,
+ 0xff,0xff,0xff,0xbf,0x4a,0xff,0xff,0xff,0xff,0x4a,0x14,0x7f,0xff,0x28,0xa5,
+ 0x94,0x2a,0xa0,0xff,0xff,0x7f,0x22,0xf0,0xff,0xff,0x7f,0x12,0x94,0xa4,0xaa,
+ 0xea,0xff,0xaf,0xea,0xff,0xff,0xff,0x5f,0x8e,0xff,0xff,0xff,0x7f,0xa9,0x40,
+ 0x7f,0xff,0x48,0x55,0x55,0x12,0xca,0xff,0xff,0xff,0x0a,0xf5,0xff,0xff,0xff,
+ 0x80,0x52,0x95,0x54,0xaa,0xfe,0x55,0xc4,0xff,0xff,0xff,0x5f,0xa5,0xff,0xff,
+ 0xff,0xff,0x94,0x14,0x7f,0xff,0x52,0x2a,0xa9,0x4a,0xe1,0xff,0xff,0xbf,0x24,
+ 0xf0,0xff,0xff,0xff,0x0b,0x28,0xa9,0x92,0x24,0x55,0x49,0xe5,0xd7,0xff,0xff,
+ 0xa7,0x8a,0xff,0xff,0xff,0x7f,0xa5,0xc0,0x7f,0xff,0x50,0x49,0x95,0x04,0xf8,
+ 0xff,0xff,0x5f,0x1f,0xfd,0xff,0xff,0xff,0x47,0x45,0x55,0xaa,0xaa,0x4a,0xaa,
+ 0xea,0xaf,0xff,0xff,0x2b,0xc3,0xff,0xff,0xff,0x7f,0x55,0x94,0x7f,0x7f,0x4a,
+ 0x55,0x52,0x51,0xfe,0xff,0xff,0x5f,0x4e,0xf8,0xff,0xff,0xff,0x1f,0x50,0x92,
+ 0x52,0x49,0xa9,0x92,0xe4,0xd3,0xff,0xff,0x4b,0xd5,0xff,0xff,0xff,0xff,0x94,
+ 0xc0,0x7f,0x3f,0xa0,0xa4,0xaa,0x04,0xfe,0xff,0xff,0xa7,0x1d,0xfd,0xff,0xff,
+ 0xff,0x9f,0x84,0xaa,0x4a,0xaa,0x24,0x55,0xf2,0x2b,0xff,0x7f,0xa9,0xc1,0xff,
+ 0xff,0xff,0x7f,0x4a,0x95,0x7f,0xbf,0x2a,0x95,0x24,0x50,0xff,0xff,0xff,0x97,
+ 0x5e,0xfe,0xff,0xff,0xff,0x3f,0x92,0x24,0x95,0x92,0xaa,0xa4,0xf2,0xcb,0xff,
+ 0x5f,0xd5,0xe5,0xff,0xff,0xff,0xff,0x52,0x80,0x7f,0x3f,0xa0,0x52,0x15,0x85,
+ 0xff,0xff,0xff,0xd7,0x38,0xfe,0xff,0xff,0xff,0xff,0x20,0xaa,0x52,0x55,0x55,
+ 0x55,0xf9,0x29,0xfd,0xab,0xa4,0xf0,0xff,0xff,0xff,0x7f,0x29,0xa9,0x7f,0xff,
+ 0x42,0x25,0x49,0xe8,0xff,0xff,0xff,0x69,0x7a,0xff,0xff,0xff,0xff,0xff,0x82,
+ 0x52,0xaa,0x24,0x89,0x4a,0xf8,0x55,0x2a,0x49,0x95,0xf5,0xff,0xff,0xff,0xbf,
+ 0x2a,0xc4,0x7f,0x7f,0x90,0x54,0x15,0xe2,0xff,0xff,0xff,0x25,0xbc,0xff,0xff,
+ 0xff,0xff,0xff,0x29,0x48,0x49,0xaa,0xaa,0xa4,0xfa,0x95,0x92,0x54,0x52,0xf0,
+ 0xff,0xff,0xff,0xbf,0x4a,0xd1,0x7f,0xff,0x05,0xaa,0x40,0xf8,0xff,0xff,0x7f,
+ 0xaa,0xfc,0xff,0xff,0xff,0xff,0xff,0x43,0xa9,0xaa,0x4a,0x52,0xa9,0xf8,0xa4,
+ 0xaa,0x52,0x95,0xfc,0xff,0xff,0xff,0x7f,0x52,0xc0,0x7f,0xff,0xa1,0x00,0x24,
+ 0xfa,0xff,0xff,0xff,0x0a,0xfe,0xff,0xff,0xff,0xff,0xff,0x17,0x92,0x24,0xa5,
+ 0x2a,0x55,0xfe,0xaa,0xa4,0x2a,0x29,0xf9,0xff,0xff,0xff,0xbf,0x2a,0xea,0x7f,
+ 0xff,0x05,0x92,0x90,0xfc,0xff,0xff,0xbf,0xa4,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x4f,0xa0,0xaa,0x54,0x49,0x25,0x7c,0x49,0x95,0xa4,0x12,0xfc,0xff,0xff,0xff,
+ 0x7f,0x8a,0xe0,0x7f,0xff,0xa3,0x04,0x05,0xfe,0xff,0xff,0xbf,0x06,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x1f,0x49,0x95,0x52,0xaa,0x12,0x7f,0x55,0x52,0x55,0x0a,
+ 0xfd,0xff,0xff,0xff,0x3f,0x29,0xe8,0x7f,0xff,0x0f,0x50,0x50,0xff,0xff,0xff,
+ 0x5f,0xca,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x04,0xa9,0x4a,0x25,0x45,0x3e,
+ 0xa9,0x2a,0xa9,0xa2,0xfc,0xff,0xff,0xff,0x7f,0x55,0xe1,0x7f,0xff,0x27,0x05,
+ 0xc4,0xff,0xff,0xff,0x9f,0x91,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x41,0x4a,
+ 0x29,0xa9,0x12,0x5e,0x95,0x94,0x4a,0x0a,0xfe,0xff,0xff,0xff,0xbf,0x12,0xf4,
+ 0x7f,0xff,0x8f,0x50,0xf1,0xff,0xff,0xff,0xa7,0xc2,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x14,0x92,0xaa,0x4a,0xa2,0xbf,0xa4,0x52,0x95,0x22,0xff,0xff,0xff,
+ 0xff,0x3f,0x45,0xf2,0x7f,0xff,0x3f,0x04,0xf4,0xff,0xff,0xff,0xd7,0xe8,0xff,
+ 0xff,0xff,0xff,0x5f,0xff,0xff,0x83,0xa8,0x94,0x54,0x09,0x2f,0x55,0x4a,0x52,
+ 0x49,0xff,0xff,0xff,0xff,0x5f,0x99,0xf0,0x7f,0xff,0x7f,0x51,0xfc,0xff,0xff,
+ 0xff,0x6b,0xf1,0xff,0xff,0xff,0xff,0x5f,0xfd,0xff,0x2b,0x2a,0xa9,0x12,0x20,
+ 0x5f,0xa9,0xaa,0x54,0x00,0xff,0xff,0xff,0xff,0x5f,0x15,0xf2,0x7f,0xff,0xff,
+ 0x8f,0xff,0xff,0xff,0xff,0x2b,0xfc,0xff,0xff,0xff,0xff,0x2f,0xfd,0xff,0x87,
+ 0xa0,0x4a,0xaa,0x8a,0x9f,0x4a,0x52,0x15,0xa9,0xff,0xff,0xff,0xff,0x5f,0x8a,
+ 0xfc,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x94,0xf8,0xff,0xff,0xff,0xff,
+ 0x57,0xf2,0xff,0x2f,0x82,0x52,0x05,0xd0,0x2f,0x95,0x4a,0x49,0x84,0xff,0xff,
+ 0xff,0xff,0xbf,0x24,0xf8,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x12,0xfd,
+ 0xff,0xff,0xff,0xff,0x4b,0xd5,0xff,0x9f,0x28,0x54,0x48,0xc5,0xbf,0x52,0x55,
+ 0x0a,0xe1,0xff,0xff,0xff,0xff,0x9f,0x4a,0xfa,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x1a,0xfe,0xff,0xff,0xff,0xff,0x57,0xa9,0xff,0x3f,0x82,0x00,0x21,
+ 0xf0,0x5f,0x2a,0x49,0x21,0xc4,0xff,0xff,0xff,0xff,0xaf,0x1a,0xfd,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x3f,0x85,0xff,0xff,0xff,0xff,0xff,0x29,0xa5,0xff,
+ 0xff,0x24,0x52,0x88,0xfc,0xbf,0x92,0x2a,0x09,0xf1,0xff,0xff,0xff,0xff,0x9f,
+ 0x4c,0xfc,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x15,0xff,0xff,0xff,0x7f,
+ 0xff,0xa5,0x4a,0xff,0xff,0x90,0x08,0x01,0xfe,0x3f,0x55,0x52,0x24,0xf4,0xff,
+ 0xff,0xff,0xff,0xaf,0x02,0xfd,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xc6,
+ 0xff,0xff,0xff,0xbf,0xfe,0x95,0x54,0xff,0xff,0x05,0x42,0xa8,0xfe,0xbf,0xa4,
+ 0x2a,0x41,0xf9,0xff,0xff,0xff,0xff,0x5f,0x55,0xfc,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x4f,0xd0,0xff,0xff,0xff,0xbf,0x7c,0xaa,0x92,0xfc,0xff,0x53,0x08,
+ 0x01,0xff,0x1f,0x4a,0x01,0x04,0xfc,0xff,0xff,0xff,0xff,0x27,0x05,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xc5,0xff,0xff,0xff,0x4f,0xbf,0x52,0xaa,
+ 0xfe,0xff,0x07,0x42,0xea,0xff,0xbf,0x50,0x54,0x51,0xff,0xff,0xff,0xff,0xff,
+ 0x97,0x56,0xfe,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xf0,0xff,0xff,0xff,
+ 0x2f,0x7f,0xa5,0x54,0xfd,0xff,0x3f,0x09,0xe0,0xff,0x1f,0x02,0x01,0x04,0xff,
+ 0xff,0xff,0xff,0xff,0xaf,0x02,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,
+ 0xf5,0xff,0xff,0xff,0xab,0x9f,0x94,0x92,0xfc,0xff,0xff,0x40,0xfd,0xff,0x9f,
+ 0x48,0x48,0xa1,0xff,0xff,0xff,0xff,0xff,0xa7,0x56,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x6b,0xf8,0xff,0xff,0xff,0xa4,0x5f,0xa9,0x2a,0xfd,0xff,0xff,
+ 0xff,0xff,0xff,0x3f,0x22,0x21,0xc4,0xff,0xff,0xff,0xff,0xff,0x2f,0x03,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x2b,0xfa,0xff,0xff,0x7f,0xd5,0x2f,0xa5,
+ 0xa4,0xfa,0xff,0xff,0xff,0xff,0xff,0xbf,0x08,0x08,0xf9,0xff,0xff,0xff,0xff,
+ 0xff,0x97,0x4a,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x94,0xfc,0xff,0xff,
+ 0x7f,0x69,0xac,0x2a,0x55,0xf9,0xff,0xff,0xff,0xff,0xff,0x7f,0xa2,0x22,0xf8,
+ 0xff,0xff,0xff,0xff,0xff,0x53,0x21,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x15,0xfe,0xff,0xff,0x9f,0x2a,0x95,0x94,0x92,0xf4,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x08,0x88,0xfe,0xff,0xff,0xff,0xff,0xff,0x57,0x8b,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xa9,0xfe,0xff,0xff,0x5f,0x52,0xbc,0x52,0x55,0xf5,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x21,0x21,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0xa1,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0x7f,0x0d,0xff,0xff,0xff,0x57,0x15,0x3f,
+ 0x55,0x49,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0xc8,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xd7,0x89,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xbf,0xd6,0xff,0xff,
+ 0xff,0x4b,0x45,0x3f,0x49,0xaa,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,0xf9,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xc9,0xe2,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0x3f,0x81,0xff,0xff,0xff,0x29,0x11,0x5f,0x28,0x55,0xf5,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xab,0xc8,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0x5f,0xd6,0xff,0xff,0x7f,0xaa,0xc2,0x0f,0x55,0x49,0xea,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa5,
+ 0xe2,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0x9f,0xe1,0xff,0xff,0xbf,0x4a,0xd1,
+ 0x5f,0x48,0xa5,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xe9,0xe0,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0x27,0xf4,0xff,
+ 0xff,0xbf,0x94,0xc4,0x07,0x91,0x2a,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xca,0xea,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xaf,0xf1,0xff,0xff,0x9f,0x52,0xe0,0x4b,0x44,0x52,0xe9,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6a,0xe0,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0x4b,0xfc,0xff,0xff,0xab,0x2a,0xf5,0x0f,0x51,0xa5,
+ 0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0x69,0xe5,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0x55,0xf8,0xff,0xff,0x95,0x14,
+ 0xf0,0x5f,0x84,0x54,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0x75,0xf0,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0x13,0xfd,
+ 0xff,0xff,0xa5,0x42,0xf9,0x7f,0x91,0x4a,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb2,0xfa,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0x54,0xfe,0xff,0x7f,0x52,0x12,0xfa,0xff,0x20,0xa5,0xe4,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x34,0xf8,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0x25,0xff,0xff,0xaf,0xaa,0x48,0xfc,0xff,0x0b,
+ 0x29,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xb5,0xf8,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0x52,0xff,0xff,0x2f,0x49,
+ 0x02,0xfe,0xff,0x43,0xaa,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x3f,0x3a,0xfa,0xff,0x7f,0xff,0xff,0xff,0xff,0x7f,0x4a,
+ 0xff,0xff,0xa5,0x2a,0xa9,0xff,0xff,0x17,0x25,0xe9,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x9a,0xfc,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0x2a,0xff,0x7f,0x95,0x54,0x80,0xff,0xff,0x07,0xa9,0xea,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x1d,0xfc,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0x3f,0xa9,0xfe,0x7f,0xa9,0x12,0xe5,0xff,0xff,
+ 0x5f,0x4a,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x5f,0xad,0xfe,0xff,0x7f,0xff,0xff,0xff,0xff,0x7f,0x95,0xea,0x97,0x54,
+ 0x4a,0xf0,0xff,0xff,0x1f,0xa8,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x5f,0x0e,0xfe,0xff,0x7f,0xff,0xff,0xff,0xff,0x5f,
+ 0x52,0x55,0xa9,0x92,0x02,0xfd,0xff,0xff,0x5f,0x53,0xf5,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x5e,0xfe,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xbf,0x2a,0x49,0x4a,0x55,0x49,0xfc,0xff,0xff,0x3f,0x94,0xf8,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,0x0f,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x4f,0xa5,0xaa,0x92,0xa4,0x20,0xff,0xff,
+ 0xff,0xbf,0xa4,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x5f,0x57,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x5f,0x52,0x52,0xaa,
+ 0x2a,0x0a,0xff,0xff,0xff,0x7f,0x54,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x07,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xa7,0x94,0x4a,0x55,0x4a,0xa0,0xff,0xff,0xff,0xff,0xa8,0xfa,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x57,0x57,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0x2f,0x55,0xa9,0x92,0x12,0xe9,0xff,0xff,0xff,0x7f,0x24,
+ 0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,
+ 0x87,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x57,0xa5,0x4a,0xaa,0x44,0xf4,0xff,
+ 0xff,0xff,0xff,0x55,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xa7,0xab,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xab,0x94,0xa4,
+ 0x92,0x12,0xf9,0xff,0xff,0xff,0xff,0xa8,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xab,0x83,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0x47,0xa9,0x2a,0x55,0x40,0xfc,0xff,0xff,0xff,0xff,0x25,0xf5,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xe7,0xff,0xff,0xff,0xff,0xff,0xd7,0x97,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0x33,0x55,0xa9,0x24,0x15,0xfe,0xff,0xff,0xff,0xff,
+ 0x95,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0xff,0xff,
+ 0x93,0xc3,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x57,0x25,0xa5,0x2a,0x40,0xff,
+ 0xff,0xff,0xff,0xff,0xa9,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,
+ 0xff,0xff,0xff,0xff,0xe7,0xd5,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x4b,0x92,
+ 0x54,0x92,0xd4,0xff,0xff,0xff,0xff,0xff,0x55,0xf5,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xe9,0xff,0xff,0xff,0xff,0xff,0xd5,0xc1,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0x97,0xaa,0x4a,0x05,0xe2,0xff,0xff,0xff,0xff,0xff,0x25,0xf1,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xfd,0xff,0xff,0xff,0xff,0xd5,0xea,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0x57,0x55,0x25,0xa1,0xf0,0xff,0xff,0xff,0xff,
+ 0xff,0x95,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe8,0xfa,0xff,0xff,0xff,
+ 0xff,0xea,0xe0,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xa7,0x24,0x59,0x04,0xfa,
+ 0xff,0xff,0xff,0xff,0xff,0xa9,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,
+ 0xfd,0xff,0xff,0xff,0xff,0xc9,0xe9,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x4f,
+ 0x52,0x05,0xa1,0xfc,0xff,0xff,0xff,0xff,0xff,0xa5,0xfa,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x70,0xf9,0xff,0xff,0xff,0xff,0x74,0xe2,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0x47,0x95,0x92,0x04,0xff,0xff,0xff,0xff,0xff,0xff,0x95,0xf8,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xe2,0xfa,0xff,0xff,0xff,0xff,0x72,0xe8,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x97,0xaa,0x20,0xd0,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x55,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xb8,0xfc,0xff,0xff,
+ 0xff,0xff,0xea,0xe2,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x07,0x04,0x82,0xc2,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x29,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0x71,0xfd,0xff,0xff,0xff,0x7f,0x2a,0xf8,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0x4f,0x91,0x28,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0xfc,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x1f,0x54,0xfe,0xff,0xff,0xff,0x7f,0x75,0xf2,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0x27,0x44,0x82,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0x29,
+ 0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0xb8,0xfc,0xff,0xff,0xff,0xbf,0x14,
+ 0xf1,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x0f,0x11,0x20,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x55,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x9a,0xfe,0xff,
+ 0xff,0xff,0x7f,0x5a,0xf8,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0x5f,0x40,0x85,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x4f,0x2d,0xfd,0xff,0xff,0xff,0x9f,0x12,0xf9,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0x3f,0x14,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x55,0xfe,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x07,0xa6,0xfe,0xff,0xff,0xff,0x5f,0x4d,0xfa,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0x40,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x09,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2b,0x4b,0xfe,0xff,0xff,0xff,0xbf,
+ 0x2c,0xf8,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x43,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x57,0xff,
+ 0xff,0xff,0xff,0x5f,0x0a,0xfe,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x89,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xd5,0xa9,0xff,0xff,0xff,0xff,0xaf,0x5a,0xfc,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa3,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x81,0x95,0xff,0xff,0xff,0xff,0x9f,0x06,0xfd,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xc9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xca,0xa5,0xff,0xff,0xff,0xff,
+ 0x2f,0x95,0xfc,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xc1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0xea,
+ 0xff,0xff,0xff,0xff,0xaf,0x26,0xfe,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xf5,0xf4,0xff,0xff,0xff,0xff,0xaf,0x86,0xfe,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc1,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0x70,0xe5,0xff,0xff,0xff,0xff,0x4f,0x2e,0xfe,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xeb,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xb2,0xfa,0xff,0xff,0xff,
+ 0xff,0x57,0x83,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x78,
+ 0xf2,0xff,0xff,0xff,0xff,0xa7,0x22,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x5f,0x5d,0xfd,0xff,0xff,0xff,0xff,0x97,0x87,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x3c,0xfd,0xff,0xff,0xff,0xff,0x53,0xa3,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xac,0xfe,0xff,0xff,
+ 0xff,0xff,0x57,0x95,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f,
+ 0x9e,0xfe,0xff,0xff,0xff,0xff,0x97,0x81,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xa7,0x57,0xfe,0xff,0xff,0xff,0xff,0xa9,0xa5,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0xaf,0xff,0xff,0xff,0xff,0xff,0x4b,
+ 0x89,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xab,0x93,0xff,0xff,
+ 0xff,0xff,0xff,0x95,0xa2,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x83,0xab,0xff,0xff,0xff,0xff,0xff,0xd3,0xc8,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,
+ 0xff,0xff,0xff,0xff,0xe9,0xa5,0xff,0xff,0xff,0xff,0xff,0xa5,0xe1,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0xd5,0xff,0xff,0xff,0xff,0xff,
+ 0xd5,0xc8,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xea,0xea,0xff,
+ 0xff,0xff,0xff,0xff,0x14,0xc1,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,
+ 0xff,0xe0,0xe4,0xff,0xff,0xff,0xff,0xff,0x65,0xe8,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,
+ 0xff,0xff,0xff,0xff,0x3f,0x72,0xe9,0xff,0xff,0xff,0xff,0xff,0x6a,0xe1,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xbf,0xb8,0xfa,0xff,0xff,0xff,0xff,
+ 0xff,0x52,0xea,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd3,0xff,0xff,0xff,0xff,0x1f,0x7a,0xf5,
+ 0xff,0xff,0xff,0xff,0x7f,0x2a,0xe0,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,
+ 0xff,0x8f,0x58,0xfa,0xff,0xff,0xff,0xff,0x7f,0x25,0xf5,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xb5,0xff,0xff,0xdf,0xff,0x57,0x5e,0xfd,0xff,0xff,0xff,0xff,0xff,0x34,0xe0,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xca,0xff,0xff,0x8f,0xff,0x07,0xac,0xfc,0xff,0xff,0xff,
+ 0xff,0x7f,0x2a,0xf5,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd4,0xff,0xff,0x57,0xff,0x2b,0x2d,
+ 0xfd,0xff,0xff,0xff,0xff,0xff,0xb2,0xf0,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd2,0xff,0xff,
+ 0x07,0xff,0x43,0x4a,0xff,0xff,0xff,0xff,0xff,0xbf,0x2a,0xf8,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x3f,0xc5,0xff,0xff,0x2b,0xfe,0x08,0xab,0xfe,0xff,0xff,0xff,0xff,0x7f,0xaa,
+ 0xf2,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xbf,0xea,0xff,0xff,0x83,0x36,0x20,0x55,0xff,0xff,0xff,
+ 0xff,0xff,0x3f,0x15,0xf0,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4f,0xc2,0xff,0xff,0x48,0x4a,0x85,
+ 0x49,0xff,0xff,0xff,0xff,0xff,0x7f,0x59,0xfa,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0xf5,0xff,
+ 0x7f,0x10,0x29,0x50,0xa5,0xff,0xff,0xff,0xff,0xff,0x3f,0x15,0xf9,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x97,0xe4,0xff,0x7f,0x05,0x95,0x42,0xd5,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0x35,0xfc,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xab,0xea,0xff,0xbf,0xa0,0x24,0xa8,0xd4,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0x19,0xf9,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x27,0xe5,0xff,0x3f,0x92,0xaa,
+ 0x50,0xe9,0xff,0xff,0xff,0xff,0xff,0x9f,0x4a,0xfc,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa9,0xe2,
+ 0xff,0x9f,0xa0,0xaa,0x2a,0xf5,0xff,0xff,0xff,0xff,0xff,0x5f,0x1a,0xf9,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x95,0xf8,0xff,0x5f,0x4a,0x92,0x4a,0xf5,0xff,0xff,0xff,0xff,0xff,
+ 0xbf,0x4a,0xfc,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0x52,0xf2,0xff,0x1f,0x20,0x49,0xa5,0xfa,0xff,
+ 0xff,0xff,0xff,0xff,0x5f,0x1a,0xfd,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaa,0xf8,0xff,0x47,0xa9,
+ 0x2a,0x29,0xf9,0xff,0xff,0xff,0xff,0xff,0xbf,0x0a,0xfc,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x49,
+ 0xf2,0xff,0x17,0x92,0xaa,0xaa,0xfe,0xff,0xff,0xff,0xff,0xff,0x9f,0xac,0xfe,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x9f,0x2a,0xf8,0xff,0x43,0xa8,0x24,0x25,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xaf,0x0a,0xfc,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x94,0xfa,0xff,0x91,0x54,0xaa,0x52,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x2f,0x4d,0xfd,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,0x45,0xfc,0xff,0x03,
+ 0x92,0x52,0xaa,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x06,0xfc,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,
+ 0x12,0xfe,0xff,0x50,0xaa,0x2a,0x95,0xff,0xff,0xff,0xff,0xff,0xff,0x4f,0xa5,
+ 0xfe,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xa7,0x44,0xff,0xff,0x0a,0x25,0xa5,0xa4,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x97,0x06,0xfc,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2b,0x15,0xff,0xff,0x40,0xa9,0x92,0xea,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x57,0x55,0xfd,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x55,0xa1,0xff,0x7f,
+ 0x92,0x4a,0xaa,0xd4,0xff,0xff,0xff,0xff,0xff,0xff,0x57,0x06,0xfc,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x95,0x8a,0xff,0x3f,0x84,0x54,0xa9,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,
+ 0x25,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x52,0xe0,0xff,0xbf,0x50,0xa9,0x4a,0xf2,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xa7,0x8e,0xfe,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xa9,0xea,0xff,0x3f,0x24,0x95,0x54,
+ 0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0x57,0x23,0xfe,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x4a,0xf0,0xff,
+ 0x9f,0x50,0x69,0x49,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0x4f,0x8b,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xa5,0xf4,0xff,0x0f,0x2d,0x75,0xaa,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xaf,0x03,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x9f,0x14,0xfa,0xff,0x2f,0xa8,0xfa,0x25,0xfd,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x97,0xd7,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xaa,0xfc,0xff,0x0f,0x4d,0xfd,
+ 0xa9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x83,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x12,0xfc,
+ 0xff,0x27,0x92,0xfe,0xcb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd7,0xd7,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x97,0x0a,0xff,0xff,0x83,0x56,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xef,0xc7,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xab,0x24,0xff,0xff,0x2b,0xaa,0xfe,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xe7,0xef,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0x45,0xff,0xff,0x05,0x95,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0xff,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x95,0x82,
+ 0xff,0xff,0x51,0xa9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,
+ 0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xa9,0xe8,0xff,0xff,0x85,0xca,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0x52,0xc1,0xff,0xff,0x90,0xd5,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x4d,0xe8,0xff,0xff,0xa5,
+ 0xe4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x51,
+ 0xf2,0xff,0x7f,0x40,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x3f,0x95,0xf8,0xff,0x7f,0xa9,0xea,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x4f,0x15,0xfa,0xff,0x3f,0xa4,0xf4,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xa4,0xfc,0xff,0x7f,
+ 0x71,0xe5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,
+ 0x15,0xfe,0xff,0x3f,0x94,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xa7,0x0a,0xff,0xff,0x1f,0x79,0xf2,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xab,0xa4,0xff,0xff,0x5f,0x8c,0xfa,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x53,0x82,0xff,0xff,
+ 0x1f,0x5c,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xa4,0x92,0xff,0xff,0xbf,0x56,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x9a,0xc4,0xff,0xff,0x0f,0x2e,0xfd,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0xf0,0xff,0xff,0xaf,0xa7,0xfe,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x55,0xe4,0xff,
+ 0xff,0x0f,0x57,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xbf,0x54,0xf2,0xff,0xff,0x9f,0x4b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x9f,0x92,0xf8,0xff,0xff,0xc7,0xab,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x15,0xfe,0xff,0xff,0x97,0xd7,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa7,0x94,0xfc,
+ 0xff,0xff,0xc7,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x2f,0x05,0xfe,0xff,0xff,0xcf,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x53,0xa9,0xff,0xff,0xff,0xd3,0xeb,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0x05,0xff,0xff,0xff,0xe3,
+ 0xe5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x54,0xc2,
+ 0xff,0xff,0xff,0xeb,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x95,0xc8,0xff,0xff,0xff,0xf3,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xa5,0xd2,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xaa,0xe0,0xff,0xff,0xff,
+ 0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x49,
+ 0xf8,0xff,0xff,0xff,0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x9f,0x2a,0xf5,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x4a,0xf8,0xff,0xff,0xff,0xff,0xfc,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x14,0xfd,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97,
+ 0x4a,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xab,0x04,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x95,0x52,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x53,0x85,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x54,0xa2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x4a,0xc9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xa5,0xe0,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x94,0xe4,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x5f,0x55,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xbf,0x12,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4f,0x54,0xfa,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x0a,0xfc,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x53,0x45,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x97,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x4b,0x45,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x54,0x82,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x4a,0xe9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x52,0xc1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x55,0xe8,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x24,
+ 0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0x55,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x24,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x15,0xfe,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,
+ 0x49,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x2f,0x95,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x01,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,0xd5,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x57,0x81,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x97,0xd4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xe0,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x93,0xf4,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x57,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x2b,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x89,0xfc,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x55,0xfc,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x05,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x49,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x22,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x89,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xe5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xc1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xe9,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x9f,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xfc,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0x6f,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xbf,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
+ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/image.pbm b/tests/benchmarks/gui/image/qimagereader/images/image.pbm
new file mode 100644
index 0000000000..67e5efa3e9
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/image.pbm
@@ -0,0 +1,8 @@
+P1
+16 6
+1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
+1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
+1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
+1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
+1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
+1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1
diff --git a/tests/benchmarks/gui/image/qimagereader/images/image.pgm b/tests/benchmarks/gui/image/qimagereader/images/image.pgm
new file mode 100644
index 0000000000..443bf40964
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/image.pgm
@@ -0,0 +1,10 @@
+P2
+24 7
+15
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 3 3 3 3 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 15 15 15 0
+0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 15 0
+0 3 3 3 0 0 0 7 7 7 0 0 0 11 11 11 0 0 0 15 15 15 15 0
+0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 0 0
+0 3 0 0 0 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
diff --git a/tests/benchmarks/gui/image/qimagereader/images/image.png b/tests/benchmarks/gui/image/qimagereader/images/image.png
new file mode 100644
index 0000000000..7d4890a7ff
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/image.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/image.ppm b/tests/benchmarks/gui/image/qimagereader/images/image.ppm
new file mode 100644
index 0000000000..2a5640e189
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/image.ppm
@@ -0,0 +1,7 @@
+P3
+4 4
+15
+ 0 0 0 0 0 0 0 0 0 15 0 15
+ 0 0 0 0 15 7 0 0 0 0 0 0
+ 0 0 0 0 0 0 0 15 7 0 0 0
+15 0 15 0 0 0 0 0 0 0 0 0 \ No newline at end of file
diff --git a/tests/benchmarks/gui/image/qimagereader/images/kollada-noext b/tests/benchmarks/gui/image/qimagereader/images/kollada-noext
new file mode 100644
index 0000000000..2abd4bb763
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/kollada-noext
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/kollada.png b/tests/benchmarks/gui/image/qimagereader/images/kollada.png
new file mode 100644
index 0000000000..2abd4bb763
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/kollada.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/marble.xpm b/tests/benchmarks/gui/image/qimagereader/images/marble.xpm
new file mode 100644
index 0000000000..1c08049624
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/marble.xpm
@@ -0,0 +1,470 @@
+/* XPM */
+static const char *marble_xpm[] = {
+/* width height num_colors chars_per_pixel */
+" 240 240 223 2",
+/* colors */
+".. c #959595",
+".# c #c5c5c5",
+".a c #adadad",
+".b c #dedede",
+".c c #b7b7b7",
+".d c #d2d2d2",
+".e c #bebebe",
+".f c #c9c9c9",
+".g c #b8b8b8",
+".h c #d6d6d6",
+".i c #9e9e9e",
+".j c #eaeaea",
+".k c #b2b2b2",
+".l c #cecece",
+".m c #a5a5a5",
+".n c #e4e4e4",
+".o c #c4c4c4",
+".p c #d9d9d9",
+".q c #b1b1b1",
+".r c #d8d8d8",
+".s c #e0e0e0",
+".t c #d6d6d6",
+".u c #b6b6b6",
+".v c #bfbfbf",
+".w c #cbcbcb",
+".x c #a5a5a5",
+".y c #d1d1d1",
+".z c #cdcdcd",
+".A c #aaaaaa",
+".B c #9a9a9a",
+".C c #dedede",
+".D c #aeaeae",
+".E c #e6e6e6",
+".F c #d3d3d3",
+".G c #c8c8c8",
+".H c #bababa",
+".I c #c4c4c4",
+".J c #cccccc",
+".K c #bcbcbc",
+".L c #f0f0f0",
+".M c #b5b5b5",
+".N c #e3e3e3",
+".O c #c2c2c2",
+".P c #adadad",
+".Q c #c9c9c9",
+".R c #e1e1e1",
+".S c #a2a2a2",
+".T c #d1d1d1",
+".U c #bebebe",
+".V c #dbdbdb",
+".W c #dbdbdb",
+".X c #c8c8c8",
+".Y c #b9b9b9",
+".Z c #a8a8a8",
+".0 c #d3d3d3",
+".1 c #9f9f9f",
+".2 c #c1c1c1",
+".3 c #ebebeb",
+".4 c #b4b4b4",
+".5 c #d9d9d9",
+".6 c #cecece",
+".7 c #e8e8e8",
+".8 c #d6d6d6",
+".9 c #c5c5c5",
+"#. c #b0b0b0",
+"## c #dadada",
+"#a c #c5c5c5",
+"#b c #d1d1d1",
+"#c c #afafaf",
+"#d c #b1b1b1",
+"#e c #cbcbcb",
+"#f c #c1c1c1",
+"#g c #eeeeee",
+"#h c #9b9b9b",
+"#i c #c6c6c6",
+"#j c #c0c0c0",
+"#k c #cbcbcb",
+"#l c #bdbdbd",
+"#m c #a1a1a1",
+"#n c #b7b7b7",
+"#o c #a7a7a7",
+"#p c #e6e6e6",
+"#q c #c9c9c9",
+"#r c #bbbbbb",
+"#s c #e2e2e2",
+"#t c #b8b8b8",
+"#u c #cdcdcd",
+"#v c #d3d3d3",
+"#w c #cfcfcf",
+"#x c #e0e0e0",
+"#y c #d5d5d5",
+"#z c #bdbdbd",
+"#A c #cecece",
+"#B c #c0c0c0",
+"#C c #b7b7b7",
+"#D c #e5e5e5",
+"#E c #c4c4c4",
+"#F c #e3e3e3",
+"#G c #d3d3d3",
+"#H c #dddddd",
+"#I c #dddddd",
+"#J c #acacac",
+"#K c #a3a3a3",
+"#L c #eaeaea",
+"#M c #e1e1e1",
+"#N c #b9b9b9",
+"#O c #d5d5d5",
+"#P c #bababa",
+"#Q c #d7d7d7",
+"#R c #b5b5b5",
+"#S c #d1d1d1",
+"#T c #c6c6c6",
+"#U c #dcdcdc",
+"#V c #b4b4b4",
+"#W c #c6c6c6",
+"#X c #a8a8a8",
+"#Y c #a0a0a0",
+"#Z c #cbcbcb",
+"#0 c #bfbfbf",
+"#1 c #cbcbcb",
+"#2 c #a4a4a4",
+"#3 c #c0c0c0",
+"#4 c #bbbbbb",
+"#5 c #9c9c9c",
+"#6 c #a2a2a2",
+"#7 c #dcdcdc",
+"#8 c #c3c3c3",
+"#9 c #9d9d9d",
+"a. c #aaaaaa",
+"a# c #d5d5d5",
+"aa c #eeeeee",
+"ab c #b6b6b6",
+"ac c #b0b0b0",
+"ad c #b3b3b3",
+"ae c #c9c9c9",
+"af c #e9e9e9",
+"ag c #bdbdbd",
+"ah c #a0a0a0",
+"ai c #b0b0b0",
+"aj c #e8e8e8",
+"ak c #cacaca",
+"al c #c3c3c3",
+"am c #dbdbdb",
+"an c #d0d0d0",
+"ao c #d8d8d8",
+"ap c #c7c7c7",
+"aq c #dcdcdc",
+"ar c #c7c7c7",
+"as c #f0f0f0",
+"at c #a3a3a3",
+"au c #bfbfbf",
+"av c #d9d9d9",
+"aw c #dfdfdf",
+"ax c #d3d3d3",
+"ay c #c0c0c0",
+"az c #cacaca",
+"aA c #b3b3b3",
+"aB c #cfcfcf",
+"aC c #dadada",
+"aD c #b2b2b2",
+"aE c #e2e2e2",
+"aF c #d7d7d7",
+"aG c #c4c4c4",
+"aH c #b8b8b8",
+"aI c #cdcdcd",
+"aJ c #a6a6a6",
+"aK c #d2d2d2",
+"aL c #cecece",
+"aM c #acacac",
+"aN c #dfdfdf",
+"aO c #d5d5d5",
+"aP c #c9c9c9",
+"aQ c #bcbcbc",
+"aR c #c6c6c6",
+"aS c #cdcdcd",
+"aT c #bebebe",
+"aU c #f2f2f2",
+"aV c #b6b6b6",
+"aW c #e4e4e4",
+"aX c #c3c3c3",
+"aY c #e2e2e2",
+"aZ c #d2d2d2",
+"a0 c #dddddd",
+"a1 c #dcdcdc",
+"a2 c #ececec",
+"a3 c #eaeaea",
+"a4 c #cccccc",
+"a5 c #c7c7c7",
+"a6 c #c2c2c2",
+"a7 c #cccccc",
+"a8 c #a8a8a8",
+"a9 c #e7e7e7",
+"b. c #e4e4e4",
+"b# c #d9d9d9",
+"ba c #bababa",
+"bb c #cfcfcf",
+"bc c #d4d4d4",
+"bd c #d0d0d0",
+"be c #aeaeae",
+"bf c #e1e1e1",
+"bg c #d7d7d7",
+"bh c #cfcfcf",
+"bi c #b8b8b8",
+"bj c #e6e6e6",
+"bk c #c5c5c5",
+"bl c #e4e4e4",
+"bm c #d4d4d4",
+"bn c #dfdfdf",
+"bo c #dedede",
+"bp c #ececec",
+"bq c #bababa",
+"br c #bcbcbc",
+"bs c #b0b0b0",
+"bt c #cccccc",
+"bu c #a6a6a6",
+"bv c #c1c1c1",
+"bw c #bcbcbc",
+"bx c #ababab",
+"by c #d7d7d7",
+"bz c #b7b7b7",
+"bA c #b2b2b2",
+"bB c #b4b4b4",
+"bC c #bfbfbf",
+/* pixels */
+"aYbla9a9a9.7#D.N#L#La9.7a9#D#D.7#D#D#DaY#x#xa0ama0ama0am#xbnbnbnaYaYaYaYaY#DaYaYaYbn#x#x#xaY.N#Da9a9a9a9a9a9a9a9a9.7a9a9a9#Da9#D#L#L#L#L#L#La2#La2a2a2a2a2a2#ga2#ga2#ga2a2#ga2a2#L#L#L#Lafa9a9a9bl#Dbl#Da9a9a9#L#L#Laf#L#Laf#L#L#L#L#L#L#L#L#L#La2#La2a2a2#La2#L#L#Laf#L#Laf#L#Laf#L#Laf#L#Laf#Laf#Laf#Laf#Laf#L#D#DblblaYaYaCa0.t.Fb#bnbnaCbnblblblblblaYaY.RaYblblblblblblblbla9a9a9a9a9a9#pa9a9#pa9#pa9#pa9#pa9#pa9a9bl#D#D#D#pa9#pafa9a9a9a9#L#Lafa9a9a9#D#D#pbl#U.V.Vb#.8am#xbn#IaYbl.N.N#x",
+"am#I#Da9a9a9bj#D#La9.7#D#Da9#D#D#p#DaYaY#xbna0amamamb#a0a0a0a0bnawaYaYaYaYaYaYaY#xbnaY.R#xaYaY.Nafa9afa9afa9afa9.7a9.7a9bja9bja9#Lafa2afa2af#L#L.3#La2#La2bpa2#La2#ga2a2#ga2a2#g#L#Laf#L#La9afa9bl#Dbl#Da9afa9#L#Laf#L#Laf#L#Laf#L#L#L#L#L#L#L.7a2#La2a2#La2#La2#Laf#L#Laf#Laf#Lafajaf#L#Laf#L#L#Lafajafajafajaf.na9#s#Daw#xbnaCb#bg.Vbnbn.RaYaY#Mbl#pblaYblaYaYaYblblbl#D#Dbl#D#paf#pafa9#pa9afbla9#pa9#pa9#pa9#pa9#p#D#p#Da9#D#pa9#pa9#Da9#Da9af#L#La9.7#D#s#D#MaYbnaCb#aOb#aC#x#UaYaY#M#DaYbf",
+"aOambn.sa9bja9.7a9.7a9#Da9bj#D#D#D#DaYaY#x#xa0amaFaFbgb#aF.Va0.VaYaYaYaYaYaYaYaYbn#xaY#xaY.N#D#Da9a9a9a9a9a9a9a9a9bja9#Da9#Da9#D#L#L#L#L#L#La2#La2afa2a2a2a2#ga2#g#La2bpa2bpa2#L#L#L#L#Lafa9a9#p#DaY#D#Da9a9.7a9af#Laf#L#Laf#Laf#L.7#L#L.7#L#L#L#La2a2a2#La2#L.3#Laf#Laf#Lajaf#Laja9#Lajaf#Lajafaja9#La9#La9#La9a9a9blaYaYaYawa0b#b#.paYaYblaY.Rbla9#pblblaYblaYa9#p#D#pa9#pa9#pa9a9a9#pa9a9#pa9bl#pa9#pa9#pa9#pa9#pa9a9#D#Dbla9a9a9a9a9#pa9a9a9#L#Lafa9a9#D#D#Da9awbn.pb#bgamaCbn#xaw#D#D#D.N#x",
+"amamaC#x#D#s.7.7a9#Da9#D#D#D.N.N#xaYaYaY#xbna0a0aOaFb#aOb#bg.Vambna0bnaCa0aYaYaY#U.RaYaYaY#Dbl#Da9a9#La9af.7afa9.7a9.7a9bja9bja9#L#L.3#L.3#Laf#Lafa2#L#La2#La2bpa2a2#ga2#ga2a2#g#L#L#L#Lafa9afa9.Nblbl#Da9a9afa9#Laf#L#Laf#Laf#L#L#L#L#L#L#L.7#L#La2#L#La2aja2#Laj#Lafaj#Laf#L#Laf#Lafafajafaf#Lafaj#Lafajafaj#Laja9.n#D#MaY.R#xbga0bnbn.RaYbl#Ua9#pa9#D#Dbl#D#Dbl#Dbl#Dbla9#Da9a9#pafa9af#pa9#p#pa9#pa9#pa9#pa9#pa9#p#D#pa9#Da9a9af#pafa9af.7a9#Laf#L.7a9#s#D#saYaY#Ua0aObgao#x#IaYbl#D#s#D.sbf",
+"amaOama0.N.Na9a9bja9#Dbj#D#D#DaY.N#x#x#x#xbnaCa0#H.Vbgb#b#aFbgambnbn#Ubnbnbnbnbn#xaYawaYbl#Da9#Da9a9a9a9a9a9a9a9a9bja9#Da9#sa9#D#Laf#L#L#L#La2a2a2afa2#La2#ga2a2#g#L#g#La2bpa2#L#L#L#Laf#La9a9#pbl#Dbl#Da9a9.7a9#Lajaf#Lajaf#Lajafafajafafajafaf.j#L.3a2#Laf#La2af#Laf#Laf#Laf#L.n#L.n#La9#L#Lafa9afa9aja9#La9af.7afa9#Dbl#IaYawa0a0#UbnaYblblaY#pa9#pa9#D#D#D#Dafa9afa9af#pa9#pa9afa9#pa9a9a9a9#pa9#pa9#p#pa9#pa9#pa9a9#D#Dbla9a9a9a9a9a9.7a9.7af#Laja9a9#D#D#saYawbnaCb#aobn#x.Nbl#s#D#D#D.N.N",
+".CamaOao.WaY#D.7#s#Da9#D#D.NaY.N#x#I#xbn#xaY#x#U#xa0a0a0bgamb#ambga0ama0am#xa0a0.RaYaY#Dbl#Dbl#Da9a9a9a9afa9afa9.7a9#D.7#Dbja9.7af#La2#La2af#L#La2a2a2a2a2#L#g#L#ga2a2#ga2#ga2#g#L#L#L#Lafa9a9a9#Dawbl#Da9a9a9.7af#Laf#Laf#L#Laf#L#Laf#L#Laf#L#Laf#L.j#La2afajaf#Lafajaf.Eafaj#Laf#Laf#Lafaja9aj#Lajaf#Laf#Lafajafajaf.n#DblaYaYaCbn#xbnaYaYaY.Rbla9#p#Da9a9.7#La9a9a9a9a9afa9afa9a9afa9afa9afa9#p#pa9#pa9a9#pa9#pa9#p#D#pa9#Da9afafafaf.7a9a9.7#L#Lafa9.n#D#s#D#D#x#Ua0aCaC#x.saY.s#D.7a9.Ebj.N",
+"#xa0.8a#.8.Cbf.N#D#D.N.NaY.N.saY#x#xaY#IaYaYaYaYaYaY#x#x#xa0aCam.Vb#bg#yb#.Va0bnaYaYblaY#Da9#D#Da9afa9af.7a9a9a9.7a9bja9#s#Da9.7ajaf#Laf#L#La2#L.3#La2#La2a2#ga2a2bpa2#L#g#La2bp#L#L#Laf#La9af#paYbl#D#Da9a9a9a9#L#L#Laf#Laf#L#Lafafafafaf#Lafaf#La2#La2afajaf#Lajaf.7af#Lafa9aja9aja9#L.n#Lafafa9#L.n#L.n#La9#Laf#La9a9#Mbl#xaY#x#IaYawaYaYaYaYblbl#pa9a9.7#L.7afaf#Laf#Lafa9afa9a9a9a9a9a9a9a9a9#pa9#pa9#pa9#pa9#pa9a9#D#D#Da9af#Lafa9a9a9.7af#Laja9a9#D#D#D#M.N#I#xaCa0#UaY#D.NaY#D.n.7bj#Dbj",
+"#x#xa0#vbcaq#xbf#D#D.Nbl.s.NaYbf#x#x#xaYaYaYaYaYaY#M.NaY#x#x.Ca0b#bgb#bgbg.V.p.VawaYblbl#Dbl#Dafa9a9a9a9afa9afa9.7a9#Da9#D#s#Da9af#La2#La2#Laf#La2#La2#La2bpa2bpa2#ga2#ga2#ga2a2#L#L#L#Lafa9a9a9aYaYbl#Da9afa9a9ajaf#Lajaf#Lajafafaj#Lafajafafajafa2#La2#Laf#Lafa9#Lafaja9aj#Laf#Lafajaf#Laf.7afaj#Laf#Lafajaf.Eafajaf.n#Dbl#MaY#IaY#xaY.RaY.RaY#FaYa9a9a9#L#L#Lafa9afafa9#Laf#L#La9afa9afa9afa9#pa9#pa9#pa9#pa9#pa9#p#D#p#Da9a9afa9a9.7a9#L.7.7.naf#La9.n#D#s.N.N#x#UaCbnaY#s#DaY#sa9.7b..7#DaW",
+".7aw#x.CaoaB.y.5#s.N#I.Ca0a0ama0#x.N.NaY.NaY#D#Dbl#DblaYawaY#U.CbgbmaBaSaZbma0a0blaYaY#Dbla9a9#Da9af.7afa9a9a9a9bl#D#D#D#D.N#D#D.7a9a9a9a9a9#La9afafafafafaf#Lafa2#La2#L#L#L#La2a2a2af#La9a9#D#DawaY#sbla9b..7#La9a9a9a9.7a9a9a9afa9af.nafafafafafajafajafajafajafaja9a9bl#MaY#s#Da9#Da9#sa9.na9.7af.Eaf.7af#Lafafa9a9bl#M.NaY#Ibn#UaYaYaw#Da9a9.n#p#pa9a9.7.7.7.7a9.7a9.7a9a9#Lafafaf#Lafa9a9a9#pa9a9#pa9#pa9a9a9a9afa9.7af.7.7.7afa9a9a9a9a9a9#L.na9.na9.na9.n#Maw.Nawaw.N#D#D.E.7bj.7#Dbjb.#D",
+".7#D.s#x.5.y#va#.NaYbf.Ca0ao#xbn.s.N.N#D#D#Da9#Dbl#Dbl#DaYaYaYbn.p.taBan#uaZ.FbgbnawaYawbl#D#D#D#D#Dbl#D#D#D#D#D#Dblblawbl.N#D#Da9a9a9.7af.7a9a9afafafajafaf#L#L#La2a2a2a2a2#La2#La2af#La9#D#D#DaYaY#D#D#Da9a9.7a9a9.7a9a9a9.7a9#Lafafafaf#Lafafaja9af#pafa9af#pajaf.na9#s#DblaYa9a9.na9a9a9#Da9aj#Lafaj#La9aja9ajaf.nbl#DaYaw#xa0#x.b#xaY#D#D#p#p#p.na9a9a9#L.7a9a9a9a9a9.7a9#Lafafafafafafa9af#p.na9#pa9a9a9afa9af.7a9#L.7#L#La9a9.7a9a9.7.na9a9a9.na9.na9.na9#D#MaYaw.N#s#D.n.7.7.n.7.E#D#D.7",
+".7a9aY#xaCam#v#vaCaqa0aqama0#UaY.NaY#D#D#D#D#D#Da9#D#D#Dbl.NaY#Ibnambm#SaZa#a#b#aCa0a0#x#x#xaYbl#D#Da9#Dbl#Dbl#DblaYaYaYaYbl#D#Da9a9a9afa9afafafafafafafafaf#Laf#L#L#Laf#Laf#Laf.j#L#L.n.7a9#s#Daw#x#M#Da9#Daj.7a9.na9.7.na9a9.naf#Lafajafafajafafafajafajafafaf#pa9bl#Mbl#Daw#D.n#Da9#D.na9.na9a9af.7afafajaf#Lafa9a9#sblaY#x#IbnbnaYaYawbla9a9#p#pbl#pa9#D.7.7a9.7a9.7a9a9#L#Lafaf#Lafafa9a9a9a9#pa9.n#pa9a9a9afa9a9#L#Laf.7afa9a9a9a9.7a9a9a9.naf.na9.na9.na9#M.Nawaw#D#s#D#Daj.7aj.7#D.7b.a9",
+"a9#saY.s.Ca0aF#v#v.5#vaF.8a0#x#D#D.N#D#Da9bja9.7a9a9bl#D#DaYaY.N.R#Uama#aFaOaFaFb#b#b#a0aCa0#I#xaYblaYblbl#DblaYaw.R#IaYawaY#D#Da9a9a9a9a9a9a9a9a9#p.na9af#La9.7af#Laf#Lafajaf#L#L.3#La9#D#D.NaYaYaYbl#D#D.7a9.7a9.7a9a9a9.7a9.7a9a9a9a9.na9#pa9.n#pa9#pa9#p.na9#sbl#s#Dbl#DblaYa9a9a9.Ea9a9bja9a9.na9#sa9#Da9#Da9.nblbl#D#M#x#x#U#x#UaYaY#Da9#sa9#p.na9a9.7a9a9#La9a9#La9#L#L#L#Lafafa9#La9afa9#pa9#pa9a9a9a9.7#Laf#L#L#L.7#L.7.7a9.7.na9a9.na9.7.n#D#D#s#D#M#D#Mbl.s#D.s#Da9#D.7.na9a9.n.7#D.7",
+".N.N.NaY#Uaqamaoa#aB.0a#ambn#xbl#D#D#D#D#Da9.7a9a9.7a9#D#D.s.NaYaY.RaCamamaF.5b#amaob#amama0a0a0#IaYawaYaYaYaYaYbnbnbnaYaYaYbl#D.na9a9.7afa9a9a9a9af#paf.na9afa9.n.7#La9.7a9#L#Laf#La9a9#D#D.N.NaYaY#Dbl.n#D.7af.7a9.na9.na9a9.na9.na9a9#pa9.na9a9a9.na9.na9a9a9aY#MaYbl#sbl#s#D.n#Da9#Da9#sa9.n#Da9a9.7a9.na9.na9a9#DawaY#x#x#xbnbnaYawaYbla9a9a9a9#pa9#Da9a9.7a9.7af#L#L#La9#Laf#Laja9.7a9.7a9a9.n#pa9a9.7#Da9a9#L#La9#Laf.7afa9a9a9.7a9a9bja9#sa9#D#M#D#M#D#sbl#saY#saY#s#D#s.7a9.E.7#D#D#D#D",
+"#I.N#I#xamaCamaFaB.Gaz#u.8am#xaY#D#D#D.7a9bja9.7.7a9.7a9#D#D#D.N#Ubna0aCama0amao.Va0amaCama0aC.Cbnbnbnbn#x#Ubn#Uam#Ua0awaYaYaw#D#pa9a9#pa9a9a9#p.na9a9a9a9a9.7a9.7a9af.7afa9a9a9aj#La9.E#D#D#saYaY#Mbl#Dbja9.7.7a9a9a9.7a9#sa9#D#p#D#pbl#sbla9#D#sblbl#Dblbl#sblawaY.N#MaYbl#Dbla9.Ea9.na9.7a9a9#D#s#D#s#D#D#D#D#D#MaYbl.Naw#x#Ibn#I.R#xaY#Da9#Da9a9a9a9.na9a9a9.7a9a9#La9#La9a9#L#Laf#La9a9#Dbj#pa9a9a9#Da9.7.7afafa9.7a9.7#L.7a9.7a9a9#sa9.na9#D#D#D#s#D.sbl#Dawbl#saY#sbj#Da9#s#D.Nbl.saY.s.N",
+".Cbf.C.Cam.5aoa#.la5.G.waZ#va0.C#D#D#D.7a9a9#L#La9#L.7.7.7#D#D#D#x#x#x#x#x#xa0bnam.Va0.Va0a0#xbnaY#x#Ia0a0aCa0aCa0ambnbnaYawblbl#Dbl#M#Dblbl#D#Mbl#pa9a9#Da9a9.7a9.7a9.7a9.7a9a9#La9.n#D#D.NaY.NaYaY#D#Da9#Daja9.7a9a9a9a9.7a9.n#D#M#D#sbl#sblbl#D#M#D#M#D#M#D#M#x#xawaY#Dawa9#Ma9#Da9#Da9#sa9#s#D#D#D#D#D#s#D#sbla9blaw#x#x#xa0#UbnaYawaYbl#D.na9a9a9a9a9#Da9#pa9#La9#L#La9.7af#L#L#L.7#L.7.7.na9a9#D#s.7#D.7.7afa9#La9af.7a9.7.na9.na9a9a9#Da9#s#Dawblaw#D.sbl#sbl.s#D#D#s#D#saY.Naw#xaYbf#x#x",
+"aqaoamavam.8a##v.5#Saza7.w#u#vam#Da9#D.7a9.7a9a9.7#L.7#La9bj#D#D.Cbn#xbnaYaY#x#x.pb#.Vamaobnbn#xbnbn#xbn#xbn#xa0a0b#aCa0aw.R.Nblaw#Dbl#Dbl#Dblbl#pa9#Ma9a9.nbja9a9a9#La9a9a9.7a9.na9#D#D#DaY.N.NaYaYbl#D#sa9a9#La9.Ea9.7a9a9#Da9#M#Dbl#Mbl#sbl#s#Mbl#sbl#D#MaY#sa0#I.NaYaYblbl#Da9a9.na9.Ea9a9a9#D#D#s#D#s#D#D#D#Dbl#saY#x#xaC.Ca0#x.R#xaY#D#Da9a9a9a9a9a9#p.na9a9a9a9#La9#La9a9#L#L#L.7#La9.7.7a9a9a9#Da9.7af.7a9afa9.7a9.7#L.7a9a9bja9#s.7.na9#sbl.s.saYaw#saY#saY#saY#s#D#s#D#xaY#x.W.C.C.Waq",
+"amaFaOaFaOaFama0aY#x.8.0#u#uan#uam#xaY#Da9a9.7a9#Laf#L#La9#D#D.sbl#D#sbl#xaYaw#x.Rbn#Ub#.Va0b#b##Ubnbnbnbna0#xbnbnaYaYaYbnbn#UbnaYaYblaYblawblawa9.n#p#pa9#pafafa9a9a9.na9a9a9a9bl#Dbl#Dbl#sblblawaY#D#Da9.7.7#Laf#Laf.n.7#D.7#D.NaYawaY#xbn#Ua0#U#Ubn#UbnaC#UaY#xawaY#M#D.na9ajaY.N#Dbla9a9.na9.nbl#DblaYaYaw#x#MblaYawbn#Ibna0.b#U.RawaY#Mblbl.na9a9a9a9a9afa9#Dbj#D#D#D#D#D.7#Lafa9afa9.7#Da9#sa9a9a9#Da9.7.7afa9a9a9a9#D#s#D#D#Daw.N.NaY.NaY#D#sbl#saY#saY.N.na9#D#s#DaY.N.N#I#x.CamaoaFbya#",
+"bgb#amam.5aCa0.C#M#xa0aFaZ#uaB.0aO#xaY#Dafa9a9a9#L#L.7af.7#D#D#D#D#DaY#D.N.N#xaY.Cbna0a0b#aFb#aF.Vbnbna0#Ubnbn#x#U#x.R#xawaYbn#x.R#I.Raw.RaY#x.R#p#p#pbl.na9a9a9a9a9a9#Da9#s#D#M#Dblbl#sblbl#DblaY#Dbla9#Da9af.7ajaf#L.7a9.n#Da9#M#DaYaYaYaYbnaCbn.paCa0bgaoaC#UaC#I#xaY#MaYblbl#Mbl#M#D.na9a9.n#D#M#D#M#DaY#DaY#M#pawaY#Ibn.Ca0aYbnaY.RaYblbl#Da9a9.na9afa9a9af#D#D#D#D#D#Da9#Daf#L.7a9.7#Da9#D#pa9.na9a9b.a9.7.7a9.7a9bja9#D#D#D#D#DaY#Daw#Daw#D#D#M.N#saY.saY#sbl#sbl.Naw.Nawbna0aCa0.8a#aF.5",
+"amamaCa0a0#x#xaYblaY#Ia0bc#u#ua#amam#x#D#Da9.7a9#Laf#La9a9.7#D#Dbl#D#D#MaYaYboaYbna0a0aoamb#aOb#b#am.Va0bnbn#Ubnbn#xaYaY.R#xawaYbn#UbnaCbn#Ubn#U.RawaYblaYblawbl#D#D#D#Dbl#Dbl#Dbl#Dblbl#Dblbl#DaYaw#D#Da9bj.7#La9#Lafa9a9bja9bj#D#MblawaYaw.R#Ubn.V.8#vaB#S#waOaoa0aC#x#x.N#I.NaY.NaY#D#D#D.n#Dbl#sbl#Dbl#saYaYblawaYaYbnbnaCbn#U.baYawaY#M#Dbla9.na9a9.na9.na9#s#D#s#D#s#D#D#D.na9a9a9a9#D#D#D#pa9a9#Da9#D#L.7a9.na9#D.n#D#D#D.saY.saY.NaY.saY#sbl#s#Daw#DaY.NaY.NaY.saY.NaY#x.Wa0a0a0aOam.8a#",
+"#x#x#x#xaYaY.N.N.7#D#x#xb#aZ.ya#amaObn#Da9#Da9bj#L#L#D.7#Da9.7a9a9.nbl#D#DaYaY.NaC#xa0.Vamb#aFaF#vaFbga0a0bn#xaY#Ubn#U#xaYaYaYaYbn#xa0a0a0a0aCa0bn#Ubn.baYaYaYaYbl#D#M#Dbl#D#Dbl#Dbl#s#D#D#D#D#MaY#Dbl#D#Da9.7a9ajafaj.7a9a9#sa9a9#M#DaYaYaY.b#xbgb##vaBa7.Q.z#S.5aO.8aoao.Ca0.W#x#I.Naw.NawaY#DawaYblawaYaYawaYawaYaY#U.C#U.Ca0aY#x.RaY#xblbl#D#Dbla9a9a9a9a9a9#D#D#D.NaY.N#s#Da9a9#sa9a9#M#Dbl.na9a9a9a9bja9.7a9a9a9.7#D#D#D#saY#DaY#Daw#DaY.N#M#D#s#Dbl.s.N#M.Naw.N#xaY#x#I#x#Ua0a0aCamama0am",
+"aYaYbl.s#D#D#D#Da9#D#s.N.CaOa#aF.5ao#x#Dbl#Da9#Da9a9.7a9.7a9a9.7a9a9a9#Dbl.NblaY#x#xbna0a0amaFaFbmaFaFamaCbn#U#xbnbnbnaY.b#x.R#xaYbn#xbnaCa0bna0#Ubn#Ubnbn#I#xaY.NblaYaYawaYaw#Dbl#Dbl#D#M#Dbl#DaYaY#Dbl.na9.7a9#La9#La9a9bja9#D#MaYblawaY.R#x#U#S#SaB#uaz#u#vaO.8aOaOaOaOaOaOaO.Caoa0.W.C#I#x#I#x#I#x#x#I#x.NaY#x#Ubn#UbnaCbnaC#I.R#IaYawbl.sbl#M#D#Ma9#D.n#Dbl#D#D#s#D#D#D#D#D#Ma9bl#D#D#DblaYa9#p#sa9#D.n.7.7.na9#s#D#s#D.NaY.saY.saY.NaY.saY#s#D#p.s#saYaY.N#IaYaYaw#x#IaY#I#x#x#I#x#x#x#x#x",
+"#D#D#D.7.7.7.7.7.7a9a9#DaY.CaO.y.5.5bnaY#D#D#D#D#D#Da9bja9a9.7a9a9a9#Da9#sbl.N#MaYaY#xawbna0aCb#aOaFbgb#b#a0a0bn#Ibnaw#xaYaYaYaY#Ubn#IaYaYaYaYbnbn.R#xaw#x.R#Ibnaw#IaY.sbl.Nbl.N#D#M#Dbl#D#M#DblawaY#M#D#D#s.7a9aj#L.na9.n#D#s#D#DaY#IbnaY#UbnaCaB#SaB#u#uaBaO.5amaoam.8.5aO.y#1#1#u.yaOamamaoamamamaC.C.C#xbn#x#Ua0aC.CaCa0#Ia0.R#x#UaYaYblaY.N#D#p#D#sbl#Dbl#D#s#D#D#D#D#s#D#Da9#p#MblblawaYaY#Ma9bl#sa9bja9.7#Da9a9.7a9#Daw#DaY.saY#Daw#DaY#D#M#D#sbl.N#saY.saY#xbo.N.N.s.N.Naw.N#D#D#D#Da9#D",
+"a9.7.7af#Lajbp#L.7#L#La9#DaYa0#va#a0a0.Cbl#D#D#Dbj#D#Da9.7a9#L#L.na9a9a9a9#D#D#Dbl#DaYaY#xaYbna0b#aFb#b#aob#aoambnbnbnbn#U#x.R#xaY.RaY.R#IaYaYawblblaYblaYaYaYawbn#I#x#UaYawbl#Daw.N#D#D.NaY.NawaY#xbl#D#D#Da9.Eafaf#La9#D#D#D#D#I#x#xaCa0aCaoaO.FaO#v#u#u#uaFbgaC.Caoa0ao.5aB.z.U.Oaz.y.y#vbm.y#v#v.5amaoamao.8amaoa0aoa0#Ua0#x#U#xbnaw.N.saY#sbl#Dbl#Dbl#D#M#D#D#D#D#D#D#D#D#D.nbl#Dbl#xaYaYaY#pbla9bl#D#s.7.7.na9#Da9#s#D.NaY.NaY.Naw.Naw.Naw#D#M#D#D#Maw.Naw#x#IaYaY#s#Da9.nbj.7.7b..7.7bp#L",
+"#L.7#L#Lbpbp#Lbp.7#L#L.n#D.N.C.5a#amaCaoaY#D#D.N#Da9#Da9#La9#Lafafa9a9#Da9bl#Dbl.n#D.nblawaY#x.Ra0.Vbgamb#amaFaF#Ubn#U#xbnbnaYaYawaYawaYaYblaYaY.bblaYblblblaYaYaYaYaY#I#x#I#x#I.NaYaY.sbl.sbl.NaYaw.N#M#D#sa9.7a9a9.na9.n#D#s#D#xaCa0aoaob##SaBaOaF#S#uaB#v.5aoa0aCamaoao.8#v#v#3ar.wanazaz#3#C#3aX.w.yaOam.8amaCambga0aoa0aCbn#U#x#IaYaw.NaY.NaYaY#sbl#sbl#D#M#D#D#D#D#s#D#D#DblblaY#MaY#IaYawbl.nbl.n#D#Da9#D#Da9.Ea9#D#D#Daw#D#saY.Naw.NaY.N#M#D#s#D.saYawaY#I.N.N#sa9a9.7af#L.E#L#Laj#L#L#g",
+"#L#L#L#L#La2bpa2#L.j.7.7#D.Nbf#IaFaBa7an.5a0#Daf#D.7#D.7a9a9#L#L#D#Da9#D#M#D#Dbl#Dbl#Dbl#Dbl#sblaw.RbnaCb#aOaFa#bg.VambnaCbnaw#x.RaYaYaY.baYawbl#pbl.n#Da9a9#D.7#s#D#D#D#D#D#MaYaw#IawaY#x.N#I#x#IaYaY#D#Da9.na9aja9.n#D.N.N#x.CaCb##vaB#uaBaB#v#SaOaOaOaObg.8am.W.WaCaCamaOaB#u#a#faz#Sa#aBaBaz#u#u#uaz.w.wa7#u#uaB.yao.5aC.C#Ia0.pa0aCbnawaY.sbl#saYaYaY#DaYaY#D#s#D#D#D#D#D#D#s#D#sblaY#x#I#x#D#D#D#Da9.n#D#sa9#D#D#D#s#D#D#D#sbl#s#D#saY.saY#MblaY.C.W#I.N#s#Da9#sa9.7.na9.7#L#L#L#L#L#L#L#L",
+"bpaj#Lbp#Lbp#Lbpa2#L#L.7#D.Nbfbf.Va#an#uaB.8bn#D#Da9#Da9.7a9ajafa9bl#Dbl#D#D#M#D#D#Dbl#D#Dbl.NblaYawbnamb#aFbm#Sb#.Vaobn#xbnaYaY.baY#MaYblaYblaY#pbl#p.n#Da9.n#D#D#D#s#D#s#D#D#saY.s#x.s#I#x#Ibn.W#I#xaw.N#s#D#D#D#D.NaY#I#x.WaCaCaCaF#SaB#v#SaOaOaOb#aOb#bgamao#x#I.CaCao.8#u.w.OaG.G#SaBaBbmaB#v#v#va#aB#u.G.Galbk#Taz.w#v#v.5bg.5bga0ao.C#IaYaY#Dbl#DawaY#D#M.NaY#D#s#D#D#s#D#D#MaYblaY#I#x#x#M#s#D#s#D#D#D#D#Dbj#s#D#D#D#s#D#D#s#D#Daw#Daw.N#M#s#x#I.Cbf.s#D#D.n.7a9.7a9.7.E.7#L.7#L.7#L#L#L",
+"#Lbp#L#g#La2bpa2a2#g#La9bj#D.Nbf.RaCaOaZ.yaFa0aY#D#D#s#Da9a9a9a9#D#Da9#Dbl#D#Dbl#D#M#D#D#M#Dbl#saY#xbnaCa0aOaF#Sb#bg.VbnaCbnaY#xaYaYaY.baYblaYbl#Ma9#p#Da9a9#D.7#D#sbl#Da9#Da9#D#D#D#saY.N#I#I#Iaoao.W#xaY.Naw.N#I#I#U.WaCaoamaobnaCaO#vaF#vaOaFbgambgambg.5.8amav.WaC.CaoaF#uaza6.OazaZaB#vaF#vaFaFam.5aF#v#SaB.G.O#3bv.G.GaPaP.w#u#vaFama0.C.C#IawaYawaY.NaYaYaY#MaYaYaYblaYawblaYaw.NaY#I#x#I#D.N#M#D#D#s#D#s#D#s#D#D#s#D#Dbl#s#p#saY#s.Naw.Nblaw#I#xaY.N.N#sa9.7a9.Ea9.Ea9#L#L#L#L#L#L#L#L#L",
+"#La2bp#L#Lbp#Lbp#L#L#L.7#Dbj#D.NaYbna0aoa##vam.C#D#D#D#D.7#D.7a9a9#D#Dbl#D#Dbl#Dbl#Dbl#Dbl#D#DaYaYaYawbna0b#aO.Fbgb#ama0bnbn#IaY.bblawblaYaY#MaYa9#p#sa9a9#Da9#Da9a9a9a9a9.na9a9#s#D#D.saY.NaY#x.C.C.C.W#I#x#I.WaF.8a0a0a0a0aCa0aCaCb##vaFaO#vbgaob#aoaoamaoaCam.W.Caoa0.8#v#ubkab#aan#vaZ#vaFa#aoaobga0aoamamaOa#aBaZ#u.w.w.G#3#3#a.w.y.yaOb#aCbnbn#I#xbn#UaYawbfaYbfaw#x.s#xaY.NawaYbl#x#Ibn#I#Daw#D.s#D#s#D#D#D#D#D#D#D#D#s#D#D#Dbl#saY#saY.saYaw#xaw.N#s#D#D.7.n.7a9.7a9.7#La9aj.7#L.E#L.7#L",
+"bp#L#L#g#L#g#La2#g#L#L#L.7#D#DbjawaYaCamaoa#.8aF.N.s#D#D#D.n#Da9#sbl#D#D#M#D#D#M#D#M#D#Dbl#sbl#saYaY#x#UbnaCb#b#bgb#bga0aCbn#x.RaYaYaYaYawblaYbl#p.n#pa9a9.nbja9.7a9.7#sa9#D.7.na9a9#D#D#D#saY.s#x#I#I#x.C.Wa0aoaoama0.W.C.Wa0#Ibn.paO#S#v#v#S#Sbgaoaoa0aoa0avaCaqaoavao.8#v.w#T.Y#3an#va#aOamaOa0bnaoambgamaoam.pa0bgb#aoaFaO.ybk#T.GaXaz.waBbyaCa0a0bnaCa0#Ibn#I#x#x#x#x#x#xaC#x#I#x#I#x#I.C#IaY#saY#saY#D#M#D#s#D#M#D#M#D#D#D.n#M#D.s#DawaYaw#x#IaYaw#sa9.7.n.7#L.7aj.7#L#L#L#L#L#L#L#L#L#L#L",
+"#L#g#L#g#g#gbp#L#L#L#L.7af.7.7.7#D.N#xaob#.8a#a##DaY#D#D#D#Da9bjbl#D#Dbl#Dbl#D#DaY#DaY#D#M#DaYaYaYawaY#x#Ibna0aCbgb#bg.VaCbn#U#xaw.Raw#FaYblaYbl#D#p#Da9#Da9a9#Dafaj#Laf#Lajaf.7a9#Da9#sa9#D.Nbl.NaY.NaYaY#I.C.Wamaoaoaobga0aoa0aCam#vaBa##SaBaBaobgaoaoaC.Waqaoav.8ao.5aOaBazaX#4alaza##vaOam.5aC.Wa0.Wa0aob#.8bnaCaCaCaC.W.WaC.y.yaB#ubkbkaX.Oazae#vaO.5ao.pbga0a0a0#Ua0aCa0ao.CaCaCa0#IaCa0#IaYaw#D.sbl#s.N#s#Dbl#D#s#D#D#sbl#D#D#saYaw.saw.NaC#xaw#D#sa9.n.7a9aja9#La9aja9#L#L#L#L#L#L#L#L#L",
+"#Lbp#ga2bpa2#L#g#L#L#L#L#L#L#LafbjaYaY#xama0.5aO.N.NaY.s#D#D#Da9#Dbl#s#Dbl#Dbl#D#M#D#M#DaYblaw#D#MaY#I.R#U#x#U#Ub#b#bga0aCa0#x.R.Raw.RaYawaYblaw#p.n#pa9.na9#Da9aja9af.Eaf#Lafajafaja9#Da9#s#Daw#D#s#D#s.NaY.NaY#U#Ua0.paobgb#bgaO#vaB#u#u.y#ua5aObgaoamaoamaoavam.8.8#v#v#u.w.GaTbw.G.0#vaFaoamaoa0aoama0aqamaoamaCaqaC.W.W#I#Iaxbgaobg#va7.Oau.U#3#3a5#uaB#vaFaoaoa0amaCamaob#aoamaoaoa0aC#Ibn.sawaY.sbl#saY#s#D#s#DaY#saY#D#D#s#p#s#DawaY#Iaw.C#I.N.naf.Ea9.7aj#L#Laj#L#L#Laj#L#L#L#L#L#L#L#L",
+"a2#L#g#g#g#gbp#L#L#L#L#L.7#L.7#L.N.N.s#x#xao.5b#.NaY.N#D#D#D#D#D#M#D#Dbl#D#D#sbl#D#Dbl#Dbl.sblaY.NaY#x#I#x#U#UaC.Vbgb#bgaCaC#U#I.R#x.baY.RaYblaYa9#pa9#Da9#Da9bjaf#Laf#Laf#L#La9#La9a9a9.7#Da9#D#sa9a9a9#D.NaY.Na9#paY#Ua0aoaO.yaBaBazazan#u.Gbk.daOaO.8aoavao.8.8.8bd.yaL#uazaX#0#4#TaZaOaO.5aoa0.Camaoamaoamambcby.8.C.C.W.W.W#U.rbgaO#S.yaB#uaP#3.U#3arbk#u#vaFbgbgaob#aob#bgamaOaoaoaoaC#U#IawaY.sbl.s#D#Daw#DaY#s.N#M#D#s#D#s#D#M.NawaY.s#xaC.C#Ma9aj#L.7.naf#Laf#Lafaj#Laf#L#L#L#L#L#L#L#L",
+"#g#g#Lbp#Lbp#Lbpa2a2#L#L#L#L.7#L#D.N.NaYbo.C.C.W.Vbn.N#Dbjbj.E.7#D#D#D#D#s#D#D#D#D#s#D#s#D#D#D#sawawaYaw#x#U#xaCa0aCa0aC.Vamb#a0aYaw.RaY#M#p#M#pajafaj#pa9a9#Mbl.na9a9a9a9a9a9afajafaja9#D#s#D#Dbl#D#s#D#s#D.n#Dbl#saYaYaw#x#IaCaOaB#1a5.w.wbkaV.Qbt.ybcbc.8bcbcaBaB#u#uaz.waP#T.O#zbw.6aF#vaOaFambga0amamaOaoaOaoaCa0.WaC.W.C#I.WaCaoaOaoaOaobg#v#v#S#1.Q#3agaV#1aB.8aOamaoaCbg#v.8aoa0aC#x#U#Iawaw#D.s#D#s#D#s.N#saY#s#Daw#D#Mbl#saYaw#x#I#xaC#D#sbj#D#D.7#s.7.7.E#L.7#Laf#L#La2a2a2#ga2#g#g#g",
+"#gasbp#g#Lbp#Lbp#L#g#L#L#L.7af.7#D.NaYbf#x#x#x#xaCbn#I.N#Dbja9.7#D#D#D#D#D#D#D#D#D#D#D#D#D#s#D#DblawaYawbn#I.WbnaCa0.pa0aoa0aoam#UbnaYaYaYblblbl#paf#p.n#pa9bl#Da9a9a9aja9af.na9.7af.7a9a9a9#D#sa9#M#D#D#D#D#D#D#D#D#M.NaY#x#x#xa0am#vaB.z#u#Ebi#nbCaX.Q.y.y.QaXbka5#u#u.w.wbkaP.O#4#4.wa##v.5a#aoamambg.5aO.5a#aoamaC.WaC.W.W#IaCaC.WaCaoaoaoao.8bg.8#v#v#u#uaPagagaXbka5aBaBaB.y.z#S.8bgaoamaC#x#IaYaw#D#sbj#D.sbl.sbl.N#saY.s#D#MaYawaY#U#x#Ibj#s#Db.#Db.#Dbj.na9#La9aj.7#L#La2#ga2a2#g#gas#g",
+"#ga2#ga2#g#g.7bpa2a2#L#L#L#L.7#L#D#D.N#M.N#I#x#xa0a0#x.s.N.N#D#D#D#s#D#D#D#D#D#s#D#s#D#D#s#D#D#M#D#MblawaYaw#x#I#Ubn#Ua0.pa0.pa0aCbn#Ubnaw.Rawbl.n#p#p#pa9a9bl#Dafa9a9#pa9a9a9afajafaja9.7#D.n#D#Dbl#D#s#D.n#D#s#D#D#DaY#saYaw.N#UbnaCaOaO#vaBbkbq#Rbqag#3.U#zaVau#Tazazbkbkbv#3#E#0ab.2#uaOaF#vaFaOaOaFaObyaO.8aCaCaC.C.W.W#I.W.WaCaC.WaC.WaCaCaCaCaoao.8.8#v#vbbbbap#3.U.U.U#4a5#E#1#SaFaOaOaFaC.W#x#IaY.s#D#saY.s#xawawaY.saY.sbl.NaY.s#x#x#Ia9.7.E.7.E.7.n.7a9#L.E#L.7#L#L.7#L#L#L#L#ga2bpbp",
+"#g#g#L#gbp#g#Lbp#L#g#L#L#L#Laf.7#Da9#D#DaY.N.N.sbn#Ua0.C#x.N#s#D#D#D#D#D#s#D#D#Da9a9.na9a9a9a9#Dawbl#saYawaY#U#x#U#x#Ubn#Ibna0aCa0a0#UbnbnbnaY.Rbl.n#D#p.n#pa9bla9af.nafa9afa9a9#Laf#La9a9a9bja9a9a9.na9a9.7a9.7a9a9#s#D#DaY.Naw#xaw#xaCamaoaOaB.v.O.Obqadbx.abzbi.U#3#T#3bvagag#3#4#caT.w#vaF.y#v.5#vaOa#ao.5.5aC.CaC#I#I#I#Ibo#I#Iaw#Iawaw#I#U#7.W#IaC.WaCav.W.8#v#v.y.w.G#T#3.Oag.O.w#uaB.ya#aoamaC#x#I#x.N.s#xaw#I#x#Ibfaw.Nbl.s.Naw.NaY.saY.E.7af.Eaf.7#L.E.7aj.7#La9aj#Lafajafaja2#L#ga2#g",
+"#ga2#ga2#Lbp#Lbpa2a2#L#L#L#L.7#La9.7a9#D#D#DaY.NaY#xa0#U.CaYbl#D#D#D#D#D#D#D#D#Da9a9#Da9#sa9.na9#D#M#Dbl#saYawaYawaYaYawbn#Ibn#IbnaC#xbn#Ibna0bnblblbl#Dblbla9a9.na9a9a9a9.na9a9af#L#L.na9bja9#D.na9a9a9.n.7.n.7.Ea9.7a9#s#D#D#D#sblaw#IaCaobg.d.O#ia5.G#zadadadabadaVaVbq#3#3bvbqaba8.YbkaBaO#uaFaOaFao.5aoaqaC#I#I#Iaw#I.s.sawbobo.sbo.sbobo.s#M#M.s#7aw#Iaw#I#U#IaCao.8aO#v#u.Q#3biag#3aXazaZ#vaOam.C#x#I#IaY#I#x#I#I#x#I#xaw.Naw#D#s#D#s#Da9#Laj#L#Laj#Laj#L#La9#L.E#L#L.7#Laf#Laf.7#L#L#L#L",
+"a2a2#L#g#L#L#L#La2bp#L#L#L#L#L#L#L.7#La9.7#Da9#D#DaYbnama0#xaY#s#D#D#s#D#D#D#D#Daj#Lafajaf#La9a9.na9#M#D#MaY#MaYbl#MawaYaYaYaw#x.RaY.b#xbnbn#Ibnaw#xawbl#D#Ma9#pafa9afa9afa9afa9aj#Laf.7a9.n#Da9ajafa9aja9#L.7#Laf#L.E#L.7.Ea9#sblawaw#xaCaCaO.8aBazbka5.Gbk.U#3biad.a.a.DaVaVaV.M#d.S.Yaz#u.0.y#vaF.8a0.W.C#I.C#Iaw.Naw.s.s.s#s#s#s#s#s#s#s#s#s#s#s#s#M#s#s#s#s.n.n#M.raC#OaO#w#u#E.vbkazbkbkbk.w.yaOamaC.C.C#I#I#I#x#I#x#I#x#Ibf.s.N#s#D.7a9.E#L.E#L.E#L#L#L#L.7aj.7af#L#L#L#Laf.nafaj#L#L#Lbp",
+"#gaa#ga2#L#L#L#Lbpa2#L#L#L.7#L.7#Laf#L#L#La9.7#D#saY#xa0ama0aYaY#D#D#D#D#Da9#D#Daf.7aja9#L.n#Laj#p.n#p#Dbl#s#DaY#sbl#D#MawaYaYaY#Mblbl.baYawbnbnaYaYaYaYbl#D#pa9a9a9a9a9a9a9a9a9afafaja9a9bja9#Dafafajaf#L.Eaf.Ea2#Lafaja9a9#s#D#sawaw#IaC.WaoaoaO#uae#1#u#uaz#u.O.Ubi.D#d.D#J.D.abu#6.Y.G.w.yaZ.8aoam.W#xaw#I.saw.saw.s.s#s#sbj.Eb.#sb.b.#sb..E#s#s#s#s.s#s.E#s#s#s#s.r#U#IaCaCbd#1#SaOao.ya5bkaza5.waOamaoaC#x.WaC.W#I#x#I#x#I.Naw#D#D#s.7#L.7#Laj#L#Laj#Laj#Laja9#L.E.7.n.7.Ea9a9a9a9a9.7#Laf",
+"a2#g#L#g#L#L.7#La2#g#L#L#L#L#L#L#La2#Laf#Lbja9a9#DaY.C.VaFa0#xaw#D#D#D#D#D#D#D#Dajafaf#Laf#Lafaf#p.nbl.n#Dbl#M#D#Ma9#M#DaYaw#Dawbl#MaY#Mbn.RaYawbn#xaw#x#Mbla9.naf#paja9af.nafa9aja9#La9a9a9#s#Daja9#La9#Laf.7#L#Laj.n#L.7.n.7#s#Daw#x#I.CaC.8.8#v#v#v#vaO.z#1.z.Gbk.O#zbibBbBad.x#5#9.YaPaz.y.0bgaoam#Iaw.N#s#Dawaw.s#s#D#s#s#s.E.7.E.7.E.E.E.Eb..Eb..E.E.E.E.E.s.saw#IaC.WaC#Oam.d#vao.8aFaO.8.G#3.OaB.8amaCaCaC.Wa0#I#I#I#I#x.s.N#s#D.na9.n#Laj#L#Laj#Laj#Laj.7#L.7af#L#Laf#Lafa9a9.na9a9.7.7",
+"#L#L#L#L#L#L#L#L#La2bpa2#ga2bp#L#L#L#L#L.7a9.7.7.NaY#xbnao.VaF.V#xaY#Ma9.na9a9#D#La9aja9aja9aj.7.na9.na9.na9.na9#p#s#p#D.na9a9.n#p.nbla9#sbl#saYaYaYaYaYaYaYaYaY#pa9#p#pa9#pa9.nafafaja9#D#D.N.N.nafajafaja9ajafajaf.7.na9#D.n#D#Dawaw#I.W#IaCaCaobdaO#v#v.y.y.y#u.QaX.9#TbC#r#r.aatatbB.2aX.GanaC.W#Ibobf.sbf#I#s#s#s#sb.b.bj#s.7.E.E.E.7.Ea9.Eaj#Lajajajajajaj.s#s#I.s.s#I.s.WaCaCaCaCa0.W.W.W#v#vbtbkbk#uaB.0aObgaoaoamaC.C.W.n.na9.E.7.E.7#Lbjb..Ea9aj#L#La2a2.jbpaj#L.E.7bjajaf#La9#Laf#Laf",
+"#L#L#L#L#L#L#L#L#L#ga2a2bpa2a2a2#L#L#L#L#L.7#L.7#DaY#Ibnb#b#aOb##xaY#D#Da9.n.7#Dafajaf#Laf#Lafafa9aja9a9.na9.na9.na9.na9#p.na9a9afa9.n#p#D#M#DblaYawaYaw#xaw#xaY#p.na9a9a9a9#p#pafaf#pa9#D#s.N#sa9a9#La9#Laf#Laf.7aja9.n.7.n#Da9.saYaw#x#I#x.W.WaCao.8.8aObc#v.y#v#ubkbvbvaXbvbC.k.Dai.UaXbv.Ga7aOaoaNboaWbo.s.Nb.#sb.#D#s#sbjb.b.a9b.a9.E.7.Ebjajaja2aj#Laj.naj#D#s.sbo#I.sbo.saCaCaC#I#I#I.W#xavaoaO.y.z#1bkbkaBaBaO.5aoaoav.Wa9#s#L.E#L#L.7.E.7#D.7.E#L#L#Laja2bpa2#L#L#L#L.7af.7afajafaj#L#L",
+"a2#La2#ga2#ga2#ga2#L#ga2a2#g#L#g#L#L#L.7af.7a9.7#Daw#x#xam#SaZa#aC#xaYa9a9a9#Da9aja9#L.n#L.n#Lajafa9.naf.na9a9.na9a9.na9.na9a9.n.na9a9.na9#D#D#saY#x.R#xaYbn#x#xblblbl#Mblbl#Dbl.n#p.nbl#D#D.N.N.naf.nafaja9#L.n#L#La9.7.n#D#s#saYaw#I#I#I#U#Ia0.Wao.8aObc.8.y.y#u#ubk#3bCapbkag.kbqaX.Q.Qbka5#u#v#vamava1bob..E.na9b..E#s.7.E.E.7.E.7.E.7.E.7.naj#L.jaja2ajajaj.n#D.s#I.s#I.saY#I#U#x#I#x#x#Ibo#x#I.CaoaO#v.y#1bkbk#u#vbcam.C#I#sa9.n.7.E#L.E.7#s#s.7.n#Lajbpa2bp.jbp.j#Laj#L#Lajafajaf#La2afa2",
+"#ga2#ga2a2a2#g#La2#ga2#g#L#ga2a2#L#L#L#L.7.7#La9#D#D#xaCaF.0aZana0#xaYbla9.na9#D#Laf#Laf#Laf#La9af#L.na9af.nafa9ajaf#Laf#Lajaf#Lafajaf#L#D.n#D#DawaYaY#IaY#I#x#IaYawaYaYaYawaYawbl#Mbl#D#sbl.s#Da9.na9.7afajaf#Laf.Ea9.Ea9#sa9#s.N#I#x#I#x#Ia0#I.Wao.8.8aObc.ybba5bkaXaX#3bvag#n.c.#bt#baLbcbdaBaB.y#vam.Wbfb..7#s#s#s.7.E.E.E.7#s.E.E.7.n.7.E.7aj#g.ja2.jaja2#L.E.n#s.s.s#I.s.s#x#I#I#x.s#I.Nbo#x#I#I.CaoaoamaObkaz.Q.z#v.8.Wbf.N#s.N#s#D.sa9.E#D#D.E.7#L#Laj#Laj#g#L#g#L#gbp#L#L#L#L#L#La2bpa2",
+"a2bpa2bpa2bpa2a2#g#La2bpa2a2bpa2#L#L#La9#L.7a9.E.7aYaY.Cam#vaZaZaobn#xbla9a9a9#s#L.n#L.n#L.n#Lajaf#Laf.na9a9ajaf#L#Laj#Laf#L#Laj#L#L#Laj.7a9.7a9#D#Dbl.NaYaY#xaY#xaY#x#U#xbn#IbnblaY#MaY.NaY#s#D.na9aja9af.7af.E#Laja9a9b.#D#s#Daw#x#I#I#x#I.Wbn.Wa0aoao.5.8.y.QazaX#3.O#3aVai#n#8aLax#O.W.Wao.8#1aB.y.5.Ca1bo.sbo#D#sb.#D.E.7aj.7.E#D.E.7.E.7.7.ja2.j#gbp.jaj.j.7#s#s#s#s.N.s#Iawaw#D.saw.N.s.s#D.s#x.W.WaoaC.8.0.y#v#v#v.d.8ao#I#Ibf.s#Db.bj.7#Dbj#L#Laj#L#L#La2aj#gaj#ga2asasa2a2a2a2#La2a2#g",
+"#ga2a2a2#ga2a2#ga2a2#ga2a2#L#ga2#L#L#L#La9.7.7a9.7.N.s#xamaF#va#.5am#x.N#D.na9.7af#Laf#Laf#Lafa9#L.n#La9.naf#Laf#Lajaf#L#Laj#Lafa2ajaf#Laf.7.7.na9.n#D.nbl#D#DawaYawaY#U#x#U#x#UaYaw.Nblaw#D#D#sa9.na9.nafajaf#Lafaj.7.na9#sa9#saY#I#I#xaC#xao.CaCavaoao#v.yaI.Qae.O#zaV.Dah#Xag#b#O.r#7#7#7.W#QaObdaB.y#vaoaqbo#Ibobf.N.Ebj.E.7.E.E.7.E.7.E.7.Ebp.j#g#g.ja2#L.j.E.7#s.nb.#s#D.saw.Naw.s#D.s#s.N.s.sbo#I.C.Wam.8bgbgamao.C.8axbcaxaoaobo.N#s#Db.#s.7.E#L#L#L#Laj#L#g#La2#gas.jasbp.j#L#g.j#g#L#g",
+"a2asa2asa2aa#ga2#g#L#g#Lbpa2#L#L#L#L#L.7.7.n.7.7a9.saYaY.Wa0amam.5am#IaYbla9a9a9aja9aja9aja9ajaf#Laf#L.na9#L.n#Lajaf#L.jafa2a2.ja2a2#Laj#Laja9#L#Laf#Lafa9.n#D#DaY#xaYaYaYawaY#U#xbnawaY.Naw#D#sa9.na9af.na9.na9.Ea9.na9.E#D#s#D#I#x#I#x.WaCaoaoao.8.8.8.y#1#1.Q#T#3bq.D#m#haibkavao#7aE.sbo.W.W.s.Wbd.GazaBbc.8##avbobfbobjbjb..7.7.E.7.E.7.E.7#g.j#g.j#g.jaja2.Eaj.n#D.nb.#sb.#D#s#s#D#s#D#s#s.s.N.N#I#x.Wam.WaC#x#I#xaCa0av.8.8.8ao.W#Ibo#s#s#Dbj.7#Lajaj#L#Laj#gaj#g#gasasaU#g#g#ga2bp#ga2#g",
+"a2a2#ga2a2#ga2a2a2#ga2aja2bp.ja2#L.7#L#L.7a9.7a9bj.N.N.N#xa0a0aCaF.5bnaY#D.na9.7af#Laf#Laf#Laf#L.n#L.na9.naf#Laf#Laja2#La2aja2#La2aja2#Laf#L.E#L#Lajafaj#La9#L.nblblbl#MblaYaYawbn#U#x#xaw.N.s#D.nafa9.na9a9a9.na9aj.7#sa9#sa9#s#x#I#x.Wbnavamaoao.8aObd.ybt#ubbag.O#3bA.iaJ#3bbav.h#7b.b.boa1#IaE#I#QaB#uaPaz.Gbcbcavavbobfb.bj.E.7.E.7.7.E.7#L.j#g#g#gaj#g.jajaf.E.n#s#s#D.E#D#s#s#D.s#Db.aW#sbf.Nbo.C.Wav.Cam#Mblaw#x#Iaoaqaoaqavavaoav.s.Nb.#D#s.7.E#L#Laj#g#Lbpa2asas.jaUaU#ga2bpa2#g.jbpa2",
+"#ga2#g#g#ga2#g#ga2#g#g#ga2#g#Lbpa2#L#L#L#L#La9.Ea9a9#saY#I.C.Wam#x#U#x#IaY.N#D#Daj#Laj.7.7a9.7.7a9#Laf#L#L#L.n#Lafafafajafaf#Laj#L#L#Laj#Laf#Laf.jaf#Laf#Laja9#Da9.na9#Da9.n#D#DawaYawawaYaY#MaY.7.n.7.n.7.Ea9.7ajaf.Ea9#s#D#D#D#Ibn#UaCaoao.8#vao.d.d.y.z.y#1bbagaX#3aAbx.caLav#7#I.s#7b.#sb.b..sbo#Iav#QaOaKbtau.GaZaFaq#Ibf.s.7.n#L.E#L.7aja3.Ebp.jbpbpajbpa3#s#D#s#s#s#s#D#sa9.n#D#s#D#s#D#s#x#Iaw#I.N#s#s#D#saY#saYaY#I#I#I#I#U.W#IaC.8ao.C#sa9#L.7.n#L#L#L.ja2.j#gasasas.jas#g.jas#gas#gas",
+"a2#ga2#ga2#g#ga2#ga2a2bp#ga2bp#Lbpa2#L#Laja9.7#La9#D#D.N#x#x.C.CbnbnbnaYaY#D#D#D#L#La9aja9.7.E#D.nafajaf.Eafafaj#Lajaf#Lafajafaf#Lafajaf#L#Laj#L#La2afaj#La9a9.na9bja9.na9#D.na9awblaYawaYawaYawa9.na9.Ea9a9.na9ajaj#L.n#D#s#s.N#U#Ibn.WamaO.8#v#OaObdbd.yaLbb.Q#8.v#3aV.abCbd.8#7#7.sb..sb..sbj#s.s.s#I.Cav.8.8#u#uaB.ybcao.Wbf#D#s#D.7.E.7.Ea3ajbpajbpajbp#L.E#s#D#s#D#s#D#s#D.n.7#s#D#s#D.s.N#x#I.NaY.s.N#s#D#s#D#M.N.s#I#x#I#x#I#x#IaCbd.8ao#s#D#s#L.7aj#L#L.j#gas#g#g.j#gas.jas#gas#g.j#g#g",
+"#g#La2#ga2#ga2bpa2bpa2#L#L#L#g#La2aj#L#L.7.7a9.7.n#D#saY.s.N#x#I#x#xawaY#Ibl.N.Naf.E#La9.7#sa9#D.n#Laf#Laf#La9afaf#Lajaf#Lafaj#Laj#L#L#Lajaf#Laf.j#Laf#Laf#La9a9a9a9.n#Da9.na9#D#D#s.N#s#D#s.N#s#D.Ea9a9.Ea9.7.na9.na9#s#D.s.N#x#Ibnbn.Waobg.8.8.d.d#vbd#v.z#1bb.QaX#3aA.kaXbcao#7.s.sb.b.b.b.#s#s#D.s.N.s#x.CavaFam#v.y#u.ybyby#Ibf.s.Nb..7.E#L.7.E#L.7.E.7.E.7#s#s#D#s#D#s#D#s#D#s#D#s#D.s.N.s#x#IaYbo.s#D#saW.n.7#s#D#s.N.s.s#I#I#I.CaCax#vaO.saw#s#D.n#Lafaja2a2.j#gas#g#g#g#g#g.j#g#gas#g.j",
+"#ga2#ga2#g#L#ga2#ga2#g#L#g#L#L#L#g#L#L#L#L.n#L.7#D#D#D#DaYaY.N.NawaY#xaY#x.NaY#Ma9.7a9.Ea9#D#Da9a9af.7af.Eafaj#Lajafafafaj#Lafaf#Lafaj#Laf#Laj#La2af.j#Laf#La9.7a9.7a9.7a9#Da9a9#s#Dbl.saY#saY#s#D#s#D.na9.Ea9.7a9.n#D#s.N.s#xbobna0aCa0am.8aOaO.8#vbd#vbd.yaL#1.Qbk.Obi#R#8#v.rbo.saE#sb.#sbjb..7.E.n.E#s.s#I#xbo.Wavbc.y#u.yanaoaq.Cbo.N#D.E.7.E.7#L.E.7.E.7#s#D#s#D#s#D#s#D#D#s#s#s.N#s.Naw.N#x#xaw.N#s#D#sbj.n.7.E#DaE#saYboaCaCaoaoaoao#Oao#Iawaw#s#D.n.7a9aj#g#L#g.j#ga2#g.jas#gas.j#gasas",
+"a2bp.jbpa2#ga2bpa2bpa2#L#Lbp#L#L#La2#L.7#L.7a9.7#s#D#D#D#D#s.NaYaYaY.s#x.s#xaYaY#D#s#D#D#D#s#D#sa9ajaf#Laf#La9af#Lajaf#Lafajafaj#L#Lafaj#L#L#L#L#L.jafa2#Laja9a9.na9a9.na9.na9#s#D#D#s#D#s#D#s#D#sa9#sa9#Da9.n#D#s#D#D.saY#xaY#IamaCamaobgaObcbdaOax#vbd#v#v.yaL#1.Qa5#3#R.vbc.W#7#s.sb.b.bjb.bj.E.7.Ea9bj#s#Daw#s.Nbo.C.8#van#ubc#v.8a0bf.s#D#sbj.7bj.7#D.7#sbjawaY#saY#s#D#s#Daw#DaY.saY.NaY.saY.saY.N.s#D#s#D.Ea9#s#s.N.sboawao.8.d.daoaC#I#x.sawbo#M#D#Daj.7#L#L.jbpa2bpa2#g#g#g.j#gas#gas#g",
+"#ga2#ga2#g#L#g.ja2#g.jbpa2aj#Lbpaj#L#Laj#Laf.7af#D#D#s#D#D#D#D#D.N.saYaY#xaY#x#IaY.N#D#D#s#D#Da9#L.na9.na9ajafajaf#Lafajaf#Laf#Lafaj#L#Lajaf#L#La2a2a2#Laf#La9a9.7a9.7#Da9bja9a9.7#sa9#D#s#D#s#D#s#D#D#s#D#s#D#sa9#s.NawaY#I.C.WaF.8b#ao.8bg#vbd.8#vbd#vbd#v.d#v#1#1.wagbi#8ao#O.saE.sb.#sb.#s.Eaf.Ea9.E.n#D#s#Db.#s.N#Iaqambca#aB.y#vaO#I.Cbf#I#s#Db.#Db.#Dbj#saYawaw#D.saY#M.N#M.N#saY.s#x.s#x.s#x.s.N#s#Db.#D#Db..N.s.N#Ibo.W.CaoaxaoaxaCaC#I#x#I#I#Iaw#s#D.n#Laj#L#Lbp#L#L#L.j#ga2#g.ja2.j#g",
+"#L#g#L#g.j#ga2bp#g#L#g#L#Lbp#L#L#La2.7#L.7.Ea9.EaY#D#D#s#D#s#D#saYbl.NawaY#UbnbnawaYawbl#D#p.na9afa9.n#La9#La9#Lajaf#Lafajafajaf#L#Laf#L#L#La2.ja2#La2#L#Laf.7a9a9a9a9.na9.na9a9.7a9#s#D.n#D#s#D#s.N#sbj#D#D#s#DblaYaw#x#I.CaCamaOaF.8.8aO#vbdaO#v.d#vaO.8aObd#v.zaBa5.O#r.Q#O.Wbo.s.sb.aEbjb.bjb.a9.E.7.n#s#D#s#D#D.s.N#Ibf.W.C#v#va#aOaF.8aoam.s#D#s#D#s#D#s.saYawaYaYawblaYaw#DaYaYaYbl.N#x#xaY.saY.N#s.N#saWawaY#I#x#I#x#IaC.C.WamaCaC.W#I#I#I#x#I#I#I.s#sa9.E#L.E#Laja2bpa2a2.j#ga2#ga2#ga2",
+"aj#g.ja2#g#L#ga2#ga2#ga2bpa2#L#L#Lajaf.Eaf.7a9.7aY#s#D#D#D#Da9a9.saY.saYbn#x#xa0#I#x.NaY#M#Da9.na9aja9a9.nafajafafafajaf#Laf#Lafaj#Lajafaja2#L#La2.3#L.jaf#L.na9.7.n.7a9bja9#D.n.7#sa9.n#D#s#D#s#D#s#D#D#s#D#s#DawaY#Ibn#Ia0aoa0#v#vaOaFaObd#vax.ybc.d.8.8.8.8bd.y#1a5aX.v#1ao.W#7.saE.s#sb.#Db.#s.7.E#D#s#D#sa9#s#D#s#D#s#D.s.saFaFamaO.y#v#v.5#I#Iawbf.s#x.s#xawaYawaYblaw#DblaY#Mbl#saYaw#x#I#x.Naw.N#sbj#s#D#I.WaC.WaC.Wamao.8aoao.W#IaY.NaY.N.N.s#D.saw#s#D.n.Ea9aj#Laj#Laj#ga2#gas.j#g.j#g",
+"a2#ga2#ga2aj#L#L.ja2a2aj#L.E#Laj#pa9a9#pa9.n#pa9#M#Dbl#Dbl#MaYaYaYawaYaYawaY#UaYa0.p.VbnaYawa9#La9a9ajaf#L#Lafaj#L#L#Laj#Laj#L#Laf#L#L#L#L#La2#La2a2#La2#La2#L#L#L#L#L.Ea9.7#s#D#La9.E#D.na9.na9.n#s#D#saw.Naw#xaw#I#x#I#U.CaCaoao.VaoaoaO.8aO.8#Oaoaxao.haC#Oao.daO#uagbibk#vav.W#I#s.E.Eaj.Ea3aj.n#L.E.7.nb.#s.N.saY.N#I.N#IaY#I#I.C.8#v.yaBaPaBa#aFa#.5aqaqaN#xbfbf.N.NaY.Naw.NaYaY.Naw.NbfaYawaYaYaw#x#I#xa1#U#I#U#I#x#I.N.s#D#s#D#Dbj#sbj.E.7.Ea9.7.7#L.7.7.7.7.E.7#L.7#Lbpa2.jas#g#gas#gas",
+"a2.ja2#L.j#L#La2a2#g#L#Laf#L.7#La9#pa9a9#pa9#pa9bl#Dbl#sbl.NblawblaYblaY#xaYaY#Ubna0b##UbnaY.n.7#s#Da9.na9.n#Laf#Lajaf#Laf#Lafaj#Lajafaj#L#L#L.j#L.j#La2af#La9a9#L.7#L#La9.7a9#Da9.Ea9.n.7.n.7#s.na9#M#Daw#x.s#xawbn#I#U.CaCaCaCaobgaCaoaOaOax#vao.hao.W.W.Wav.haoax.y#E#zagapbc.Wbo.s#s.E.Ea3.E.7aja9.Ea9b.a9.EaY.Naw.Naw.Naw.N#I#x#Ia0amaF.yaBa7#u.ya#aoaqavaq#x.C#x#I.Naw.NaYaw#x#I#I#x.s#xboaYaY#I#x#I#x#IbfblaYbl.NaY#D.N.N#Dbj#sbj.Ebj.7bja9#L.E#Laj#Laj#L.E#L#L.7aj#La3ajas#g.jas.j#g.j#g",
+"a2#gas.ja2#L#Laja2#Laj#L#L#La9.7.na9a9#Da9#Da9a9#s#D#D#s#D#s#D#Dbl#sbl#D#M#DaYaYaY#Ubga0bnaY#s#D#s#Da9a9.na9ajafaj#Laj#Laj#L#Laf#L#L#Laf#L.j#L#La2a2#La2#Lafa9a9ajafaja9a9#s#D#s#Da9.n#D#sbl#s#D#M#s#D#Maw.N#I#I#I#I#x#I#IaC.CaC.paCaCaoao#O.8ao.h.W.W.W.W.W.W.W#I#Q#v.w.Obiagbk.W.r#I#sb..E.E.Eaja9.E.n.7.n#D.saY.saY.Naw.NaY.Naw.N.s#xaCaq.8aF#Sa7a7#u.yaFam.5ao.Ca0.C#x#x#x#Ibn.R#x#x#xaY#xaY#Ibn#UaC.W#xbf.sbl#s#D#sa9.Ea9.7.E.7.7#L#L#Laj#Laj#L#L#L#L#L#L#Lbpajbp#Lbpbp#Lbp#g#gas#g#gas#gas",
+"a2.ja2#La2aja2#L#L#Laf#L.Ea9aja9a9a9a9.na9a9.na9#D.n#Da9#Da9a9.na9a9#sa9#D#D#D#saY#xaCa0#U#x.N#s#D#D.na9a9.n#La9#L.n#Laf#Laf#Lajafaj#Laj#Laf#L#Lafajafafaj#L.Ea9#La9a9.n#D#D#D#D#D#s.Nbl#D#s.N#M#D#M#D.saYawaw#IaY#I#U#I#x#IaC.WaC.CaC#IaCavao.W.Wav.W.Wbo#I.W.Wbo.W#Q.y.w.Uau#3bd.8bo.s#s#sbjb.a9.E.n.7b.#sbj#s.Naw.Naw.NaY.saY#s#s#D#I#x#Ia0aoaFa#aBaBaBa##va#aoa0aoa0aoa0aC.Ca0#xaCbn#I#xaw#xa0aCa0#x.Caw.N.Na9a9a9a9.7a9.Ebj#L#Laj#L.E#L.7#L#L#Laj#L#Laj#Lajbp#L#Lbpajbpaj#Las.j#g.jas#g.j#g",
+"a2a2a2.ja2#Laf#Lajaf#Laja9a9.7a9a9.na9a9a9a9a9a9.7a9.7.n.7.7a9.7.7#L.7a9#s#D#D#D#D#Mbnbn#x#xaY.N.s#D#D#sa9a9#Laj#L#L#Laj#Laj#L#L#Laf#Lafaj#Laj#La2a2afajafafa9a9a9.na9#Da9#s#D#D#MaYblawaYawaYbl.s.Naw#D.saYawawawaw.s#I#I.C.W.W#U#I#I#x.WaC.W.W.W#I#Ibo#xbo#I#Ibo.Wavbc.y#u.G#3.Qbc.Wbfaw.s#sbj.n.7.n.7#s#D.s#D.saY.NaY.N#M.NaYb.#D#s#Daw#Ia0#UaFaOamam.5.8.yaB.8aO.5ao.5amam.8amaCa0a0#x.C#I#Iaoam#I#xaY#D.N#Da9.7.7.7a9.7.7.7aj#L#L#L#L#Lajbp#Lbp#L#Laj#L#L#L#Lajbpaj#L#Lbp#L.j#gas#gas#gas#g",
+"a2a2.j#La2#L#L#Laf#Lafa9a9a9#D#D.7#Laf#L#Lajafaj.7aj#L#L#L#Laj.7aj#Laj#Lbj.7.7b.a9#D#D#xaCa0.W.NaYaw#D#Da9.na9af#Lafajaf#Laf#Lafaj#Laj#L#L#Laf#L.3ajaf#La9aj.7a9a9a9a9a9bl#DblaY#DaY.NawaYblawaY.NaYaw.sbl#s#Maw.N.saw#x#I#I#I.C#I#x#I#I.W#Ibo#Ibo.Wbf#Ibo#Ibfbo#Ibo.W.8#Qbc.ybkbv.Q.8#I.s.s#s#sb..nbj#s.N#sbj#saY.Naw.saY.NaY.s#D#s.Nbo.N#I#I#xaCamao.Ca0b#aobyaOaF#v#vaB.y.ya#aOaF.5aCa0aC.CaCbn#xaY#D#D#D.7#D#Laj#L#Laj#L.7#L#Laj#L#Lajbp#Laj#L#gaja2bpa2bp#g.jas#gas#gas.j#gas#g#g#g.j#g.j#g",
+"a2.ja2#L.j#Lajafajafa9a9a9#Da9.n#L#L.7#L#L#L.7#Laf#L#L#Laf#Laf#L#L#L#Laj#Laj.7.7#L.n#DaY#x.W.C.C.s.NaY#s#D#Da9#s#Laj#L#Laj#Laj#Laf#Laf#Lajafaj#Laja2afajafafa9.na9#pa9#M#Dbl#DaYaYaYawaY#xaYaYaYaw.Naw#D#sbl#s#M#s#saY.s.s#x#I#I#Iawawawbo.N.s#I.s.s.sbo.N.s.s#I#I#x#Ia1.Wao#vaLbkap.yaobo.N.N.s.7#s#sbj#s#D.sbjaY.saY.Nbl.saY.N.s.N.s.N.N#I#x.sbfbf.C.WaCaqamaq.5aoa##v.0#u#u#ua##vaOaFama0#x#xaYaY#D#Da9.7#L.Eaf#Lafaj#Lbpbp#Lbpa2bp.jbpa2#L#ga2aj#g#L.jbp.j#L#g#g.j#g.j#gas#g.j#g.jas#gas#gas",
+"a2#L.ja2a2#L#L#Lafafa9.na9a9a9#D.7#L#Laj.7#L#L#L#L#Laj#L#Laj#Lajbpaj#Lbp#L.7.7bj#L.7#DaY#xa0.C.WaYaw.N#D#D#D#sa9aj#L.Eafajaf#Laf#Laj#Laj#L#L#L#L.3#L#Laf.7#La9a9a9a9#p#Dblbl.NblawaYaYaYaYawaYawaY.NaY.sbl#sa9.n#D#D#saw.s#I#I#xaw#x.saY.s.s.N.s.N.s.Naw#D.s.N.sbn#I#Iboa1#b.d.8#Tap.Qbcbo#D#sbo.nb.#D#s.Nb.#D.s.Naw.Naw.NaY.Naw.Nbf.s.N.sbfaY.N.saY.sbf.C.Waqavbga#a#a#.yaZ.0anaBbm#vaOaobn#I#xblaY#Ma9a9af#La2#L#L#Lbp#Lbpaj#L#g.ja2bpa2aj#gaja2#g#L#g#L#g#L#g.j#gas#gas#g.j#gas#gas.j#g#g.j#g",
+"as.j#g#La2aj#Laja9ajaf#L#L.n#Laf#Laj#L#L#La2#ga2#ga2a2a2#ga2a2#g#L#Lbpaj#Laj#Laj#D.s#DblaY.VaObm.C#IaYaw#D#s#D#Dbl#Ma9a9af.7aj#Lajaf#Laf#Lajafaj#Lajafaj#Laj#L#Lajafa9a9.7#sa9#DaYaYaYaYaY#xaY#x.N#s#D#s#D#s#Db..n#sbj.n#D.sbfbo.s.s.N.s.N.s.s.N#s#D#s#D.s.N#Ibf.s#Ibo#I.Wav.8bcbta5.U#3aB.5.W.N#x#I#x.saY.s.N.N.s#D#Ma9b..E.7.nbfaw.NaY#xaY#Ibf#D#s.N.N#x.Waqavb#ambga#aO.0.y.yaoaCa0#x#xaY.N#D.Ebj.7.7.7.7.7.7#ga2#ga2#ga2#g#ga2#ga2aj#g#g#L#g#g#L.jbp#Lajbp#L#g.jas.jas#gas.j#ga2#ga2#g.jas#g",
+".ja2#Laj#L#L.7.7af#Lafajaf#Laf#Lbpa2#La2#L#L#Lbp.ja2#g#ga2#ga2#g#L#L#L#L#L#L#L#L.7#D.NaYaYaobmaZamaCbn#x.NaY.N.N#Mbla9.nafajaf.7a9#Laj#Lajaf#L#Laf#L#L#Laf#Lafaja9af.7.n#Da9bja9#xawaYaYawaYaYaw#Dbl#s#D#D#s.7.n.7b..nbj#sbj.s.saw.s#D#saw#D.s#D#s#s.s.N.sbfawbf#Ibf.sbo#Iav.8bc#uaz#3bi.G#vaq.W#I#x#I#x#x#x.s#DaY#s#D#s#D#s#Db.aY.saY.N#I#I#x#x#I#x#I.C.WaqamamaFaObm#vaBaZ#va#bna0#xaYaw#D#D#Dbj.7.7.7.7.7.7.7#g.ja2#g.j#ga2bpa2a2a2#g#La2#L#g.j#g#gajbpbp#Lbp.j#gas#g#g.j#gas#g.j#g.ja2a2#ga2",
+"#L#L#L#L#L.na9.n#Lafajaf#L#L.ja2#L#Lbp#Laj#g#L#L#gbp.j#L#gaj#ga2aj#g#Lbpajbp#Laj.7#D#sblaYb#aOa7b#amaoa0aC#x.baYbl#Mbla9#D#L.na9aj#Laf#L#Laj#Laj#Lajafaj#L#Laj#Lafajaf.7a9a9#Da9#Dblblblblblblbl#D#s#D#D.n.7.E.7.E.7.7.E#s#s#D.s.N.s#Db.#D#s#D#sbj#s#D#s.N.sbfboaYbo#Ibf.Wavbcbc.wa5au.M#3.w#v.5#Ibn#I#IaY.s.N.N#saY#s#D.s#D.s.NawaYawaY#I.C#Ibn.Wa0amamao.5.8.5#uanaB.ya#aoama0awaYaY.NaY#D#D#D#L#L#Lbp#L#L#L#Laj#gbpa2bpa2.j#g.j#L.j#L.jbp#g#Las#ga2#ga2aj#L#L#g.j#g.j#ga2#g.ja2#ga2#g#Laj#Laj",
+"#D.na9#sa9#Da9#Daj#L#L#Lajaf#L#L#g.ja2#g#g#g.j#ga2a2#g#ga2#ga2bp#ga2#ga2#ga2#g#g#Lb.a9aY#UambmaZaO.t#SaFb#a0a0#UblaY#s#D.na9.7.n.7aj#Lajaf#Laf#Laf#L#Lafaj#Laf#L#Laf.7af.7.n.7#D#M#D#D#D#D#D#D#s#D#Da9#sa9.Ea9aj.7.E.E.7.7b.#sbj.s#s#D#s.N#saW#s.N#s.Nb..N.Nbo.N#xbo#x#I.Wav.8.yaz#T#3#z#z.O#uaF.CaC.C#x#I.Naw#D.sbl.saY.s.Nbo#Ibn#U#x#Ua0#Ua0aCb#am.8a##va#aBan#u#u.0aFama0#xaY.NaY#D#s#D.7.7.7#Lbpaj#Lbpajbp#Lbp#L#L#L#Lbp#L#L#L#L#Lbp#L#Lajbpas.ja2.j#ga2bp#Laja2#L#La2aja2#L#L#L#Laj#L#Laj#L",
+"a9a9a9a9a9.na9a9#Lafajaf#L#La2a2aj#g#ga2#L#g#L#g.j#g#g.j#g#g.j#ga2#gaj#ga2#ga2#g#L#L#L#s#xb#aOa#.t#SaZaBbmbga0bnawaYblbl#Da9.n.7#Laf#L#Laj#Laj#L#Lajaf#L#L#Laj#Lajafajaf#La9a9a9#D#D.na9a9.na9a9a9.na9.7a9.E#L.Eafaj.7.E.7.nbj#s#Db.#Dbj#sbj#sbj#sbj#D#s.N.s.N#x.W#xbo#xavambcbb.O.O#a#a.Oba#3aBamaoa0.W#x.s.N#saY#saY#I#x#I#x#IaCa0aoamaob#aoamaF#v#vaB.0aB.0#ua#a#.5ao#xaY.Nbl#sbl#Da9.7.n.7.7aj#L#L#L#L#La2#Laj#Laj#L#g#L#L#Laj#Laj#L#L#Lbp#L.j#g#L#L#Laj.7#L#Laj#Laj#Laj#Laj.7aja9#La9aja9a9",
+"#Da9#s#L.n#L#L#Laj#L#L#g#L.jbpa2#ga2#g.j#gas#gas#g#g#g#g.j#g#gas.j#g#g#g#g.jas#g#gaj#L#D#xaOaZan.FbmaBaZbmaFb##UaYblawaY#s#Da9.7.n#Laj#Laf#Lafajaf#L#Lajafajaf#L.3#Laf#La9aj.7a9#Ma9a9#Da9#Da9#Da9#D#La9aj.7aj#L.E#Laj.7.Ebj.nb.#s#D#sbj#s.N#s#D.s#D#sbj.N.sbf.s.C.Wa0.Wam.8.ybb#a.O.GaPaz.M#C.faOaoaq.W#xaw#D.s#D#I.N#I#xaCamaoaFaO#vaO#S.y#S#v#v#S#va#aOaFaOaFamaoa0#xaY#D#sa9#D#Da9.7.7#L#L#La2#L#g#L#g#Lajbp#L#Lbp#Laj#Laj#L#Laf#L#Laj#Lajbp#L#Laj#L.n.7a9#sa9.n.7.nbj.nbj.na9a9a9.na9#Da9a9",
+".7#L#L#L#L#Laja2#L.jbp.j#L#g#L.j#g#g#gasas.jas#g.jas.jasasas.jas#gas.jasas#gas#gasbp#L.7awam.yan.Fbm.TaZaBaFam.R#IaYawbl.N#s#D#D#Lajaf#Laj#L#L#L#Lajaf#L#L#L#Laj#L.jafajafafafaja9#Da9a9a9a9a9.n#Lajaf.E#L#Laj.7.j#Laj#L.E.7.E#D#saW#D#sbj#sbj#Db.#DaE#D.sbf#IbfaCaq.Waoao#v.y.wbkaz.w.waz#3biau#uaOamao#xboaw.N.s#x#I#xaCambgbg#uaBa7#ua7an#ubh#vaFaOama0aCa0a0a0bn#UaY#sa9af#L#sa9.7a9aj#Lbpaj#g#L.j#gaj#g#L#Laj#Laj#L#L#Lbp#L.E#L.E#L#L#L.7#L.n.7a9#D#D.N.s.Na9#s#Da9#sa9#D.n#D#D#s#D#D#s#D.7",
+"aj.7aj#gaj#gas.ja2bpa2#L#gaja2bpas.jas#gas#g.jasasasasas.jasaU.j#gas#gas#gas#gas#g.ja2#LaYa0.0aZ.Fa#aBaZa#aFbn#UaYaY.N#MaY#D#D#Daj#L#Laf#Lafajafajaf#L#Lajafaj#L.3#La2af#L.Eaf.7a9a9.n.7a9.n.7a9af#Laf#Lafaj#L#L.j#g.E#L.E.7#s.Ebj#s#sbj#D.s#Db..N#s#D.s.sbf.s#Iaqa0ao.C.8#vbbaPbk#u.w.Q.w.wau#N.Q.yavam#I#x.sawaY#I#IaCaoaoaO#vaz.Gaz.GazaS#uanaoaCa0.Wa0.CaC.CawaY#Da9a9#La9aja9a9.7aj#L#L#Lbpaja2bpa2bpa2#Laj#L#L#L#L#Laj#Laj#La9#L.7.7.E.7.E#D#D.N.s.N.s.N#x.7.7.n.7a9#sa9#D#s#D#D#D#D.7#D#D",
+"#g#g.j#g#g#g.j#g#g.j#g.j#g#g#g.j#g#gas#gas#gas#g.jasasasas#gasasas#gas.jas#g.jas#g#g#ga2a9.C#SbhaFbgamam.8amaCa0aYaYaY#Da9.E#Laja9#Laj#Laj#L#L#L#L#Lajaf#L#Laf#Laja2ajaf#Lafa9a9.na9a9a9a9.7a9a9af.n#Lajaf.7#L.E#Lbpaj#g.n.7#s.N.s#DaY.saY.Naw#x.saYbo#x#x#I#x#I.8amaob##v#u.G.2bkaz#ubbaP.w.G.2.u.Oa#aoav#Ibfboawbo#xaoamaBan.Gba#a#ua#ao.5#Qaq.W#x#x#x#I#x#xaY#xawaYbl#D#M#Da9a9a9a9a9.7a9a9a9#L#Lajaf#Lajaf#La9.n#D#saY.NaYaY.N#sbl#D#MaY#M#D#D.n#Da9#D#D#D.n#Laj#L#L.E#Laj#L.7aj#Laj#Laj#Laj",
+"#g.j#gas.j#gas.j#ga2a2#ga2.jas#gas.j#g.jas#g.jas#g#g.j#gas#gas#g.jas#gas#gasas#g#g#La2.j.7bnaF#ub#b#amb#ama0bn.CaY#M.N#sa9.na9#Lajaf#Laf#Lafajafaj#Laf#Laj#Laj#La2afafaj#L#La9.7a9.7a9.7a9a9a9.7afafafa9#L.n#L.7ajaja2.j.7.E#D.N#Daw.Naw.N#I#x#x#I#x#I#x#IaC.CaC.5bg.8aO.0.w#T.2.G#u.ybbbb#u.GaX.e#z#SaoaC.s.W.W#I#Iaoam#v#u.G#TarazbmaoamavaN.C#x#xawaY#x#IaY.saY#Daw#D#Da9a9a9#sa9.na9a9.na9.na9a9a9#sa9#Da9#sa9a9a9#D#Mbl.NawblblaY#MaYaYaYaw#D#D#s#D#D.n#D#D.n#La9ajaf#Laf#Laj#L#L#L#L#L#L#L",
+"#g#g#g#gas#g#g#ga2.j#g.j#gas#g.j#g#gasas#g.jas#g.jas#gas.jas#gasas#gas#gas#g#gasa2aj#g#La9aYa0bmbgambgama0.C#x#xawaY.N#Da9.7#L#Laf#Laj#Laj#Laf#L#Lafaj#Laf#Laf#Laja2#Lafaf#L.na9.na9a9a9.Ea9a9.7ajafajaf#L.7#L.7bp.Ebp.Eaj.7#s.Naw.Naw.Naw#x#I.N#I#x#I.C.Wa0aoamao.5ao#vaBazal#3aB#vaF.y.yaB#u.wa6#z.w.8.C.Wam.CaoamaO#v#uaz.G.GaBaFama0#xawbfa1aY.NaY.NaYaY.NaY.N#D#D#D#Da9a9a9a9.7#D.n#D.7a9a9#D#s#D#D#D#s#D#Da9.na9a9#D#Daw.N#D#s#D#D#D#s#D#D.7.7.7.7.E.7.7.7#L#Laj#L#Laj#L#L#Laj#Lajbpaj#Lbp",
+"as.jas.j#g.jas.ja2#ga2as#g.j#gas.j#g#g.jas#g#gas#g.j#g#gas#gas#gas.j#gas.jasas.j#ga2#gaj#LaY#Uamb#ama0a0aCbn#Ibn.Nblaw#Da9aja9aj#Laj#L#Laf#L#Lafaj#L#Laj#L#Laj#L.3aj.3#L#L#La9.7a9a9.7a9a9.7a9a9afa9#La9aj#L.n#L.E.7aj#L.E#D.sbfaw#M.NaY.s#x#IaY.C.W.C.W.Caqaqao.5aoaF#v#uaz#T.o#vaO.8.8bcbcaB#ualbaa5#vaoa0avaoaF#vbm#uaz#u#uaZa0am#x#M.N.N.N.N#D.Naw.N#s#D#D#D#D#sa9#Da9.n#L#L.na9a9.7a9a9.7#s#D#D#Da9#Da9#D#s#Laf.7a9.n#Da9a9#L.7#L.7aj.7#L#Laj#Laj#L#L#Laj#L.j#L#La2#La2#La2ajbp#Lbpa2#L#ga2",
+"#g#g#g#gas#g#gas.j#g.j#g#gas#ga2#gas.j#g#g.jas.j#gas#g.jas#gas#gas#gas#gas#gas#gaa.j#g#L#LbjaY#Ua0aCa0a0#xbn#xawbl.N#D#Da9.7#L#Laf#Lafaj#Laj#L#Laf#Laf#Lafajaf#L#La2#Lajaf#La9a9.n.7a9a9a9a9a9#Lafafajafaf.7#L.7#L.7#Laja9#saY#IaY.saY.saY#I#x.s.C#xaC#x.Caoaqamao.8a##v#u.Ga5azaOaOaoao.8#v.ya5ba#z.w#vao.Wam#vaB#uaB#uaZa#aF.5#xawaYbla9.E#D#sa9#sa9#D.7.7a9#s.7a9.7.7#L#L#L#L#L#Lajaf#L#Lajafa9.7.na9a9.7a9a9.7aj#L.7#L.E#Lajafajaf#Laf#Lajaf#L#L#L#Laj#L#L#L#La2aj#gaj#gaj#g#La2.jbp.jbp.jbp",
+"as.jas#g.jas.j#ga2as#gas.j#g.j#g.j#gas#ga2#g#gas#g.jas#gas#gas.j#gas#gas#gas#gas#g#ga2bp#L.na9bla0bnbn#UaYawaYaYaYbl#Da9.n.7afaj#Laj#L#L#L#Lafaj#Laj#Laj#L#L#L#L.ja2a2a2af#L.n.7a9a9a9a9.7.n.7a9afaf#Lafaj.7af.E#Laj#L.Ea9aw#x#IaY.saY.NawbfaY#x#I#x#I.C#I.C.Wa0.8am#v.0#u.G.w#uaO#v.8#Q.8bdbb.Q.K#z#u#vaFaoaBa7a7#u#SaFaoamaCbnaYaY#Da9aja9a9bj.7a9.7a9.Ea9.7.7af.7#L#Laj#L#La2ajafaf#L#Lafafafaj#Laf#Lajaf#L#La9#L#Laj#La2a2a2#ga2.j#g.ja2a2#gaj#gaj#g#La2bp.j#g.j#ga2#ga2#g#g#g.j#g#g#ga2a2#g",
+"#g#g#g.jas#g#gas.j#g.jas#gas#ga2as.j#g.j#g.jas#ga2#g#g.jas#gasasas.jas#g.jas#g.jasaa#g#Lbp.7afajbn.RaYaYaYaYaYaYbl.N#D#D.7#L#L#Laf#Lafaj#L#L#L#Laf#Laf#L#La2#L.3#La2#L#L#Lafa9a9.n.7a9.7a9a9a9.7afaf#Laf#La9aj.7.7.7aja9#saw#x#I.N#saY#I.NaY.s#I#x#I#x#I#xaC.CaoamaO.yaB.waz#uaZ.8bc.8.8#Q.y.Q.w#4#4.wa##vaB.Qaz#vaFama0#x#x.N.s.N#D#sa9.7a9.E#D.E#L.7aj.7#Laja9aj.7#L#L#La2.ja2af#Lajafajafaj#Lafafajaf#Lafajaf#L#L#La2a2.j#ga2.jas#gas#g.jas#gasa2#g.j#g.j#g#g#g#g#g.j#g.jas.ja2#gas.ja2.j#g#g",
+"as.jas#g#gas.j#ga2as#g#gas.j#g.j#g#g#ga2a2#g#g.j#g.jas#gas.jas#g#gas#gasas#gasasa2#g.jbp#LajafafaYbnaYaYblaYaY#MaY#D#sa9a9.7#L#L#Laj#L#La2afa2#L#L#Laja2#Laf#L#La2.j#L.3aj#La9.7a9a9a9a9.n.7a9a9afaj#La9aj#L.7#L#D.na9#s.naw#x#Ibl.Naw.Naw.NaY#xawaYaw#x#I#xaC#I.8aO.yan.w.G.w#vb#by.8.8bc.ybb.Qay.Y.G#u#1a5.GaBamamaobn.s#Da9.7aY#Da9.7a9.7.7#Da9aj.7af.7af.7#L.7afaj#La2a2a2.j#Laf#Laf#Laf#Laf#La2#La2#La2a2a2.7.j#La2#gaa.jasas#gas.jasasas.j#g.j#gas#gas#gas.jas.j#gas#g#gas#ga2.j#ga2#ga2a2",
+"a2#ga2.jas#gasas#gas.j#g#g#gas#g.ja2a2a2.ja2a2#ga2#ga2.jas#gas#gas#gas.j#gas#gas#g.j#ga2bp#L#Laj#L.naY.R#xaYaY#D#Dbl#D.7#saf.7.n#L#L#L#L#Laj#L#Laja9#La9aj#L#L#La2a2a2.j#L#Lajafa9#sa9.7a9a9a9.E#Lafafajafa9.na9aj.na9#s#D.N#IaY#s.sbl.s#D#s#D#s.N#I#x.W.Cavam.5.8aF.0azal#T.w.0.8#v.8byaKbbaIaP#aba#N.O.GazaB.5#xaw.N.NaY#D#D#s.7.n.7#L#La9.7a9#L.7af.E#L.E#L#L#L#L#La2#La2bpa2#L#Laj#La2#L#Laja2aja2#ga2.jbpa2as#gas#gas#gas#g.j#g.j#g#g.j#gas#ga2.j#g.j#g.j#g#ga2#g#ga2.j#ga2a2#g#ga2#g.j#g#g",
+"#g.j#g#g#g.j#gas.j#g#gas.j#g.j#ga2a2#ga2#g.ja2a2#g.jas#g#gas#gasas.j#gas#gas.j#gasasas#g.j#g#Lbp#La9#Dbl.RaYaY#D#D#Da9#D.7a9.7#L#L#Lbp#L#Lbp#L#L#L#L#L#g#La2a2#Las.ja2a2#Laf#L.7a9.7.na9a9.7a9a9af#L#La9#Lafaja9.na9.n#D.s.s#x#I.Nbl.s#D#M#DaY.saY#I#xaC.Caqao.5bgaO#uaz.G.G#u.y#x.W.8#v#v.y.0.ybabaay.f#uaB.8a0bfaYaY.N.N#D#D#Da9.7.7af.7.7af.E.7aj.7#La9#L.n#L#L.jaf#L#gaja2#L#La2#Lafaj#La2#L#g#g#L#g#L#ga2#g#gas#gas.jas#gasasas#gas#gas#g#g.j#g#gas#ga2as#g#ga2#g#L#gbpa2bp.j#L#gajbpa2bpa2",
+"a2a2#g.jas#gas#g#gas.j#g#gas#g#g.ja2a2.ja2a2a2.jas#gas#gas#g.jas#gasas#gas#gasas#g#g#ga2#g#L#La2#La9a9#DaYbl#Dbl#Da9#Da9a9.7#L#La2#g.j#g#ga2#ga2.j#ga2.j#g#g#g#ga2a2#g#La2aj#L#L.n#Da9a9.na9a9.7#Lajafajaf.7a9.naf.na9aE.N#I#Ibn.saY.Naw.NaY.saY#x#I#x.Wa0ao.5.8aoaO#u.G.Gaz#ua##IaCaCaobg#va7azaH#zaz#uaFam#x#xaw.N.N#D#D.n#D.7.E#L#L#Laj#L#L#Laf.7#L#L.E#L#L#L#L#La2#La2#L#gaja2#L#La2#L#L#La2a2#g.j#ga2#g#L.jas#g.jas#gas#gas#g#g.j#gas.j#g.j#ga2.jas.j#g.j#g.j#ga2.j#ga2#g#L#g#gaja2bp.j#L#g",
+"a2#g.jas#g#g.jas.j#gasa2#g.j#g.ja2a2#ga2#La2a2#g.jas#gas.jas#gas#gas#gas#gas#gasas.j#ga2#gaj#Lbp.j#La9a9#D#Dbl#Dbl#D.7a9.7.7af.7a2a2a2a2a2a2.ja2bpaj#Lbp#Lbpa2#L.j#g#La2#L.7#L.7a9a9a9.7a9.7a9.n#Lafaf.7afafaja9.na9.n#D#s#I#x#IaY.sawaY.saYaw.N#I#x#I.C.W.5av.5bgaOaB.G.O.G.y.5aO.8bgaFaB.Gau#N#zaz.0aFa0#x.NaY.N.N#D.n#D.7.7a9#L#La9#L.7#L.7#L.E#L#L#L#Laf.7#L#La2#L.jbpa2#La2#La2#Lajafa2#L.j#L#g#L#gaja2#g#g#gasasas#gasasas.jasasas#gas#gasa2.j#g#gas#gas#g#ga2bpa2bpaja2aj#ga2#L#g#La2bpa2",
+"a2#ga2#g.jas#g#g#gas.j#ga2a2as#ga2aja2.j#g.j#La2#g#g.j#gas#g.j#g.jas#g.jas#g.jas#gas#ga2#g#La2#L#L#g#La2a9a9#D#D#Da9#Da9.7a9#L.7a2.j#g.ja2aja2#L#L#g#ga2.j#L.j#g#La2#Laj#L#La9.7.na9.na9a9a9a9a9#L#Lajafaja9a9.naf.n#s#s.N#I#x#U#I#x#x#I#x#I#x#I#x#I#x.Wamao.5.8ao#v#u.Garaz#ua#.y.0#u#u#aau#3alaza#b##I#xaw#D#sa9#s.7a9.7a9aj#L#La2aj#L#Laf#La2#L#La9aj.7#L#Laja2#L#g#La2#L#g#Laj#L#La2#L#La2#L#ga2#ga2#g#g#L#gas#g#gas#gasasasas#g#g.jasas.j#g#gas#g.j#g.j#ga2.jbpa2bpa2bpa2bp.jbp.jbp.jbp.jbp",
+".j#g.ja2#g.j#ga2.j#ga2.j#g.j#g.ja2#ga2a2a2a2a2#g.j#gas#g.j#gas#gas#gasas#gas#gasa2.j#gaj#g#Lbp#La2#La2#L#La9#Dblbl#Da9bja9#L.7#L#L#Laf#L#L#Laf#Laj#L#L.7#L#L#L#L#L#L#L#L#La9#L.7a9#Da9a9.7a9.Ea9#Lafaf#Lafa9.na9.na9.E#D#s#x#I#I#I#I#x#I#x#I#x#I#x#I#x.WaC.5.8.8.5aBa5#a#TaPaPbk.U#3al#3#T.G.w.0aFaC#x#x.N#D#Dbj#Dbj.7.7aj#L#L#La2#L#La2#La2aj#L.7#L#L#L#L#Laf#Lbp.j#La2bpa2aja2#La2af#L#Laja2#L#g.jbpa2bpa2#g.j#gas.jasas.j#gas#gasasas#g#gas#ga2.jas#ga2#g.j#g#L#gaja2aj#gaja2bpa2#L#L#L#g#La2",
+"a2#ga2#ga2a2#g.j#ga2#ga2a2#g#g#g.j#L.j#L.j#La2a2#gas.j#gas#g.jas#g.j#g.j#g.j#gas.j#ga2a2#gaj#L#L.ja2#g.j#g#L#Dbl#Da9a9a9.7a9.7a9a9a9a9a9a9#sa9#Da9a9.na9a9a9#Laf#Laj#L.7a9.E.7a9.n.7.n#Da9a9a9a9#Lajaf.Eaf.na9.naf#Ma9.s.s#I#x#I#x#I#x#I#x#I#x#I#x#I.CaCaq.8am#vaO#u.G.Uay#3#3bv.M#C.O#u.y.5am.C#UaYaYaw.N#D.7.7.7.7aj.7#L#Laj#ga2#ga2a2.ja2a2a2ajaf.7#L.7aj.7#La2a2bpa2aja2bpa2#L#Laja2#La2#L#ga2bpa2.j#g#ga2#gas#gas#gasasas.jas#g.j#gas.j#g.j#ga2a2.ja2a2#gas.j#L#g#L#g#L#gaj#Laj#L.j#La2aj#g",
+"#g.j#g.j#g.ja2a2#ga2.j#g.j#g.j#ga2a2a2a2#g.ja2#g.j#gas.j#gas#gas#gas#gas#gas#g#ga2#g.j#L#g#La2bp#La2#gas#g#La9bl#D#Da9bja9.7.n.7a9b.#D#s#D#D#D#s#p.nbl#p.na9a9a9#L.7#L#L#La9.7.7a9#Da9.na9.n.7a9#Laf#Laf#Lafa9.na9.n.E#s.N.s#x#U#I#x#x#I#x#x#I#x#I#xaC.Wa0.8.8.8.yaB#T#4beaM.Y#T.fa7#uaOa0bf.s.N#Mbl#s#D#D.s#DaW.E#L#L#Laj#L#g#ga2a2.ja2a2a2aja2.7#Laj#Laf#L#L#L#L#ga2#L#g#La2#L#La2#L#L#L#La2aj#ga2#g#g#ga2#ga2as#gas#gas#g#gas#gasas.j#g#gas#g#g.ja2#g#g.ja2.j#L#g#L.jbp.j#La2aj#L#Lbpaj#g#L#g",
+"a2a2a2#La2a2.j#ga2.ja2a2a2a2#ga2#ga2#ga2a2a2#ga2asaa#ga2#ga2#L.j#La2#L#Lajafa2#L.ja2#ga2#La2#L#L#L#Laf#Laj#L#L#La9bl#Da9blaYaYaYblbl#DaYaYawaYaYblblblblblblbla9#Da9#D#sa9#Da9#D.na9.7a9.7a9a9.n#Laf.Eaf.Eaf.naf.na9#M#D#saY.saw.N#s#s#D#s#s#D#s.C#I#I.C#Iao.5#v#u.OaVadbi#3#1aBbdaO.W.C#IaYbf.N#D#s.7#L#L#Laj#L#Lbp#Lbpbpa2bpa2.j#g#g#Lbp#Lbp#L#L#L.7.7.E#L.7#La2a2a2.ja2#ga2.ja2#L.3a2a2#g#g#g#L#ga2#ga2#g#ga2#ga2#ga2.j#ga2#g#gas#gas#g.jas.ja2#g#L.j#L#g#g#L.ja2a2#L#L#L.7#L#L#L#La2#L#Laj#L",
+"a2a2.j#L.j#La2a2a2a2a2a2#ga2a2a2.ja2a2.ja2#ga2a2asa2asa2.j#L#g#La2#L.jaf.3#L#La2aa#ga2a2#L#Laj#Lafaj#L#L#Lbpaj#La9#D#p#Dbl#DaYaYbl#DblaYaw#xaYaYbl#Dbl#Dbl#Dbl#Da9#sa9#D.7#D.7#D.7a9a9a9a9a9.7a9.n#Laf#Laf#La9a9.n#s#D#M#DawaY#I#s#D#s#s#D#s#D#sbf#Ibf#I#Ia0bc.y.G#zad#4aXbk#v.8bgao.C#x.N#x.N.s.7bj#L.7aj#Lbp#Lajbp.j#L#gaj#g#L#gbpa2bp#L#La2#L#L#L#Laf#La9#L#L.j#ga2#ga2a2a2a2a2#La2aj#L#g#L#ga2#g#ga2#ga2#ga2#g#ga2#g#ga2bpa2as.j#g#g.j#ga2#g#L#Laj#Laj#Laj#L#gaja2ajafaj#L.Eafaj#L#Lajaf#L#L",
+"a2#La2a2a2.j#ga2.j#L.j#ga2a2#ga2#ga2#ga2#ga2a2asa2.jasa2#ga2#La2#La2#L#L#Laf.j#L.j#L.jafaj#Laf#Lafafaf.7#L#L#Lbpa9#pa9#D#Dbl.sbl#D#MblaYaYaYaYawbl#D#M#Dbl#D#Mblbja9bja9#D.n#Da9.na9.7a9.7a9.na9#Laf.Eaf.Ea9.n.n#D#M#saYaw#IaY#IaY.s#D#s#D#s#D#s#I#x#I#I.Cao.y#1#T#rbq.G#u.yaOaCamaC#xawaY.s.N.N.7aj#Lbp#Lbpa2#ga2#Lbp#L#g#L#g#L#ga2#gaja2bp#Lbp#Laj.7aj.7aja9#L#L#L#L#L#Laj#L#L#L.j#La2#ga2#g#g#L#ga2#g#g#ga2#g#ga2#g#ga2#g.j#g#gas#g.jasa2.j#gaj#L#Laj#L#Laj#La2a2a2#L#L#La9#Lajaf#Lajaf#Laj#L",
+"a2.ja2.ja2a2a2#ga2a2#ga2a2#g.ja2a2a2a2a2a2.ja2a2asas#ga2a2#L.j#La2aja2a2a2#Laf#Lafa2af#Laf#Lafajaf.E#Laj#L#Lbpa2a9.na9#Da9a9#D#Dblbl#DaYaYaYaYaY#Dbl#Dbla9#D#D#Da9#Da9#Da9bja9bja9.7a9a9.na9#Da9#D.na9a9a9a9#D#sbl#saYaw.s#x#I#I.saw.saY.s.Naw.N.s.s#IaCaoao#u.G#z.UaX#uaOaOao.W#x#IaY.N.N.N#D#D#L.7#Laj#La2#ga2#gbpa2bp.jbpa2bp.ja2#g#L#Laj#L#La9.7a9.7a9.7.7a9#L#L#Laj#L#L#La2af#La2#L#L#g#L#ga2#g#ga2#ga2#g#ga2#g#ga2bpa2bpa2#g.ja2#ga2#g.ja2#Laj#Laj#Laj#L#La2.j#Lajafaj#L.E#L#Laf#L#L#Laf#L",
+"a2bpa2#La2.j#ga2aja2a2a2.ja2#ga2#g.j#ga2#ga2#ga2a2aa#ga2#ga2bpa2#La2afaja2afa2#Lajafajafajafa9a9af#Laf#L#L#L#Lbpafa9a9a9a9a9#D#D#Dbl#DblawaYaYaY#D#Dbl#D#Dbl#D#Da9b.a9.7a9#Da9#Da9.na9.7#D.na9.na9a9#D.n#D#s#D#M.NawaY#I#x#I#Ia0#IaY#Iaw.Nawbo#x.s#x#I.WaF.yaz#3.a#4a5#v#vaoaC#IaYaY.saYaw#D#sbj#Laj#Lbp#L.j#g.jbpa2aj#g#L#g#L#g#g#L#g#L#g#Lbp#L.na9a9.na9a9.na9#Lajaf#L#L#L#Laj#Lafa2#L#g#L#g#g#L#ga2#g#ga2#ga2#ga2#ga2.j#ga2#g.jas#g.j#g.j#ga2aj#L#Laj#L#Laj#Laj#La2#L#Laf.7af#Laj#Lajafaj#L#L",
+"a2.ja2.j#L#ga2a2a2#ga2#ga2#ga2a2a2a2a2a2a2a2.ja2as.jasa2.j#La2#La2#La2a2#La2afajafafafafaf#pa9.n#Laf#L#L#L#L#g#Lafa9a9a9a9a9a9a9a9#DblaY#DaYawaY#D#M#D#D#M#Da9#Da9#Da9bja9.7#s.7a9.7a9.na9a9.7#D#s#D#s#D#Dbl#s.N#M.Naw#I#I#IaC.W#I#xbo#xbo.N#IaYbo.W.Wa0#vaz.Y#.aVapaOaO#O#I#I#xawbl.N#D#D.7a9.E#L#L#L#gaj#g#g#ga2bp#gbpa2bp.j#La2#g.j#L#La2#Lbpa9.7#D#D#s#Da9#D#L#L#L#L#L#L#L#L#L#La2#L.j#Lbpa2#ga2#g#g#L#ga2#g#g#ga2#gbp#g#L#g#g#g#ga2a2#g.ja2aj#Laj#L#Laj#Laja2#Lajafaj#Laj.7aj#Laf#L#L#Laf#L",
+"a2#La2#ga2.ja2#ga2.ja2a2a2a2#g.j#ga2#g.j#ga2#ga2#gaa#ga2#ga2aja2#L.j#La2#L.jafaf.3ajaf.n#p.n#pa9afajaf#L.7#L#L#L#L#La9a9#D.7a9#Da9a9bl#DblaYaYaY#D#D#D#D#D#D#D#Da9bja9a9.7#Da9#Da9a9a9#Da9#sa9a9#D#D#D#D#s#D#saYaw#I#x#IaC#x.WaC#I#I#x#I#x#I#I#xa1ao#Q.8.w#4.P.4#u#Sao.WaCa0bobfbl#s#D.na9#L.7#L#Lajbpa2a2#g.jasbpa2#L#g#g#L#gbp#ga2#g#Lajbp#Laja9a9#M#Dbl#D.na9.7a9.7a9.Ea9a9.7af.jaf#La2#L#L#g.j#ga2#ga2#g#L#ga2#ga2bpa2a2.j#g.j#g.j#g.ja2#g.j#Laj#Laj#L#Laj#L#Lajaf#L#Laf.7af#Laj#Lajafaj#Laj",
+"a2.j#L.j#La2#L.ja2a2#ga2#g.ja2a2a2a2a2a2a2a2a2a2asa2asa2a2a2bpa2af#La2afa2#L#Lajaf#pafafa9#p.n#p.7af#L#L#Laj#Lbpaf#La9.7a9a9bja9a9#D#Dbl#DaYaYaY#D#D#D#Da9#Da9#D#sa9a9bja9a9bja9.Ea9.7a9.Ea9a9a9#s#D#s#D#Dbl.s#Daw#x#IaC.WaCaCao.Wav#Ia1#I.Ca1#I.Cav.8aO.G#dbs#BaLaB.8aC#I.WaYbf#sbl#Da9a9.n#L.E#L#L.jbp.j#gasasa2bp.j#L#ga2bpa2#g#L#g#L#g#L#L#La9#Da9bl#s#p#Da9.7a9.E.7a9.7.7.n#Laf#L#L#gaj#L#g#ga2#g#gbp.j#ga2#g#ga2#g.jbp#gbpas#ga2#ga2#g.ja2.E#Laj#L#Laja2#Laja2aj#Laj#L.E#L.Eafajaf#L#Laf#L",
+"#L#L#L#L#La2bpa2#Laj#L#La2bpa2bp.L.L.jasaa#ga2#gaja2a2a2a2#La2#La2a2#L.j#La2afa2.3aj#p#Mbl#D#D.7ajaf#Laj#L#Lbp#Laj#Laf.n.7a9a9.7#pa9#p.NaYaYbl#Dbl#D#Da9#Da9.7a9a9a9a9afa9.7a9.7#Dbl#Dbl#D#D#D#D#xaYaYawaYaYaY#Ubn#I#I#I.Wao#v#vaC#I#x.W#Ibo.C.WavaoaZ.o.Yab#3.QaOaoaC.W#I#x.s.Nbl#sa9a9aj#La9#L#L#g#L#ga2#g#L.j#g#g#g#ga2bp#ga2.ja2#L#Laf#La9.7bl#DblblaYaYaYaYaj#L#L#L#L#L#L#L#L#L#L#L#L#L#L#La2#ga2a2a2#g#La2#La2#g#La2a2#L#L.ja2.ja2.j#L#Laj#L#L#Laj#Laj#Laj.3#Lafajaf#Lajafa9.na9a9.na9.na9",
+"#L#Laj#L#Laj#La2bp#L#gaj#L#L#Lajaa.jaaaaa2#ga2bp.3#L#L#La2#L.j#La2a2a2#La2#La2#L.3af#pblbl#Da9a9afaja2#La2#La2#L#Laf#L.7a9a9bja9a9#p#DblaYaw.Nbl#Dbl#Dbl#D#D.7a9a9afa9a9a9a9aj.7bl#D#D#sbl#Dbl#MaYawaY#xaY#xawaY#x#U#x#I.Cao.8aBaxav.W.C.Waoao.8aO#vaPay#daVbk.0#OaoaC.W#x#I.N.N#Dbl.na9a9#L.7aj#g.j#ga2bpa2#g#gasas#g.j#g#ga2#g#La2.ja2#Laja9a9a9a9bl#DaYawaYaY#La9.Eaf#L#Laj#L#L#Laj#L#L#L#L#Lbpa2#L#g#La2#g#L#gaja2#ga2#ga2#La2a2a2#La2a2.3#L.jaf.jaf.j#L.3#Laj.3aja2#Laj.3#Laja9af.n#L#Laf#L",
+"a9ajafaf#L#L#L#L#L#L#L#L#L#L#L#Laa#ga2#g.j#gbp#La2#L.ja2#La2#La2a2#La2a2a2#L.j#L.jaf.n#pbl#sa9.Eaf#Lafaj#Laj#L#Lajaf#La9a9bja9a9#Ma9bl#DaYaYbl#DaYbl#Dbl#Da9a9a9a9#p.naf.7a9.7a9.n#Da9#D#D#s#D#DaYblaY#MaY#MaYaY#MaYaw#I#IaC.8aObgaoaoao.8ambc#v#uar.M#d#4.G.y.8bgaoaC#x#I.N.N#s#pa9a9.7ajaf#L#La2bpa2.j#g#gaj#g#g#gas#ga2#g#L#La2a2#Laf#Laf#La9a9a9a9#D#Dbl.Nbl.E#L.7#L.7af.7#La9#L.7#L#L#L#L#La2#ga2#ga2#g#La2#L#ga2#L#g#L#Laj#L#Laj#Laj#Laj#Laf#L#La2afaj#Lajaf#Lajaf#Laj#Laja9afajaf#Lajafaj",
+"afaf#Lafajafajafajaf.Eaf#Laj#L#L#La2#L#L#gbpa2bp#La2#L.3#L.jafa2#La2a2#La2a2#L.3afaf#p#Mbla9a9.7afajaf#L#L#L#g#L#La9aja9a9#Da9.7#pbl#DaYaYaYbl#DaYblaY#Dbl#D#D#Dafa9afa9a9a9.7.7.7#Da9bja9#D#D#s#D#D#saYbl.NblaY#M#D.saw#I.WaOaB#vaO#v.8aOaO#v.y#3ad.Z#.#T#vav.haoaC#x#IaY.s#D#D.n#Dajaf.7#Laj#L#ga2#g#gbpa2#ga2a2as#ga2#ga2bp#La2a2a2a2a2#L#L#La9afa9#M#DblawaY#L.7af.E#Laj#L#L#Lajaf#L#L#L#L#Lbpa2#L#g#La2#gaja2#L#ga2#g#La2a2aj#L#L#L#L#Laf#L#Laj#Laj#L#Laf#Laj#L.7aj#L.Eaf.7.na9#D.n#Da9#Da9",
+"a9.na9a9a9a9#pa9a9a9a9a9a9a9a9.nafaj#L#L#L#Lbp#La2aja2#La2#La2a2#La2a2a2a2a2#La2aj#p#pbla9a9#Lajaf#Lafajafaj#L#Lajaf#La9.7.nbj#Da9blaYaY#x.N#DblaYblaY#DaY#Dbl#Da9a9a9a9.7a9.7.7a9.7.E.7.7.7.7a9#D#D#D#D#s#D#s#D.sbl#s.s#xaoaO#S.yaBaB#u#u#ubk#E#.ab#4#3.G.y.8bo#U#I#x.s.N#D#s#Da9#L.7aj#L#La2bp.jbpa2#La2#g#L#g.jas#g#ga2#Laja2#L.j#La2af#L#L#La9.7a9bj#Daw.Nbl.E#L.7#La9#L.7#L.7#L.7#L#L#L#L#La2#ga2a2#ga2#L#g#La2bpa2#La2bp#L#Laf#L#Lafaj.7ajaf#Laf#L#Laj#Laja9.na9.7afa9.Ea9a9a9a9a9a9.na9a9",
+"a9a9a9a9a9a9a9.n#paf#paf#p.n#p#pbl#D.na9a9#L#L#L#La2#La2#La2#La2a2a2a2#La2#La2afa9#p#M#pa9.nafa2afajaf#L#Lbp#L#L#Laf#La9a9#Da9a9#D#DaY#x#xaYaY#DblaYblaY#Dbl#Dblafa9afa9#Da9.7a9#L.7a9#Laf.7.n.7a9a9#s#D#D#D#D#D#s#D.s#x#I.8#Saz#u#u#uaZ.w.GbiaV#4.U#3ara5#vao.W#x#IaYaw#D#sa9a9#L.n#Laf#L#gaj#L#ga2#g.ja2#g.j#gas#gas#gaja2bp#La2a2a2a2#L#Laf#L#L#La9a9#Dbl.NaY.7#L.n#L.E#L#Lafaj#L#L#L#L#L#L#Lbpa2#L#g#L#ga2#ga2#ga2a2#gaja2#L#L#L#Laj.7#La9#L#L#Lajafaj#Laf#L.n.7a9.Ea9.Ea9.n#D#s#D#s#D#D#s#D",
+"a9.n#pa9.n#pa9#pa9.n#p.n#p#p#p.nblblbla9.na9#Laf#Lafa2aj.3#L.j#La2#La2#La2aja2#La9.nblbl#pa9#L.j#Laf#Laja2#La2aj#L#Laja9a9.7#D#s#p#DaY#x#x#xaY#DblblaYaYbl.Nbl#D#Dbl#D#Da9#Dbj#D.7#L.7#L.7af.7#L.7.na9a9.na9a9.n.NaYbobfaoaFaBazaz.w#uaP#3#4ad#4ap.O.O.O.w#S.8.5#Uaw#x.saY#s#D.n.7#L#Laja2aj#gas#L#gbp#gbpa2bpa2#gas.j#g#g#L#La2#La2#La2#L#L#L#L.7#L.7.7.E#D#s#D.na9#L.7af#L.7#L.7#La9#L#L#L#L#La2#ga2a2#ga2#L#g#La2bpa2#ga2#ga2.7a9.7#La9.7.7a9ajaf#L#Laf.7.na9#D.Ea9.7a9.7a9b.#D#D#D#D#D#D#D#D",
+".n#pa9#paf#p.n#p.n#p#p#p#p#p.n#p.b.R#Mbl#p.nafajafaja2#La2#L.3#La2a2aja2#L.3#L.ja9#pbl#Mbl.nafa2afajaf#La2#Lbp#L#Laf#La9.n#D#s#DblaYaY#xbn#xaY#DblaYblaYblaY#Dbla9bla9#D#D#D#Dbja9#La9#La9.7.7a9.7a9.7.7.7.E.7#D.N.sbf.Wam.y#uaz.Oar.Gal.Mbxadalbkbkbkbkbka7.yaF#I#IaY#s#Da9#s#Daj#Laj#L#g#L#g#g#gaja2a2a2#ga2#gas#gas#ga2#g#gaja2a2a2af#Laf#La9#Lajaf.7a9#D#s#Da9.Ea9.E#L.E#Laj#L#L#L#L#L#L#L#L#L#g#L#g#La2#ga2#ga2#ga2#L#g#La2#L#L#L.7#Laf#La9#L.E.7.7.Ea9.n.7.n.7a9.7.n.7.na9#D#D#s#D#s#D#s#D",
+"#Lafaj#L.7#L#L#Lafafajafaja9#pa9aYawaYaYawblblblafafaf#Laf#L#L#L.jaaafa2#L#Lafaf.n#F#M#pa9afaj.7#Lbp#Lbpbpaj#L.Eaf#Laj#D#D.N#D.N.naYaYbna0a0bnaY#DblaY#x#xaYaYblbl#D#Da9a9.7#L#L.7.7.7.7.7.7.E.7#Dbj#D.s.N.N#DboaY#MaY.W.8aZal#P#PaT#P#.a.ad.ObkaX.G.O#Taz#SaoaC#x#x#I.N.s#D.E.7af.7#L.E#L.Eaf#Laj#g#gbp.jbpa2aj#ga2#g#L#ga2#ga2#L#L#L#L#L#L#L#L.7#L.7a9.E#Da9#D.Ea9.7a9.7a9#La9#L.7aj#L#L#L#L#L#L#L#L#L#Lbpa2#L#L#g#L#ga2a2#ga2bpa2#La2#L#Laj#L#Laf#Laj#L.7#L.7af.7.E#L.7#L.7#L#sa9.7a9.7#L.7#L",
+".E.7.7#La9aj.7#Lafajafafafa9a9.nblbl#MaYblbl#Dblafajafaj#L.E#L#Laaa2a2aja2afajaf#p#p#pa9.naf.7#L#gaj#Lajbp.7#L.7ajafa9#D#D.NaY#xblaY#x#xama0a0aY#p#Dbl#xbnaYblaY#Dbl#Da9a9.7af.7.7.7.7.7.7.7.7.7#D#s#D.N.N.N.N.N#IaY.N#Iamanay.P.PaDaD#..M.O.G#u#u.w.GaP#u.ybgaCaC#x#IaY.N#s.7a9.7aja9#La9#L.E#L#L#ga2a2#ga2#ga2#g#L#ga2#ga2#g#g.7#L.7#L.7#L.7.7af#L#L#La9#Db.#Da9.7a9.Eaf.7a9.7#L#L#L#L#L#L#L#L#L#L#L#L#La2#L#L#ga2a2#g#L#g#La2#ga2#g#L#ga2#La2#L.7#L.7a9aja9#L.E#La9aja9#L.n#L.na9aj#Laja9aj.7",
+"#L#Lafaj#L#Laf#Lajafaf.Eaf#sa9a9a9a9#pbl.nbl.n#p.nafa9#Laf.7#L#L#L.ja2#La2af#L.n#p#Mbla9a9aja9#Laj#Lbp#L#L#L.7.7#D#D#saYaw.N#xbf#MaYaw#xbna0a0aYblaYaY#xbn#xaYaYbl#D#D#Da9#D.7#L.7.7.7.7.7.7.7bj#s.7#D#s#D.N.sbfa0#UaoaO.yan.2.g#m.AbA#4ar#u.0#u#S#vaBaB#uaB#v.5aoamaC#x#IaY.N.na9.7.E#L.7af#L#La2#g#L#g#L#gbp#ga2#ga2#g#g#ga2#g#L#L#L#L#L#L#L#L#L.E#L.7.7a9#Da9.Ea9.7a9.7.7#L#L#L.7#L#L#L#L#L#L#L#L#L#L#Lbpa2#La2bpa2a2#ga2#ga2#L#ga2a2a2#g#La2#Laj#L#L#L#L#L#La9#L.7#L.7aj.7#La9.7#La9.7#La9#L",
+"#L#L.7#L.7#L.7#Lafaf#Laf#La9a9.na9#Da9.n#Da9#D#Dafaf#Lafaja9aj#La2a2af#Laf#Laja9#p#D#p.na9.7aj#L#L#L#L#Laj.7.7b.#D#saY.NaYbf#x#x#DaYaYaY#xbna0#xaYaYaY#xaYaYaYaY#Dblbl#D#Da9.7.7a9.7.7.7.7.7a9.7af.7#D.N.s.N#x#IaF.8amaF.0#uaybe#.ba#aaz#ua##vaOaOaO#v#v.y#uaBa#b#bga0a0awaYbl#D.Ea9a9a9.E.7a9.7#Laj#L#gaja2a2a2#ga2#g#ga2#ga2#g#L#L#L#L#L#L#L#L#L#L#L#La9.Ea9.7.7.n.7.n#La9.n.7af#L#L#L#L#L#L#L#L#L#L#L#La2bp#La2#ga2#g#La2bpa2#ga2#L#g#L#ga2#g#L#L#Laf.7#L.7#L#L#Laj#L#L#Laf#L.7#L.E#L.n#L.E#L",
+"#L#Laj#L#L#Laj#L#L#Laj#L.7.7a9.7a9a9a9#Da9a9.na9.naf.Eaf#L.7#La9ajaf#Lajaf#La9a9#M#pbla9a9#L#L.7aj#Laj#Lbjbj#sbjaY.N.Naw.N.Nawbf#DblaYaYaY#xbn.CbnaYaYaYaY#xaYa0bl#D#D#Da9#D.7#L.7#La9#La9#L.7.7a9#sblaYaYbnaCa0.5amaFaB#u#a#4abarazaBa#aO.5ao.5aoaoamaOaB#u#uaZaCa0bn#xaYaY#Dbla9a9.na9a9a9#La9#La2a2#L#g#g#L#g#g#ga2#ga2#g#ga2#ga2a2#ga2a2#La2#L#L#Laf.7.7.7a9a9.7a9.7.7.7#L.7#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#g#La2bpa2#ga2a2bpa2#ga2a2#g#La2#L#L.7#Laj#L#Laj.7af.7#La9#L.7ajaf.7#L#L#L.7af#L",
+"#L.7af.7#La9#L.7a2#L#L.7#L.n.7.na9a9.na9a9a9a9a9afaf#Laf#Laf.E#Lafajafaf#La9.na9#D#p#sa9.n.7aj#L.7#L.7a9.Ea9#Da9.NawaY.N.NaY.N.N#D#D#D#MaY#x#xa0ama0#xbnaYaYbn.CaYaYaY#D#D#D#D#Da9a9a9a9.7#Da9#s#D.NaY#x.Ca0amamaFaB.f.Oau#aazan#v#vaFam.5aCav.CavaoaoamaOaB#uan.Ca0#xawaY.s#D#s#Dbja9bja9.7a9a9a2#La2#La2a2a2a2#ga2#ga2#g#ga2#ga2#ga2a2#ga2#ga2#L#L#L.7a9.7a9.7.Ea9.Ea9.7af.7af#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#La2a2#ga2#ga2#L#ga2#g#La2bpa2a2bp#L#L#L#L.7#L.7af#L#L#L#Laj#L#L#L#Laj#L#La9aj.7#L",
+"#L#L#L#Laj#L#L#Lajaf#Laja9.7.7a9.7a9a9a9a9.na9a9aja9#Laja9#L.7#Laf#Lafaja9a9#D#D.nblbla9b.#L.7.E.7.n.7.n#D#D#s#D#D#D#D#s#D#D.n#D#D#D#s#Dblawa0.Cama0a0aYaY#xa0amblaY#D.N#D#Dbj#Dbj#D#D#D#D#D#D#D.N#x#x#xbg#vbmaBbk#a#Ea7a7aZ#va#amb#ao.C.W.Cbf#IaqaoaoaoaO#SaZ#ubn#I#xaY.Na9a9.7a9a9a9a9a9a9a9a9#Lajaf#L#L#L#La2a2#g#g#ga2#ga2#ga2a2#ga2a2#ga2a2#L#L#L#L.7.Ea9.7a9.7a9#La9#L.7#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#g#L#g#La2bpa2#g#La2#ga2#ga2#ga2#L#L#Lajaf#L#L#L.E#L.7#L.7#L.7#L.7af.7aj.7af.7#L",
+".E.7.n#L.7#L.7af#L#L#L.7aj.7a9.Ea9a9a9.7a9a9.7a9afafafafaja9aj.7afaja9#La9a9#s#D#p#M#D#s#D.n.E.7a9.na9#D#sa9#D#D#D#s#D#D#Da9a9.n.N#D#D#Dbl#xa0ama0ambnaYaYbnama0aYaYaY.N#D#D#Dbj#D#D#D#D#s#D#Daw.C#I.Caobm.G#faG.yaBbh.l.taFb#.5a0a0aoa0#xbo#xboaqavaoamaC#Sa7an#I#x.N.s#Dbjaj#L.n#Da9#sa9a9a9a9#Laf#L#Laf#Laf#L#ga2#ga2#ga2#g#g#ga2#ga2#ga2a2#g#L#L#La9.7a9.7.7.7.n.7.7.7#L.7#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#La2#ga2a2#ga2#ga2a2#g#L#g#La2bpa2#L#L#L#L.7#L.7#L#Lafaj#L#Lafaj#L#L#L#La9#L.7aj#L",
+"#L#L#L#Lajafaj#Laf#Lafaf#Lafajaf#L.jafajaf#Laja9aj#Laj#L#L#L#Laj.7.7.E#Laj#L.7.7bl.NawaY.NaY.N.s#s#D#sa9bj.Ea9.Ea9.na9.n#D#s#D#Da9.n#D#D.saY.s#x.R.Rbn#x#x#xaY.NbnaYblbl.na9.7.7#D.N.N.N.Nbfbfbfavama#aSaG#z.G.0aoa0aC#xaCbn.Wbn#I#xaY#I#x#x#I#x#Ia0avao#v.0aBa7#IaYa9.7.E.7#D#Da9a9a9a9.7a9.7afa2a2a2a2a2#g#ga2#ga2#g#ga2#g#ga2#ga2#g#ga2#g#ga2a2#g#L#L#L.7a9.7.na9a9afaj#La2a2#L#Laf#L#L#La2#L#L#La2#La2#La2#La2#L#L#L#L#L#L#La2a2a2a2#g#ga2#g#La2#La2#Lajafa2.7#L.7af.7#L.7afaj#L#Lajafafaf#L",
+"#Lafajaf#L#Laf#Lajafaj#L#Laf#Laf#Laf#Lafajaf#Da9.7a9.7.7af.Eaf.7.na9a9a9.7.7.n.7awaYawaYaw.s.N#D#Da9#D.na9.7a9.7.n.7.7.7#D#D.7.7#Da9#s#D.N#x.N#x#Ua0a0bna0bn#IaYb#am#xaY.N.N.N.Nbj#D.N#I#xaqaoa0a0a#a7#fa6az.0.5bnaCbnbn#x#x#x#xaYboaYbfaw.NaY#I#x#Iao.8.5#v#u.T#I.N#sbja9bj.7bj#sa9.Ea9a9.7a9a9#L.ja2a2.j#ga2#g.j#ga2#g#ga2#ga2#g#ga2#g#ga2#g#g#ga2#L#L#La9aja9a9af.7af#L#L#L#gafa2#La2afa2#La2.3#La2#La2#La2#La2#La2a2a2a2a2#La2a2#L#g#La2bpa2bpa2#ga2#L#La2#L#L#L#L#Laj#L#L#La2a2afafaj#Lajaf",
+"#L#L#L#L#L#Laj.7af#Laf#Lajaf.Eafajaf#Lafa9a9.n#D#D.n#Da9#s#D#D#D#D#s#D#s#D#D#D#sbl#s#D.s#D#s#D#s.7aj.7#L.7aj.7#L.7af.Ea9#L.7a9.7.na9#D#D#D.NaY#xa0.Vaoamama0ambna#b#amambn#x.C.Cawbf#xa0amamaF#v#vaBazaSa7a#aq.W#x#x.s#xaw#xaw#x.N.NaY#xaY#x#I.N#I#xavam.8.yana7#U#x#D.7b..7a9#Da9a9a9a9.7a9af.7a2#La2#L#ga2#g#g#ga2#ga2#g#ga2#ga2#g#ga2#g#ga2#ga2#L#L#L#L.7a9.7a9a9a9#La2#La2a2#L#Lafa2#La2#La2#L#L#La2#La2#La2#La2#L#L#L#La2#La2a2a2a2#g#ga2#g#La2bpa2a2#Laj#L#L#L#L.7#L.7#L.7af#L#Laf#Laf#L#L",
+".7#L#Laj#L#La9#La9a9a9a9a9a9a9a9af#L#D.n#D.7#D.7#D#D.N.s.N.N.N.sbl.NblaYblaYawaY#M#D#Ma9#D.nbj.7#L#L#Laj#L#Laj#Laj#L#L#L.7a9.E.7a9a9a9#DaY.s.N#xaCb#a#aFa#amamam#vaFamam#xa0#xam.CaCamamaObma7aza7aZbm.tam.C.Cbfaw#xaYaY.NaY.NaY#DaY.s#xawbfaY#x#x#Iaqao.8aZ#ua7ao#xaw#Da9b..7#Da9#s.7a9af.7a9a9a2#La2#La2#ga2#ga2#g#g#ga2#g#ga2#g#ga2#ga2#ga2#ga2#g#L#L.E#L.7afa9afa9#Laf#L#ga2#La2#La2#La2#La2af#La2#La2#La2#La2#La2a2a2#La2#La2a2#La2#La2bp#g#L#ga2a2#g#La2#L#L#L#L#L#L#Lafaj#Lafaj#Laf#Laf#L",
+"a9a9a9a9a9a9a9.n.7a9.n.7a9a9.n#D.na9#s#D#D#D#D#D#D#D.sblaY#saY#DaY#MaY#saYblaY#D#D#s#D.7.n.7bj.E#L#Laj#La2#La2#L#L#L#L#L.n.7a9.7a9.E#D#D.NaY.N#Iamam#v.0a#aFa#a#bmbgamaCbna0aoa0amaF#vaBa7a7.l.TaFb#b#amam#x.Nbj#x.N.s.NaY.NaY.N.N.NaY#x.N#IaY#I#x#Iaoaq.8.ybhazb#bn.N.N.7a9#D#s.7a9a9a9.7a9#La9#Lajaf#L#L#Lbp#L#ga2#ga2#ga2#g#ga2#g#ga2#g#ga2#ga2#L#L#L#L.7a9.Ea9a9a9a2#L#La2#g#La2#La2#La2#La2#La2#La2#La2#La2#La2#L#La2#La2#La2a2a2#ga2#g#ga2#ga2bpa2a2#L#L#L#L#L#L#L#L.E#L.7a9a9a9a9a9a9.7a9",
+".7a9a9a9.n.7a9a9#s#Da9#Da9#D#D#D.7#D#D#DaY.Naw.Naw.NaY.NaY.NaY#s#D#D#D#D#s#D#s#D.na9a9.n.7.7.7#L#g.ja2#g.j#g.j#g.j.3aj#L.7aja9.Ea9a9a9#D.N.s#x#x.Cb#aF.yaZa#a##Sa##SaFamamaOa#aZazazaza7a7bmaFaFa0a0a0bn#IaYaY.Naw.NaYaY.N.N.Naw.NaY.Naw#x.N#x.N#x#I.Cao.5.ya7az.5aoaY.s#D.E#D#Da9.na9.7.na9a9a9#Laf#L#L#L#L#Lbpa2#g#ga2#g#ga2#ga2#ga2#g#ga2#g#ga2#g#L#L#Laf.7#La9afa9#L#L#La2a2#La2#La2#La2#La2#La2#L#L#L#La2#La2#La2#La2#La2#La2a2#L#g#L#g#L#g#La2a2bpa2#g.j#L#L#L#L.7af#L#L#La9.7a9a9.Ea9a9a9",
+"a9a9a9a9a9a9.na9#D#D#s#D#s#D#s#D#D#D.saY.s#xaY#x#D#M#D.nbl.nbl#Da9.Ea9.7a9.7a9.7#Laj#Laj#Laj#Laj#gas#gas#g#gas#ga2#L#La2af.7#L.7a9#s#D#D.NaYaYboa0a0aOa#a#a#aBbh.GaPa7az#uaS#TalbaaGa7aZaFaoambnaCa0#x#I#D#DaYaw.N.N.s.N.N#D.N.N.N.N#I.NaY.saY#I.N#I.C.8.5.ya7azaOb##x.N#Da9a9#sa9a9#D.na9.7a9.7a9a9.7#L#L.7bp#L#ga2#g#ga2#g#ga2#g#ga2#ga2#ga2#ga2#L#L#L#L.7a9.7.na9.7a2af#L#ga2#La2#La2#La2#La2#La2#L.3#La2#La2a2#La2#La2#La2#La2a2a2a2a2#g#ga2#ga2bp.ja2bpa2#L#Laj#L#Laj.7#L.7.na9a9.7a9a9.7a9",
+"afa9afa9.na9a9a9#s#D#D#D#D#D#D#D.saY.NaY.Naw.NaY.n#Da9a9a9a9a9#Daj.7#L#Laj#Laj#Laj#L#L#Laj.7bp.7as.jas.jas.jas.ja2.ja2#L#Laja9aja9a9#D#D.Naw.N#x#xa0am#va#a#bmaB#l#0.2.2.2#0ab.4arazaZa#aFa0.W.C#x#x.NaYaYaYblbl.N.N.N.Nbj#Dbj.NaY.NaY.N.NaY.NaY.NaY.Waqao.0#ua7aBaO.Waw#D.na9#Da9.na9a9a9a9a9af.7afa9.7#L.7.7bpa2#g#ga2#ga2#g#ga2#ga2#g#ga2#g#ga2#g#L#L#L.7.Eafa9afa9#L#L#La2#g#La2#La2#La2#La2#La2#L#L#L#La2#La2a2#La2#La2#La2a2#La2#L#g#L#g#L#g#La2#Lbpa2#La2#La9#L.7#Laf#L#La9.7.na9a9a9.na9",
+"#D#Ma9#Da9bl#M#DaYaYawaYblawaYaYaYawaYaYbl#D#D#s.7af.E#L.7aj.7#L#Lajbp#Lbp#L#L#L#ga2.j#g#g.j#g.j#g#g#g#g#g#g#g#g#ga2a2aj.7a9.7.7a9.na9#M#DaY.Nawbn#UaoaF#v.8am#va6a6ba#V.Z#oab.I.TbmaFaoam.C.C#I#x.s.N.N#D#D#D#DaY#DaYbl.NaY.N.s#D#M#D#D#s#D#D#s#Daw#x.CaC.5bc.yaBaZ#vam.Nbj#Db.#D#D.7a9.7#D#D.Na9a9.7a9#L#L#L#La2a2a2#ga2#ga2a2#L#L#L#L#L#L#L#L#Laf#L.na9a9#D#Da9a9a9a9#L#L#L#La2#La2#L#L#L#L#La2#La2a2a2a2#L#La2#La2#La2#La2#La2a2a2a2a2a2a2a2#L#L#L#L#L#L#L#L#L#L#L#L#L.7a9.7af#La9.7a9bja9#D",
+"bl#D#D#M#D#Dbl#D#MaYbl.saY.NblawaYaYaY#M#D#s#D#D.7#L.7#L#L#L#Laj#g#L#gaja2aj#gajas.jas#gas#g.j#gas.jas.jas.jas.ja2.j#L#Laf.E#D#Daja9a9#DaY.s#x#IaCamama##uazaz.G#.a..Z#Valarak#aaZ#Sa#ama0#U.C.CaYaY.NawaY#D#D#DaYaY.sbl.N.s.N.Na9a9a9a9#D#D#D#D#s.N.N#I.CaobybcbhaB#vaF.WaY.s.Nbl.s#D.na9#D#DaYafa9a9a9#L#L#L#L#ga2#ga2#gaaa2as#L#L#L#L#L#L#L#L#L#L#La9a9#D.7#D.na9#D#L#L#L#L#L#L#L#L#La2a2a2a2#L#La2#L#L#La2#La2#La2#La2#La2#La2a2#La2#La2#La2#L#L#L#L#L#L#L#L#Laj#L#Laja9.7.Eafaja9a9#sa9#D#D",
+"#D#M#Dbl#D#M#DblaY.NaYbl.NawaYaYaY#M#D#D#D#D.7afaja9#Lajbp#Lbpbp#Lajbp#Lbpbpa2bp#g#g#g.j#g#gas#g.j#g#g#g#g#g#g#ga2a2aj.7a9#Da9#Da9a9#s#D.s#x#I.Ca0aO#uazal.Y.A.1a.aHaGaz.Ta#bma##SaFaFbgama0.C#x.s.NaY.N.N#s#D#Dblbl#Dbl#D#D#D#D#Da9#D#D.7.E.7a9#D.saY#x.Wa0.8.5#S#uaB#S.5.C#x#x.NaYbl#Da9#D#D.Na9a9.7a9#L#L#L#La2asa2aaa2#ga2a2#L#L#L#L#L#L#L#La2af#L#La9.7a9#Da9a9.7#La9#L#L#L#L.3#La2#L#L#La2#Lafa2#La2a2#La2#La2#La2#La2#La2a2a2a2a2a2a2a2a2#L#L#L#L#L#L#L#L#La2.7#L#L.7af.7a9a9a9bja9#D#D#D",
+"aYaYaYawaYaYaY.saY#M.NawblaY#Daw#Dbl#D#s#D#La9.7#L#L#L#L#L#L#Lbpa2bpa2aj#ga2bpa2as.j#gas.j#g.j#g#gbp.j#L#gaja2bp.j#Laf#L.7#s.N#sbjb..N#Ibf.Waq.8#vaz#zaHbs.m.B.BauaSa#aFaFbgama0ambga#aFamam.W.CaYaY.NawaY#D#D#D#sbl#D#D#D#D.Nb.a9a9.n.7#La9.7b.#Da9.s.Nbo.C.Cava#aZaBaBaOaOb#ao#x#IaY#D.n#Da9#Da9a9a9#L#L#L#L#La2a2#ga2#ga2#ga2bpa2#ga2a2#ga2a2#La2af#L.7a9a9.7a9a9#D#L#L#L#L#Laf#L#L#La2a2a2#La2#La2#La2#La2#La2#La2#La2#La2#La2#La2#La2#La2#L#L#L#L#L#L#L#L#L#L#Laf#L#La9.7.7a9.7a9#D#D#s#D#D",
+"aYboaY#x#x#I#x#x#I#xaYawaY.NaYaY#D#M#Da9.7.7aj#L#L.E#L#Lbp#L#L#Lajbp#Lbp#Lajbpaj#gas#g#gas#gas.j#L#Lbp#Laj#gbp#L#Laj.7a9.7#Dbj.N.N.sbo.Caq.8#v#u#3adbe.A#Y#9.PbranaBb#amamaYaYaYa0am#vbmaOb#.C#x.s.N.NaY.N#Da9#D#pa9.na9#Da9.7a9.7a9.7a9.7.7.7.7a9#D#D.N.N#xbo.Cb#aOaF#vbma##vbmamam#xbl#D#D#D#Da9a9.7#Laf#L#L#L#g#La2bpa2#L#ga2a2bp#Lbp#L#Lbpa2#L#L#La9a9.7a9.7a9af.7af.7#L#L#La2#La2a2#L#La2a2#La2#La2#La2#L#La2#La2#La2#La2#La2a2a2a2a2a2a2a2#L#L#L#L#L#L#Laj#Laj#L.7aja9#L.na9#D#s#D#D#D.N.N",
+"#x#x#x#I#x#x#IbnaYaY#IaYaY#MaY#M#D#D#Da9.7#L#L#L#L#L#L#L#Lbp.E#Lbpa2bp.j#L#g#L#g.j#gas.j#g.j#g#g#Lbpajbp#Lbp#Laj#L#Laj.7.n.N.N.sbf.C.Caoa#.w.ObB.u#.#oa8aMabalanaBa#a#a0#xaYaYaY.Wamb##Sa#b#a0.C#xaY.NaY.s#D#D#D.nbla9a9#D.n.7a9#L#L#L#Laj#L#L.7.E.7b.a9.s.N.N.s.Camam.8aF#vaZ#uaFb##xaYaY#D#D#sa9a9a9.7#L#L#L#La2a2#ga2#ga2a2#g#L#L#L#L#L#L#L#L#La2af.7a9a9.7a9a9a9#D#L#L#L#L#La2#La2#La2#La2a2a2a2a2#La2#L.3#L#La2#La2#La2#La2a2#La2#La2#La2#L#L#L#L#L#L#L.7#L#Laf#L#L#L.7a9.7bja9#D#s#D.N.saY",
+".CaC.Ca0.Ca0#x.CawaYaY.Nbl.N#D#D#Da9.E.7aj#Lbp#L#L.7#Laj#L#Lbp#Lajbpaj#Lbpaj#Lbp#gas.j#gas#gas.jbpaj.7#Lajbp#Lbp#La9a9#D.N.s.N#x.WaqaO#ubk#zaHbA#Pbsbeab#a#ua#ambm.Fa0bn#xaY.N.s.Nbnb#bmaBa#aC.Caw.NaY.NaY#D#D#D#pa9a9a9a9.7a9#Laj.7#L#L#L#L#L#Lbja9bjbj#D.7.N.Nbo.C.Ca0a##vana7an#Sa0aYawbl#D#Da9a9.7af#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#Laf#La9.n.7#Da9.7afa9#L.7a2#L#g#La2#La2#La2#L#L#La2a2#La2#La2#La2#La2#La2#La2#La2a2a2a2a2a2a2#L#L#L#L#L#Laj#Lafaj#L#L.Eaf.7#La9#s#D#DaY.NawaY#x",
+".C#xa0#x.W#x#x#x#DaY#Dbl.sblaY.Na9#D#L.7#L#L#Laj#Laj#L#Lbp#L.7#Lbpa2#L#g#L#g#L#g.j#gas#g#g.j#g.jbp.7#La3#La3aj.7.7aj.7#s.N.N#Ibf.8aF.y#3ad.A.MaT.P#V#P#Tan.5.C#Ia0b#bga0#xbf#xbf.N#xa0bm.T#Sao#x#x.NaY#s.N#D#D#D#p.nafa9.na9#L.7#L#L#L#Lbpaja3#L.Ebj.E.7#sbj#sbjbf.s#xavama#aBana7aZbgbnaY#D#D.7.na9a9.7#L#L#L#L#L#L#L#Lbp#L#L#L#L#L#L#L#L#L#L#La2a2#L.7a9a9a9.7a9a9a9#L#L#L#g#La2#La2#La2#La2a2#La2#La2#La2#La2#La2#La2#La2#La2a2#La2#La2#La2a2#L#L#L#L#L.7#L.7afaj#L#L#L.7a9#LaY.Naw.Naw#x#x#I",
+"aY.saY.NaY#DaY.N.na9.na9a9a9a9aja9a9a9a9.7a9.7a9#Laf#L#Laj#L#gaj#Lajbpaj#Lajbpaj#Lafaj#L#L.7.Ea3#L.Ebj#D.s.N#Db..7.7.N.N.WamamaOakaybs#Y.maDbaaHaga7#SamamaC.C.CaYamb#aFb##xaY#D.n.Nawa0#vaZaZa##xaw.N#Daf.na9#s#Da9a9a9.7af#Laf#La2#g#g#L#Lbp#L#L#L#L#L#L.7.7.7.7bj.N.Caoam#vaZaz.fanama0aY#Ma9aY#D#Da9a9.7.7#D#L#La2#La2#L#L#La2a2a2a2a2a2a2a2.7afa9a9#D.7#D.7af#L#L#L#La2#ga2a2a2a2a2#ga2#ga2a2a2a2a2a2a2a2a2#La2#La2#L#L#L#La2#La2#La2a2a2#La2#L#Lafa9a9a9bja9#D#D#DaY.s.N#x#Ibn#x#x#x#x#U#x",
+"aY.Naw#D#D#s#D#Da9a9a9a9a9afa9a9a9a9.Ea9a9.na9a9afajaf#La2#L#L#Lbp.7bp.7bp.7bp.7a2a2#Laj.7.E.7.E#L.E#D.s.N.Nbjbj.N.s.N#xa0aO#u#E#V#2....#KaD.YaGa7bmaFaFaoama0.CbnaCb#aOama0.N#D#Dbl#xa0bmaB#ua##x#xaY#sa9.7a9.7#D#D.7a9a9aj#L#L.j#La2bpa2#Lbp.E#Laj#L.E#L.7b.#Db.#D.s#xa0.8a##v.6azbhaOam#xaYbl#Dbl#Da9#Da9.7.7#La2#La2a2a2a2#La2a2a2a2a2a2#La2#L#L#L#D.7a9#Da9#L.3afa2#La2bpa2bp#g#L#g#La2#L#g#La2#La2#La2#La2a2#La2#La2a2a2#La2a2a2aja2#L#La2#Lafaj#La9.E#Da9#s#D#Daw.NaY#IaYaYaYawaYawaYaYaY",
+"a9a9a9a9.na9a9.na9.na9.na9.na9a9a9.7a9a9.7a9.7a9#L#L#L#L#Laj#L#Laj#Laj#Laj#Laj#L.jbp#L#L.E#L.Ea3.n#D.Nbf.Cbo.Caobf.CamaOaBaz#EaraQ#.#o.Abzay.Gana#aFaFaOamam.C.Wbna0a0b#ama0#I.N#D#M#x.CaoaZbhaBa0#IaY#Da9#s.7a9#sa9#Da9a9#Laf#L#L#ga2#g#L#Lbpbp#L#L#L#L#L.7.7.7.7#D.NaY.Cambga#a7.6#ua#b#aoa0#xbl#D#Da9.7a9#Laf#L#La2#La2a2a2a2#L#L#L#L#La2#La2.7afa9a9#D.7#D.7afaf#L#La2#L#L#ga2a2#ga2#ga2#ga2a2a2a2a2a2a2a2a2#La2#La2#L#La2#L#L#Laf#L#Lafajaf#L#Lafa9a9a9#Db.#D#DaY#DaY.N.N.N.s#D.N#D.N#D#s#D",
+"aj.7aj.7.7.7.7.7#Da9#Da9a9a9a9.7a9#Da9#s#D#D.n#Da9a9.na9.7.7bj.7bp#L#L#L#L#L#L#Laj#Laj.E.Ebjb..N#MawaCaoaoama0.Cb##va7#a.Oaz#uaZaZanaz#e.6anaZaFaBaOaF.5amama0a0#xaCa0ama0a0#xaYbl.NaY#xa0#vaZ.lama0#x#Mbl#D.7#D#Dbja9.Ea9af#L#La2#L#La2bp.j#Lbp#Laj#Lbpaj.7bj.7#s#D.s#x.Wa0amamanaB.0a##va#bgamaYaY#Da9a9a9#L#L#L#Laf#L#L#L.7#La2a2#La2#L#La2#L#L#L.7a9.7a9#Da9#L.3#La2#L#L#La2bpa2#g#La2bpa2bpa2#La2#La2#La2#La2#La2#La2a2#La2.3#L#La2#Laf#L#Lafaja9a9.7#s#D#D#Da9.s.N.s.Naw#Dbj.7b..7b..7bjbj",
+"#L#Laf#Lajafaj#Laf.7.7.7.7.7a9.Ea9bja9#D.7a9bja9a9.7a9.7a9.7.Ebjaj#Laj.7.E.E.7.E.7.E#D.s#xbo.C.WaCamb#a#.y.0.yaB.Gazazazbhbma#aFaFa#a#aZaBa#.5.5#SaFambgama0amam#x#xbna0a0aCa0#xaYawaY#Ia0aO.lbh#vb#bnaY#s#D#s#D#Da9#Da9.7ajaf#Laja2bp#g#L#Lbp#Lajbp#L#L#Lbj.7.7#Da9#DaY#x.CaCam.5a#aOa#a##va#a##xawaY#Da9.7#L#L.7af.7#La9#Laf#L.7af#Laf#L#Laf#Laf.7a9.7a9a9#D#Daf#L#La2#L#L#L#La2a2a2#ga2a2#ga2a2a2a2a2a2a2a2a2#La2#La2#L#L#L#L#Laf#Lafa9a9a9a9a9a9a9bj#D#D#D#D#D#D#Da9#Da9#D#s#L.7#L.7#L.E#L#L",
+"#Laj#Laj#L#L#L#L.7.n#La9aja9#L.7a9#s.7#Da9#Da9bj.n#Da9.7.E#Dbj#D#D#D#Da9#Da9#Da9.N#I#x.Wam.8.5#va#aBaP.G#a.U#4.Uaza7aZa#aFaFbmb#a#b#aFa#.8ama0ama0a0a0a0a0aC.Ca0#I#x#xa0b#a0a0a0aYaY.N.N#Iambm.lbmaFaobnaYaY#Dbj#D#s.7a9a9af#L#L#La2aj#ga2bp#Lbp#L#L#Lbp#L.7.E.7#D#D#D.saY#x.C.CaC.5am#v.5a#.0#va0bn#x.N#D#D.7.7a9.7a9.7a9.7.7a9#L#L#L.7af.7#L.7#L#L.7a9a9bja9#Da2afa2#La2#L#L#L#L#g#L#g#L#g#La2#La2#La2#La2#La2a2#L#L#La2afa2af#L#L#L.7a9.Ea9.7.n.7#Da9#s#D#D.N.N.sbj#sbjb..7bj#Laj#Laj#L#L.7#L",
+"bjbj.7bj.7.E.7.7.7.7a9.7a9.7a9.7#D#D#D#D#s#D#D#D#D#D#D#D#D.N.s.N.sbfbobf#Ibf#xboa0.8.5#v.yan.w.G#TabaMa8#cabalaZa#aFa#b#b#a0b#b#ama0aoa0a0#x#x.CawaYaY#Ubn#xaYaY#x#x#x.Rbna0a0amaYaY#D#DaY#UaF#GaZ#S.V#UaY.s#Dbj#s#Da9.n.7#La2af#L#La2#g#gajbp#L#Lbp#L#L#L.7bj.7a9#s#Dbl.N#x#x#x#x.C.Cam#va#a#.0aF.8a0#x#x#D#D#Da9#D.7#Da9a9.7.7#Laf#L#L#L#Laf#Laf.7a9a9.7a9#D#Daf#La2#La2#L#L#L#ga2#ga2a2#ga2bpa2a2a2a2a2a2a2a2#Lafa2#L#L#L#L#Laf#La9a9#La9a9a9a9#D.7#D#D#D#D#D.s.Nbja9.7.7a9.E#L.7.7.7.7aj.7aj",
+".7a9b..7.7bjbj#D.Eaf.7#L.7af.E#L#D#D#D#D#D#D#s#D#D#s#Dbj#D.s.N.N.C#x.C.C.C.W.C.Wby#vaBaz#T#4aH#..ga8bsbr.2al#TaZaFaFb#b#ama0a0a0.Cama0#xaY#x#x#xaYbl.NaYaYaYblaYbf#x#x#xbna0a0aobn#xaw#D.sa0.t#SbmbmaOa0#U.N#D#D#D#D#Da9a9#Laf#L#L#La2#L#g#L#Lbpa2ajbp#Laj.7.7.7#Dbl#DaY.N.N#Ibf.Naw.Cao.5.5a#a##va#ama0bf#D.N.N.7#Da9#D.7a9.7a9#L.7#La9#La9#L.7#L#La9.7a9bja9#Da2af#La2#L#L#L#L#g#La2bpa2bpa2#La2a2#La2#La2#La2#L#L#Laf#L.3#Laf.7a9af.7a9a9.7a9.7#D.n#D#D#D#D#Dbjbj#Dbj#s.7.E#La9.n.7.na9.7a9.7",
+"#Laj#Lafajafaj#La9#D#s#D#D#D#DaYaYaYawaYaY.NaY.N.C.C#x#IaYaY#M.namav.8.5#v.0.w.G#aau#4#4#z#3.Ga7#Z#0aM.gaTayaZa0a0a0a0#xbn#x#U#xawblawaY#D#M#D#D#D#Da9#D#sblaY#Mbl#Mblbl#DaYaYaYa0#IaY.N.NaY#Ua0.t.tbm.Fam#x.Nb.#Da9a9.7af#L#La2aj#L#L#L#L#Laj#L.7#L#L#L.7#L.7af.7.7a9.7.n#D#D.NawaYaY#x.CaCamao.0a#aB.0.taFb#.VaY#Da9a9af.7#D.N#Laf#L#L#L#L#Lafa9a9a9a9a9.7.7.7a2#La2a2a2a2a2a2a2a2a2a2a2a2a2a2#g#L#ga2a2#ga2a2a2a2a2a2#L#Laf.7#pa9a9a9#Dbj#D.N.na9a9a9b.#D#D#D#D#s#D#D#D#s#D#D.n.7#L#L#Laj#L.7",
+"aja2afaj#L.7.7#L#sa9#D#D#s#D#D.N#D#D#D.N.N.N.N#DaY.N#x#xaCamb#aF#SaZanaz.Galba.4.O#aaz#uaB.0aBan#Tbz.mab.2az.5#xa0bnaYaYaYaYaYaY#DaY.NaYbl#D#D#D#D.n#D#Dbl#Dbl.Na9bl#Dbl#DawaYaYbnaYaY#D.s.N#xaCbm.Fbm.tb#aC.N.Nbl.na9a9aj#L#L#L.7#L.7#L.E#L.7#L#L#L#L#L#L#Laj#La9aj.7.7.7#D.N#D#Dbl.N#xbn.Ca0ama##va##v#vbm#vaF#x#x#Da9a9#D#D#D#L#La9#L.7af.7#L#pa9afa9.7#D#La9#La2a2#La2#La2#La2#La2#La2#La2#La2#ga2a2bpa2bpa2a2a2a2a2a2#La9afa9.na9a9#D#D#Dbja9.nbj#D#D.NaY.saY.Nbl.sblaYaY.Na9.7#Laj.7.7#L.7",
+"#Laj#L#Laja9.E.7#La9.Ea9#D#D#s#Db.#D#D.Nbo.Caqaq.bbnbga#aZaS.G#q#t.HaQauaGar#a#a#vaOaF.5b#.8#vaB.2.A.1aDaka#amaYaYaYaYaYaYaY#D#D#D#D#s#D#D#D#D#D.7.7a9#D#D#D#Dbla9a9.n#D#D#D#Dblaw#xaw.N#DaYaYbnb#aF.taOb#.C#I.Na9a9.7a9a9#L.7#L#L#L#L#Laf#L#L#L.n#L#L#L#L#L#L#L#La9a9.7a9.Ebj#D#D#D.s.N#x#x.W.Ca0amamaFa##vbmaBb#bnaY#D#D#Da9bjaf#L#L#Laf#L#L#La9a9a9a9a9a9.7.7a2af#L#L#L#L#L#L#L#La2#La2#L#L#L#L#L#L#L#L#L#L#La2#L#Laf#La9.7a9a9afa9a9bj#s#D.Nbl.NblaY.NaY#xaYawaYawaYbl.sbl#M.7.E#L.7#L.Ea3.E",
+".7.7.E.7.Ebj.7.7.n.7a9.7#s.N.N#DaY.N#x.Cam.5a#aZaF#SaZa7arala6ay#W#W#kbhbmaFa#.5#x#x.CaCaoamaOaB#P#obsba#uam.C.NaYaYaY#D#D#D#D#Da9#Da9#D.7#Da9a9#La9.7.7a9bl#s#Da9a9a9bla9bl#D#DaY.NaYawaYaY#IaYa0aCb#.Va0a0#U.N#D#Da9.7a9.7aj#L#L#L#Laj.7#L#L#L#L#L#L#L#L#L#L.7#L#L.E#La9.7.7.7#D#D#DaY.s#x.C.C#x#Ia0aCama#a#aZa#.8a0#xaY#Da9af.7#Da9#D.7#Da9#Dafa9afa9.7a9#La9#L#L.3#L.3#L.3#L.3#Laf#L#L#L.3#L#L#L#L#L#L#L#L#L#L#L#L#La9.7a9a9a9#D.na9bl#DaY#s#x#x#x#Ia0#I#x#xawaYblaw.NaYaYaY.7#D.7.Ebja3.7.7",
+"#Db.#D#D#s.N.s.NaY.Naw.N.NaYbo#xa0b#a#bmaS#aa6.Kbaba#a.faZaFb#amb#b#ama0.C#xbf#xbobf.NaY#xao#v#u.q.qaGanamaYaY#DaY#sbl#Da9.7#L.7.7.E.7a9.E#L.7.E#L#L#La9.nbjbl#Da9a9.7a9.7#D#D#DblaY#xaYaY#IaYaY#xbna0bnbna0aCbn#sbl#Da9.7af.7a9#L#L.7#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#La9.7af.7a9aj.7#D#D.N.Nbo#x.Nbl#Ia0am.5aO.0aB.0b#.CaYbla9a9a9.7a9.7a9.7a9a9a9#pa9a9a9bj.7.7#L#L#L#L#L#L#L#L#L#L#Laf#L#L#L#L#L#L#L#L#L.7#La9#Lafa9bja9#D#D#D#Dbl#DaYaYaYaYaY.C#xama0.CaC.C.C#x#xboaYaY.NaY.N#s.N#D.N.s.NaEaW",
+".N.N.s.N.Nbf#xbfaCa0a0a0a0amam.8aZbhazaGau#j.e.e.6ana#.5ambn#xaY#I#x#xbo.N.N#saW#x#Ibfaw#x.5aZ.G.q.KaBam#xaY.s#D.7#Da9.7.E#L#L#L#Laf#L#L#L#L#L#L#Laj#L#L.7#Da9#Da9.7a9#D#D#Da9#D#DawaY#IbnaYaY.Naw#xbnbnbna0bna0aY#D#D#Da9.7#L.7#L#L#L#La9#L#L#L#L#L#L#L#L#L#L#Laj#L#L#L.n.7.7.7#La9.E.7#D.N.N.N#saY.N#x.Wa0.5aF.0aZ#v.5a0aY#Da9.7#Da9bja9#D.7#Dafa9afa9.7a9#La9#La9#La9#La9#La9#La9#L.7a9af.7af.7#L.7.7#L.7af.7.7a9.7#D#D#D#D.N.saYaY#x#I#xbnbnaOaoaoamaCa0a0bn#Ibn#x#x#x#x#I#x#xaYboaY.N#xbf#x",
+"#x#xa0.CaCa0aoa0aFa##v#vaZ#uaZaZarazazanbmaF.5a0.C#x#x.N#D#D#D#D#D#D.Nblbj#D.N.sbf#x#I.CbgaBaz.2baazaF#x.n.7#Dbla9.7.7#L#L#Lajbp#L#L.E#La9#L.7#L#Lbp#L#L.7#L#D.E#L#L.E.7.7.7.7#Dbj.N#xbna0#I.N#DaYawbna0bnbn.V#U#D#D#D#D#D.7a9.7#Laja9#Laj#L#L#L#L#L#L#L#L#L#L#L#La2#L#L#L#Laf.7#L#L#La9.7#s.N.N.7#D.N.N#x.CaCaq#vaZaBa#aF#xaYbl#D#D#D#D#D#D#D#Da9a9a9a9a9a9.7.7#L#La9.7a9a9#L#L#La9a9a9.7a9.7#L.7af.7af.7a9.7.7#D#D#D#D#D.N.NaY#x#x.Ca0b#ambgamaOb#aCa0.C#I#xaYa0a0#xbn#x#xbna0aCa0a0a0ao.CaCaq",
+"aoa0aoaO.5.8aFaO#u#uaSazaG#3araza#a#amam.C#x.s.Nafaf#La9bjaWbfbf.N.NaY#xawaYaYaY#x.C#xaCamaB#aaT.GaF.C#D#La9#L#D.7#Laj#L#Lbpbp#Lajaf#L#La2#L.j#Lbp#L#Lbpa9.7#Da9.7#La9#La9.7a9.7#Dbl#xaCbn#xaY.s#D.N#Ubnbnbnbna0bl#D#D.7a9.7#L.7a9#L#L#L#L#L#L#L#L#L#L.7#L#L#L#L#L#Laj#L.7#L#L.7a2.7#L.7.7#D.N.Nbj#D.s.N.N#I.Ca0aFaZaBaZ#vam#xaY.7#Da9#D.7#Da9#Dafa9afa9.7a9.7a9#L#Lafa9#La9#L#La9af.7a9a9a9afa9a9#L.7.7a9#L.7af#D#D#D.N.N.NaY.s#xama0.8aF#Sa##va0a0a0#xbnaYaYawbn.WbnaCbnaCa0aCaFb#aO.5aOaF.8aF",
+"aZ.ya#amaoaFaB.Taka6aGaraBaFa0#xbnaYaYaw#D#Da9#D#L.Eaf.7a9aj.7.7aja9.n.7#D#D.sbfaw.N.Wam#v.w.Ga7.C#IaY#D#s.7.n#Laja2#L#ga2#ga2#g#L#Lajafaj#L#L#Laj#L#L.na9a9.na9a9a9.na9a9#L.Ea9a9#saYaY#x.C#x#xaYbn#x#U#x#xa0aCbn#D.7#L.7a9a9#paj#L#L#L#L#L#L#L#L#L#L#L#g#L#L#L#L#L#L#L#L#L#L#Laj#Laf.Ea9.7.7a9#Da9#D#D#DaY.NawaY.pa#.0.0a#ambn.N.N#D#D#D#D#D.7a9af#L#L.7#L#L#L#L#L#La9a9.7a9#Da9a9#Da9bja9bj#D#D#D#D#D#D#D#D#D#s#D.saY#xbn.8aFaZaBaZa#aFama0aqaC#x.N#MaY#x.Ca0aFb#b#amamb#.5aFaoaOaFaOa#bmaZ.y",
+"aZa#aOa##v#vaB.T#4#z#a#uaFa0aC#xaYawaYbl#Da9#Da9.7a9.7#L.7a9.7a9af.Ea9.7#s.N.N.N#D#Ia0.8a#bkaraZ#IaY.s#D#Da9.7#Lbpa2bpa2#g.j#ga2ajaf#L#L#Laja2#Laf.7#L.7a9.7#Da9afa9a9a9a9.7a9#La9#Dbl#x#x#I#x#xawaY#U#xbn#Ia0.CbgaYa9#L#L#Lafa9#Laj#Lbp#Lbp#Lbp#Lbp#L#ga2#g#La2#L#L#Laj#Lbpaj#L#L.7#La9.7.7a9.7.E#D#D#D#D.saY.N#Ua0#va##S.0aOamaY.N#D#D#Da9#D#Dafa9a9af#L#L#L.7af#Laf#La9#Da9.7a9a9.7#D#D#D#D#Da9bja9a9#D#D#s#D.N.N#x.Ca0aoaF#vaZbmbmaOa0.W.C#x.C#xbl.NawaY.CamaCamaCamamambgamb#.5aOa##Sa#.yaZ",
+"#vaFaO#v.ybmaZazbaauazb#a0#x#xaYaYaY#D#sa9#D.E.7aj#L.7aja9aj#L.7aja9.n.7#D#D.sbfaY.WaCam#u#3a7aFaYaY#D#D.n.7ajafaj#gaj#g#L#g#Laj#L#Lajaf#Laf#Laj#L#L#La9a9#Da9a9.na9a9.7.n.7.7a9.na9aY#x#x#x#x#xaYaY#x.R#IbnbnaC.t.VaYa9.7aj#L#L#Lbp#L#Laj#La2#L.j#La2#g#g#g#gajbp#Lbp#L#L#L#Lbp#L#L#L.7a9.7.7.7a9#D#s#D#DaY.NaYaYa0ama#a#.yb#a0.N.N#D#Dbj#D#Da9a9a9.7a9bja9.7.7a9a9a9#D.7#D#D#D#D#Da9#Da9#D#D#Da9a9.n#D#DblaYaY.8b#.8aOaFaOaFaOb#bgama0#x#x#x.N#U#x#I#x#x#xaoama0bna0bnaoam.5amaOaFaFaF#va##vaZ",
+"aOaOaF#va#a#az#faS#ubmb#a0#xaY#Dbl.n#Da9a9.7#L#L#L#L#L#L#L#Laj#L#L.Ea9a9#s.N.N.s#x.Wb##v#Ebk#va0aw#D#D#Da9#L#L#Lbpa2#L#ga2#ga2#g#Laf#L#L#Laj#Laf#L.7#L.n.7#D.na9a9a9a9a9a9.7a9#La9#sbl.NaY#xaYaYblaYaw#x#x#x.C.C.Fb#bnbl#Da9.E#L#Laj#L#Lbp#Lbp#Lbp#Lbp#L#g#L#g#L#Laj#Lbp#Lbp#L#L.7#L.n#L#L.7af.7#Da9#D#D#D.NaY.saY#Ibn.5a#a#aFambf#x.NaY#D#D#D#Da9a9a9.7a9.7.7#L#D.nbj#D#D#D#D.Na9b.bl#Daw#xaYaYaYaYaY#Ia0a0aoam#uanaBa##vb#bgb#bnbnaYaYaYaYblaw#x#x#x#Ua0.Wa0a0.W.C.Wama0ambg.5aFaFa##va#a##va#",
+"b#ao#vbmaB#uaz.Gb#b#ama0#xaw.N#D#Da9a9a9.E#L#Laj#L#Laj#L#L#L#L#L.Ea9.n#D#D.N.N#x#Iao.5#u.Oazam.C#Dbl#sa9ajaf#La2.jbp.j#L#gajbpaj#Laj#Lajaf#L#Laj#L.n#La9a9a9a9#D.na9a9.Ea9.n.7a9a9#DaYaw#x.sbl#D#sblaYbl#I#x#Ua0b#bgb#bn#D#D.7#Lbj.7.7.7.7.E.7.7#L.j#La2#g#L#La2bp#L#Laj#L#Laj#L#L#L#L.7af.7.7.7a9.7#D#D#s.Nbl.NaYaY.CaCby#va#.8#xbfaY.N.s#D#Dbj#D#D#D#D#D#D#D#D#D#D#D#D.Naw.NaY#D.NaYaw#x#xa0aoamamaFaF#v.0bbanaBaZ#vaFb#am#x#xaYaYaYaY#IaY#D#D#x#x.Ca0avamama0.C#x.Ca0aoamaFa##uaZaBaZ.y#S.0.y",
+".8aOa##Sazar#ua#a0am#x#x#x.N#D.7.na9#L#L#Laj#Lbp#L#Lbp#L#Laj#Laj#La9.7.n#D.sbo#x.Wao#v.f#f.ya0bf#M#D#Da9a9#L.ja2#La2bp.j#L#ga2a2#Laf#Laf#Laj#Laf#L.7aj#Da9b.bl#Da9.na9a9a9a9.7.n#D#MaYbfaYaY#Da9#D#D#Daw.NaY#x#Ib#b#bg.VaYbl#s#L.Ebj.7b..7.7.7.7#Lbp#Lbp#L.jbp#L#L#Lbp#Lbp#Lbp#L.7aj#La9.7a9#L.7a9#s#D#D#DaY.Naw.N.s.CamamaOa#a#.W#xbf#xaY#D#D#Da9#Da9#Da9bj#Dbj#D.N.Naw.N#x#xbfaYaw#x.Ca0a0aFbma#aBaZbbaZ#uaZ.0bgb#a0am#x#x#xaYblaY#MaYaY#Dbl#DaY#xaCamamaoaqaC.C.Wamao.5a#a#.yaSazaZ#uaZ.yaOaF",
+".5aF#Sbhaza7aFa0a0bn#xaw.N#D.7.7af#L#L#L#La2#L.j#g#Lajbp#Lbp#Lbpaja9.n#D#s.N#I#I.WaF#uarazaF.W.Nbl#D.n#Laj#La2a2aj#g#L#g#L.jbpaj#Laj#L#Lajaf#Laj.7afa9.na9#D#D#Ma9#p#s#D#sa9.na9#DblawaYaw#Da9a9#D#D#saY.Naw#x#xaCb#.VaC.V#xaY#Dbj.nbja9bj#s.7.7aja2#L.j#Lbp#La2ajbp#L#L#L#L#L#L#L#L#L.Ea9.7.7a9#D.7#D#D#D#DaY.N.N.N#I.CaoaFa#aB.C#x#xbf#x.N.NaY#Dbl#D#D#D.N#D.NaY.saYaY.C.W.C.W.Caqa0.8a#aZaBan#u#uan#Sa#b#ama0bnaY#xaYaY.NaY.N#s#DaY#DblaY#Dbl#I#xam.8.5aOam.Cama0aoaFbmaBbha7#a#ea7an.y.yaF.8",
+"bc.y.wara7b#a0aoaYaYaYbl#Da9.7.7#Laja2#L#g.j#g#ga2bpa2bp.jbpaj#Laf.Ea9#s#D#I#I.C.WaOaz#EaZb#.C.N#sbla9afafaj#L.j#L#g#L.jbpa2bpa2#Lafajaf#L#L#Laf.E.7.n#Da9#D#sbl.n#D#M#s#D#s#D#s#DawaY.NaY#Da9.n#D#D#D#DaY.NaY#I.CaCam.Vb##U#xawa9bj.7b..7bj.7bj#Laj#Lbp#La2#L#Lbp#L#Lbpaj#Lbpaj.7#L.7af.7a9.7.Ea9#D#D#s#D.N.saYb..Nbf.Wa0aF.0#ua0.W.C#Ibfaw.NaY#saY.N.N.N.N.N.N.N#xaY#I#x.W#x.C.Wam.8aZ.waz#ubha#aFaFb#ambn.bblawaY#MaY.N.s.N.N#D#D#D#DaY.saY#I#xaCam.8aFbyaoaCaoamama#a7azararaya6.G.Gaz#u#v.8",
+".J.far.laobn#xaY#D#sa9#D.7a9aj#L#L#L#L#L#Lbp#Laj#g.j#ga2#L#L#Lbp.na9.7#s.N#I.Caobh#EaBaCbn.s#IaY#Ma9.n.7#L#L#L#Laj#Laj#L#Laj#L#L#L#L#L.7aja9.Ea9bl#M#D#M#DblaYblaYawaYaYawaY.NaYawaY#Mbl#D#D#D#Da9.n#D#s.Nbl.saY#x.RaY.N#xa0aFbm#IaYaY.N#s.7.E#L#L#La2#L#L#Lajbp#L#La2#L#L#L.7#La9a9a9.7#L.7.7.7#Da9#D#D#DaY.N.NaYaY#Ia0.5.8a#an.0.5bn#xbl.N#x.C#Dbl.sblaY#I#x.W.R#Ibna0aOa##vaZazararaz#ua#aFaO#x#I#x#Ibn#x#xaYaYaY#DblaY#Dbl#Dbl.NblaY.NaY#x#xaoaobnaY#xaCa#.0aOaOaOaFaFaFaFaF.l.Ta7bh.G.G#q#e",
+"araza7aFam#xaYawa9#Da9a9a9#L#L#L#L#Lbp.j#L#La2#Las#ga2#gbp#Laj#L.7.7.n#D#M#xaCaFbk#iaOaC#xblaY.Na9a9a9afaja9aj#L#L#Laf#Laf#Laf#Lajafaja9#L.7a9.Ebl.n#D#M#DawaYawbn#Ubn#I#x#I#xawaYawaYaY#D#s#D#D#D.n#D#DaY.s#x.N#U#IawaY#xbna0aF#x.W#xaw.N#D.7b.afajaf#L#Lbp#L#La2#L#L.E#L.7a9.7a9a9.na9.7a9.7.7#D#s#D#D#D.Nbl.Naw.N#x.CamaF.0.y.yaF.CaYaw#x.Caq#Ibn#x#x#x#xbna0aoamaF#vana7.wazaZan#uaZaOamamamaY.RaYaYawaYaYaYaYblaY#D#Dbl#DaY#DblaY.N#xaY#I#xbnbnawaYbnam#va#ama0a0aoamamaoam.taFbmaZ.6ar.2#4",
+".faBb#a0aY#xbl#Da9a9#D.E.7#L#L#L#g#ga2#g#g#g#g#g#g#g#ga2#L#L#L#L.n.7a9a9.N#Iam.8#f.Gb#bn#UaYaw.Na9.na9.7af#Laf#Lajafaj#Laj#Laj#Laf#Laf#L.na9a9#D#Mbl#M#DawaYaw#x#I#U#x#U#Ibn#I.NawblaY#s#D#D.N.sa9#s#D#M.NaY.s#xawaY#D.s#D.Nbnama0a0aC#x#xbl.NaY#La9#L.E#L#L#L#Laj#L#L#La9.7aja9a9a9a9#D.n.7a9.7#s#D#D.Naw.N.NaY#Dbl#I#xaC.5#va#aBaFa0aC.C.Caoa#ama0a0ambgaF#va##uan.w.wan.wanaZ#vaFb#ama0a0#x#xaYbfaY#xaY.Nbl.Nbl#D#D#Dbl#D#D#D#DaY#saY.N#x#x#xaYaYaYaY#Ia0bg.5bn#xbn#xbna0a0amaCb#ao.t#SaZar#a",
+"aFama0aY#xaY#Da9#D#Da9a9#L#L#L#g#ga2#gbpa2bpa2bpa2#ga2#gbpajbp#L#Da9.7#saYaY.W.5#EaraFa0#U.NblaYa9a9a9ajaf.E#La2#L#L#L#Laf#Lafaj#Lafaja9#D.n#D#D#s#DblawaY#I#x#Ibnbn#I#U#x#IaY.N.Rawbl#D#D#D.s.N#D#D.saY.saY#I#x.N#s#s.7bj.N#xa0aob#amaoa0#I#xaY#D.na9.7a9bpaj#L#L#L#La9.Ea9#D#D#D#D#D#D#D#Dbj#DaY.Nbl.N.N#x#xbfaw.NaY#xama0aOa#aBa#bgama0.5a#.0aFaOaF#SaZan#ua7bhazaBbhaBa#aFb#b#aCbnbn#x#xaYaw.Nblaw#D#Dbl#D#D#s#D#p#Da9#D#D#Dbl#DaY#x#xaw#x#xaY.NaY#x#x.C.C.CawaYaw#xaw#x#Ibn#x#Ua0a0amaFbmbm",
+"bn#xaYaYaY#Ma9af.7.n#L#L.7#L#ga2bp#ga2#g#ga2#ga2#ga2#L#L#L#L.7.7#s#D#s#D.N#xamaoaS.OaBam#xaYaw.N.na9a9#Laf#L#La2ajafaj#L#Laj#Lafaf.na9a9a9bl#D#Mbl#saYaw#x.b#x#x#U#Ibn#I#xawaY.saYaYbl#D#D#D.N#D#M#sblaw.N#I#x#I#D#sbj#Db..N.N.Camamb#am.pa0a0bn#D#Da9.7.7aj#Lbp#L#La9.7a9a9#s#D#MaY#D#Dbl.saY.N.N.N.s#x#xbf#I#x.NaY#I.CaCamam#vaBbm#SaF#va#a#aB#ubh#uanaBaBbmaZ.FaFb#b#a0aCbn#I#x.RaYawaYawaY.N#D#D#D#D#D#D#D#Da9#Da9#Da9#Da9a9.saYaw.Naw.N#xaY.N#x#xaY#xaC#xaYblaYaYaYaYaYaY#xaYblaY#Ua0a0.Vbn",
+".NaY#D#Da9a9a9#La9.7.7#L#L#g#L#ga2bpa2bpa2bp#gbp#g#Lbpaj#L.7.Ebjbj#D#Dbl.s#xaoa##TalaBam#x.NaY#Da9a9a9af#L#L#L#L#L#Lafaj#Laf#Lajafa9a9#p.n#D#M.NblaYaYawaY#x#I#x#Ibn#U#Ibn#I.NaYawaY#sbl#saY.s.N#sbl#s.NawaY#I#x#I.N#D#s#D.N#Ibnaoa0#Ia0a0b#aoamaw.N#Da9.7#L#L#L.7.n#L.7#s#DaW#DaYaYaY#I.NaY.N.N#I#x#xbf#x.C.C.C#x#I.Ca0amama#a#a7azaza7aZaB#uan#uan.laZ#SbmaFaF.V#Ubn#UaYaYawaYaYawaY.NaY.N#D.N.n#Da9#D.n#D.7a9#Da9bj.nbja9#s#DblaY#D#x#xaYaY#x#M.N#x#I#x#x#xaY#Dbl#DaYaYaY#xaw#x#IaYaYaY.baYaY",
+"#D#D#Da9a9#Lafaj#L#L#Laj#Lbp#ga2#g#ga2#g#ga2#ga2#g#L#Lbp.7.7.7#D#D#s#D.saY.C.8aB#4#zaZa0#xaYaw#Da9.na9#L#L#Laja2#Laj#L#Lafaj#L#L#p.n#pa9blblaYaYawawaYaY#I#x#x#Ibn#Ibn#I#x#U#x#IaYblaYaY.Nbl.saY#s#Daw#Dawbf#I#x#I#x.s.N.s#xa0aC.C.Ca0.CaCa0ambg#x.N.s#D.7aj.7aja9.7a9#sa9#D.s.NaYawaYaYaY.NaYaYbf#x.C#x.W.C.Caqavaqa0ao.5#va##vaS#W#aazazanbm#SaFaFa#aFaOaFbgb#aCbnbnaw#x#x.N.N#sbl#D#s.N.N.N.N.7.7.7.7.7.7a9.7.7.7a9.7a9.7.7.7aY#DawaY.NbfaY#x.NaY#x#x.C.WaY#D#M#DaY.NaY#x#x#x#x#x#xaYaY#Da9#D",
+"a9.7.7.7afaj#Laf#L#L#L#La2#La2#gbpa2bp#g#L#g#L#g#Lbp#L#L.7.7.7bj.s#D.NaY.Nao#v.QaD#za#am#xaY.N#D#pa9a9ajaf#Laf#L#Lafa2#La2#Lafaja9#p.na9#MblawblawaYaY#I#x#I#x#x#Ubn#Ibnaw#x#IaYaYawaY#M.saY.N.s#D#M#D.s.Naw#x#I.W#x#I.s#x.W#Ua0.Cava0.W.Ca0a0a0#I#IaY#D.7#L#L#La9.E#D#D#D.N#D.sbnbn#x#x#x#x#I#x.C#x.W.Caqamavam.C.5.5aFbya#.y.0.Gakar#e.TaBaFaF.5aFaOamb#a0aoambn#Ua0.C.Ca1bfbf.Nbl.N#D.N.N.N.Na9aj.7af#Laf#L.Eaf#L#L#L.7.n.7.n#DaYblbfaYaY#x#x.s#xbo#x.C#x.Na9#D#DaY.N#x#IaY#xama0bn#x#D#D.7#L",
+"#Laj#L#L.7#L#L#Laj#L#Lbp#g#g#g#La2a2a2a2#ga2#L#L#L#L#L#L.7a9.7a9#Da9.s#Iama##u#.bA.faFaYawaYaYbfa9a9afa9#L#L#Lajafajafafajaf#Lafafafa9a9bl#Dbl#s.RawaYaY.R#U.R#Ubn#Ubn#Ibn#U#x#x#M#D#D#Daw#D#s#DaYaw#s.n#D.s#I.Caoaoam.8.5aO##am#va#byaFbcaqav.CaFaOaFaC#x.N.saW.N#D.N.s.N#I#xbn#U#xaw.R#x#xbna0#U.Vamb#b#aFa#bmaBaZ#vaZ#v.0aB.yaFaO.5bgamamamaobn#U.C#Ua0aCbnbnawaY#MaYblaY.saY.7.n.7.na9.E.7.7#La9#Laj.7#L.7af#Lafaja9a9a9#Da9.Nbl.Naw#x.s#xaY#x#xbn#x.baYaY#Da9.na9#DaY#x#x#x#IaYaY#sbla9.na9",
+".7af.7#Lajaf.7#L#Lbp.j#L#g#L#g#ga2#ga2#g#La2#L#Laj#L#L.7a9.7.n.7#sbl.NaYaoa#azbAa6a7am.RaYaYaY#xafa9a9af#Laf#L#L#Lafaj#Laf#Lafajafaja9.n#D#M#DaYaw.R.RaY.baY#UaY#Ubn#UaYbn#x#I#x#M#D#M#D.s#D#s#D.s#Dbl#s#s#MbfavaCbgaCaoaC.5ao.5#vaOaOam.8.8amavb#b#aoaC#xaw.N.N#s.s.NaYaw#xbnbnaCa0a0a0amamaoaFaFaFa#.yan#u.G.6aBaBbmaO.5b#.5b#amaoa0a0amaCa0a0aY#xbn#Ibn#Ibn#IblawaYaY#M.Nbl.N.n.7a9.7a9.7afa9.7aj.7#L#L#L#L.7#Laf#La9a9#D.7#D#s#DaYaY.NaY#x#xbn#x#x#U#xaYawaYa9a9a9bl.NaY#x#x#xaYaYbl#Da9.7a9",
+"#L#L#L#L.7#L#L#L#La2#L#L#ga2#g#L#ga2a2a2#ga2#L#L#L.7#Laf.E.7.7#DawaY#I.CaoaBazbaaSa#.VbnawaYaY.N#pa9afa9a9#Laja9af#Lafafajaf#Lafa9#pa9blblbl#MaYaYaYaw.R#x#UaYbnaw#x.R#I.R#I#x#xaYaw.NaYaw.N.N.s#D.s.saw#I.CaoaoaO.F#vaOaO.8#vbc#va#aO#vaO.5.8aCaFaO#SaOaOao#I#x#MaYawbnbnaCa0b#a##va#a##vaZaZ#uazazbh.Galay.2alaFaOaFamaCa0aC.C#I#x#x#I#x#xaY#IaY#I#x#I#x#x#I#xbl#D#M#D#D#s#D#D.n.7.n.7.n.7.7.Eaf#L#L#L.7aj#L#Lajaf#La9.7a9a9.7bl#DaY.NaYaY#x#xaCa0#x#xbnawaY#D#Da9#D#DawaY#x#I#xaYaY#D#Da9a9a9",
+".7#L.Eaf#L#Laj#L#L#L#g#L#g#L#g#g.ja2a2#ga2bp#L#L#Laf#L.7.7a9.7#Dblaw#x.W.5az#aalaZb#a0bnaYaY#DaY#p#Da9afa9a9#L#Laja9aja9#La9aja9.na9#sbl.n.NblaYaw.R#xawbnaY#U#U#x.R#Ibn#I#x#I#xawaYaY.saY.s.N.N.s.saw.W.Waobc.yaBaB#u#S.y.y#va#aB#u.Qaz.waBaZ.yaZaB.0aBaB#vaO.5bn.Vb#am#Sa#aB#u.wbhazazbh.waz.GarazaSaz#a#a#a#ea0a0#Ubn#x#I#x#xaY#MaYblblawbl.NblaYaYaY#U#IaYaY#D#M#D#s#D#D.n#D.7a9.7a9.7a9.7a9#L#L.7af#L.7af.7af#L#L.na9a9bja9#D#D#DawaYbfaw#xbna0#x#UaYaYaYbl.n#Dbl#DaY.N#xaY#xaYaY#D#Da9a9.7",
+"#L#L#L#L.7#L#L#L#g#ga2#g#g#ga2bpa2#ga2a2#ga2#L#L.7#Laja9#La9#sa9.NaYaY.Wambk#zaraFamambnaYblaYbl#Dbla9a9.7a9.7a9a9.7a9a9.na9a9a9#Da9bl#DblawaY.N.RaYbnbnbn#Ubnbn#I#U#x#x#x#I#x#Ibl.Naw.NaYbf#I#x.s#x.WamaO.y#uazal.U#z.U#T.G.GaP#Tal#z.U#3al.Ualal#T.G#T.G#e.w.wa7#ua7a7aS.G#e#TaS.w.wanaz.wazaS#vaOa##va#aFaFam#UaY#xaYaY.NaY.s#D#D#D#s#D#D#D#s#D#saY.saY.NaY#sbl#D#M#D#D#Dbj#D.n#L.E#L.E#L#L#L.E#L#Laj#L#L#L#L#Laf#La9.7#Da9#D#D#DblbfaY.N#xaY.C#I#x#xaYaYaY#Dbl#D#D#Dblaw.NaYaYaYaY#D#pa9#La9",
+"#L#L.7aj#L#L#L#L#g#L#gbpa2bpa2#ga2asa2#g#La2#L#L#L#L#La9.7.7#D#sbl.N#Ia0#vaz#z#eam.Va0bnaYaYaYaY#Dbl#D#Da9a9.7.7a9a9a9.7#Da9#sa9bl#sbl.sbl.NblawaYbn#Ubn#Ibn.C#Ubn#x#U#x#I#x#IbfaYaw.NaY.N.saYboaYaCam.y#u#aau#4aH.4#..4aHbrbw#0.2bw.2aT.2ay.YaH#4#zal.o#T#Tal.U#aar.G.Ga4aPa4a4.ya#aZ.ya#a#a#aOa0bnaCbnaCbn#I#xblaYaY.s#D#sa9#Da9.na9a9a9.na9a9#D#D#D#D#s#D#s#D#D#s#D#D.n.7.E.7.n.7#La9#La9.E#Laf#La9#L.7#L.7afaj#L#La9a9.n#D.7bl#D#DaY.NaY#x#xbn#x.R#xaYaYaY#DaY#Dbl#D#D#DaYaYaYaYaY#D#Da9a9a9",
+"#L#Laf#L#L#L#L#La2#ga2#g#ga2#g#La2a2#ga2#ga2#L#L#L.E#L.7.n.7a9#D#D#I#xaoby.w#zaSa0aCa0bn#x.Rblblbl#D#D#D#D.7a9.Ea9.7a9a9.n.7a9a9#sbl#DblaYaw#x#x#xa0#xa0a0a0aCa0#I#U#x#I#x#I#xawaY#x#I.Nawbf#x#IaCbgaBaza6aT#P.uaybaay#3#aar.Gazaz.Gazaz.Gar#aa6.w#u#uaBaZaB#uazazazaS.0#S.0aFa#am.5aoa0am.Wam.C#I#x#x#I#x#I#xaw.N.N#s.N.N#Dbj#s#D#D.7.7.7#D#s.7a9.Ea9a9a9a9a9a9#s#p.na9bj#Dbjbj#Lajafaj#L#L#Laf.E#L#L#L#Laj#L#Laf#Laf.7a9bja9#D#D#DawaY#x.s#xaY#x#x#x#IaYaYawaYbl#D#D#DblaY#s#DaYaYaw#D#Daf.7af",
+"#L.7#L#L#L#L#L#L#L#gbpa2bp#g#L#La2#ga2a2#g#L#L#L#L#L.7a9#L.7#D#saY#x.C.8#va7albh.Ca0a0bnaY.RblblaY#Dbla9#Da9.7.7a9a9a9a9a9#D.n#Dbl#Dblaw#DaY#x#IbnbnaCa0#Ua0aCa0.CaC#x#I#x#I#Ibf#x#I#x#I#x#Ibo.C.paOa7#aay.K.K.K#Ear.faZa7#uaBaB#vbmaBaZa7an.TaZaOaF.FaFaOb#b##SaZ#va#aOama0.W#xavam.C.W.C#xaw#x#x#Ibfbf#xbf.N.N.saYaY#D.N.E#D.7a9#D#s.7#s#D#D#sa9.7a9.7.E.7.Ea9#s#D#s#D#s#D.Ea9.Eaf.E#Lajafaj#L.7#L.n.7#La9#L.E#Laf#L.na9#D.7a9#Dbl.NaY.NaY#x#x#x#U#x.RaYaYaYaY.N#xbl#D#D#D#DblaYaYaYbl#Da9a9.7",
+"#L.3a2a2a2a2asa2#ga2a2#ga2a2#ga2#ga2#ga2a2#ga2#L#L#Laj#L#L.7b..7#x#I#x#xaC#uar#e#Sa0.CaYaY#DaYaYa9#p#pa9a9a9a9a9#s#D#sbj#D#D#D#D#saYaY.Naw#x#x.Ca0aoa0a0aCbn#Ibnaw#U#U.CaCamaCaCaw#Mbn#UbnaCbgaoaZanaral.2alaPan.y.0.yaB.0a#a#a#.8aF#v.0#u.0#v.5aCam.8amaOamaoam.F.tbg#x.C.C#xaY.NaY.saY.Nawbf.N.N.N#D.s#D.N#D.Nbl#sbl#s#D#D#D.7.Ea9.7a9.7a9.7.7a9#s#D#D#Da9#D#D.na9.na9.na9a9.na9a9a9.naf#Lafaf.E#L.7#L#L#L#L#Lafaj#L#L#La9.na9bl#MblaYaY.baYaYbl#Dbl#DaYawaYaY#M#D#DaY#Dbl#D#DaYblbl#D#p#Dafa9",
+"afa2#La2a2#gaa#ga2a2bpa2#L#g#L#ga2a2#g#L#g#La2#g#L#L#Lbpaj#D.7bjaY.N.N#Iao#u#aayaFa0bnaYaYblaYaY#pa9a9blbl#D#M#D#Da9#Da9#Da9#s#Dbl#D#MaY#x#x#x.Wama0a0aCa0a0amao#Uaobg.8am.8amama0bgb#.8aFa#.0aZ#ua7#uaS#uanaBa#.8aFaOamaOamaCamb#ao.5a#.0#vaF.5a0a0aC.Ca0.Wa0am#ybgaC#xbf#I.NawaY.NaY.saY.NaYaw#D.s.N.N.N.s.N.sbl#sbl#D#D#D.n#D.7a9.7.n.7.n.7.n#D#D#s#D#s#Da9#Daja9a9.nafa9aja9aja9aja9af#L.n#L.7af.Eaf.E#L.7#Laf#Lafaf#La9.7a9blblblawaYaY.baY#Mbl#DaYaYaYaYaY.NaY#Dbl#s#Dbl#D#MaYa9bl#D#Da9a9",
+"afaf#La2a2a2#ga2#ga2a2#ga2a2#ga2bpa2a2#ga2#ga2#g#L#g#L#L#Lbj.Ebjaw#D.s#xaoana6abaOam#xaYaY#DaY.N#pa9#p#sbl#Dbl#D.n#D.na9.na9a9a9#sbl#DaY#I#x.Wbnb#bgb#amamao.8aFamaO.yaZ#u#u#S#vaZan.yaZaZ.6aSa4aBaZbma#aF.5ama0aCa0.CaCa0a0a0.Wbna0a0aoam.5aoa0#I#x#xbn#I#x#x#x.p.Vbn#x#I.NaYbl.N.NaY.N.NaY.N.NaYaY#DawblaY#DaYblaYblawaY.s#D#D.na9a9a9a9a9a9a9a9#D#D#Da9a9bja9a9.nafa9.Ea9a9.na9.na9.n#Lajaf#L.n#L.7#L#L#Laj#Lajaf#L#Laja9a9a9blblblaYaYaYaYaYbl#D#MblaYaYaYaYbl#saY#D#D#D.NaYblaYbl#D#p#Dafa9",
+"afajaf#La2a2a2a2a2#g#L#g#L#g#La2#ga2bpa2#La2bpa2aj#Lbp#Lajbj.7#s#D#Daw.C#v.GaTaD#vb#a0bnawaYaYaYaYblaYaYaYawaYaw#D#D#D#D#D#D#s#Dbl#saYaw#xa0a0a0bgamaOamaOa#a#a#.yan#u.G.Gaz.w.w#u#uan#uan.w.6.GaFaOaFaoaobn#I#x#I#x#I#x#x#I#xaY#x#I#xbn.CaC.Ca0#x#x#IaY#xawaYaw.R.bbnawblaYaw#DaY.saY.Naw.N#M.N#D#s#DaY.N.saY.NawaYaw#Dbl#DaYaY#D#s#D#s#D#s#Db.a9#D#s#D#s#D.n#Daf#L.na9aja9aja9afa9aja9afaf.7af.7#La9aj.7a9#L.7afaj#Laf#La9a9a9.na9blblaYawaYaYblbl#Dbl.saYaYawblaY#D#Dbl#DblblaYblbl#Dbl#Da9a9",
+"a9a9#L#L#L#L.jbpa2a2aja2#ga2#ga2#L#ga2#ga2#ga2#L#g#L#L#L#Lbj#s#D#saw#Iaq.y#3aH#Pa#bga0#UaYaY#xaYaYawaYaYaY#x.N#x.Naw.Naw.N.NaY.s#DblawbnaCamb#bgaFbma##S.0aB#u.yaz.w.waz.w#u.0a##SaFbma##Sa##Sa#amamaoa0#x#IaYawaYblawaYawaY#M.NaYaYawaY#I#x#x#U#x#x#xawaYaY#D#MaY#x.b#x#UaYaY#Daw#DaY#D#D#D#D#Dbl#Dbl#sblblbl#MaY.RaYaYawaY.s.Nbl#Dbl#D#Dbl#Dbl#D#s#D#D#D.7#D#Dajaf#La9.na9a9.na9.na9a9.n#Lajaf.E#L.7#La9aj.7#Lafaf#Laf#La9.Ea9a9#p.nblblaYaYaY#Dblbl.NblaYaYaY.Nbl#D#D#D#DaY#DaYblblbla9#Dafa9",
+"a9afa9ajafbpa2#L#ga2bpa2#L#g#La2bpa2a2bpa2#L#ga2#L#Lbp.7aj.7#Db.bl#x.Waobb.2a6ak#vb#a0#x.RaY#xaYaYaY.R#x#x#x#I#xawaYaYaYaY#xaw#xaYaw.Ca0b#aF#vaZaZana7.waz.G.Ga7#uaBaB.0a#aFamambnbnaCa0a0aCa0a0aoa0#IaYaw.Nbl.NaY#MaYbl#DblaY#DawaY.Nblbl#xbn.Ca0#I#xaY.N#Mbl#DawaY#Ibn#Ubn#I#x#D#D#D#D#D#D#s#D#D#saY#Dbl.s#DaYblaYaYawaYaYaYblbl.nbl.nbl.nbl.n#D#D#D#s#D#D#s#D#Lafaja9#paja9aja9af.naf.naf#Laf.7aja9aj.7#Laf.7afajaf#Laja9a9a9afa9#Dbl#sbl.Nblbl#sblaYaYaYaYaY#DaYaY#Dbl#DaYblaY#MaY#Dbl#Da9a9",
+"a9a9afa9#L#L#La2#ga2#La2#ga2a2#ga2#ga2a2#ga2a2bp#L.j#L#L.7#sbj#saY#Iaq.y.waXaraS#vb#a0#UaYaYawaYaYaYbn#x#U.Cbn.Caqaqavaqavaqaqaq#Ia0ao.5#vana7bh.Ga6al#aarbkaz#uaOamam.Cao#x#IaY#I#x#I#x#I#x#xawbn#xaw#D#D#D.sbfaY.N.saY.saY#D#D.Naw.N#saY.s.Cava0am.C#IaYaY#D#M.N#x.bbnaCa0a0#x#s#D#s#D#Da9#Da9blblbl#Mblblbl#MaYawblaYaYawaY.saYaYaYaYblblblbl#s#D#D#D#D#s#D#Daja9af.nafa9.na9.na9a9.na9#Lajaf.7af.7#L.n#L.E#Laf#L#Laf#La9a9.7a9a9a9a9#D#D#M#Dbl#Dblaw#DaYawaYaY#saYbl.Naw#DaYawblaYblbla9a9af",
+"afa9.7a9#L#L#L#L#La2#g#La2bpa2bpa2#L#g#L#g#L#ga2#Lbp#Laj.7bj.s#D.Waoao.waX#aazaSaFa0#xaYaYaYaYaYaYaY#xa0a0.Caoa0.8.8.5ao.5amaoamaCaoam#v#ubh.G#eayaTay.Gaza7aBa#aoaC.CaC.CaYaY#Mbf#x#xaY#xawaYaY.NaYaw#D#s.N#xaNaw.Nbl.Nbl.N.N#s#x.NaY#D.NaY#xaqa0aoa0#x.NaY#MaY#x#xbnbn.Vamaoam#D#D#D#s#D#sbja9.N#M.Nbl.N#M.NblblaY.RawaYaYaYaYblawblaYawaYawaY#D#s#D#M#D#D#D#Daf#L#La9a9.naf#La9af.n#L.nafafa9aj.7aj.7#L.7#L.Eafaj#Laf#La9a9a9aja9a9.na9bl#D#D#DblblaYaYaYaYaYaY#DaY#DaYblbl#DaYaYbl#sbl#Da9a9",
+".7a9a9.7a9a9.7a9#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#L#Lafa9a9#D#sbl.s.Waoan.G#Ea7aBaZ#vaFama0aCamamamb#.Va0aC.VaO.0#uaSaSazazan.Gak#a.Iay.Iar.Xar.Gazaz#uaB.yaO.5aoa0#Iaw.NaY.saY.N.N#D#s#D.N.N.N.N.s.NaY.NaY.NaY.saYa9bl#sbl#sbl.nbl#D#s#DawaY.saYawaY#x#U.CaC#xbf.N.s#I#x#Ia0aoamambf#I.N#D#DaYaY#Dbl#D#Dbl#D#Dbl#D#M#Dbl#Daw#D#M#DaYaYawaYblblaY#D.na9a9.na9.najaf.nafajaj#L#L#Laj#L.E#L.n#L.E#Lajaf#Laja9aja9.7a9#Lafafaj#L#Lajafa9a9a9bja9#D#D#sblaY#MaYaYaYaYaYaYaYawaYaYaY#xaY#UaYaYbl#Dafa9#L",
+"a9bja9a9.7a9a9.7#L#L#L#L#L#L#L#L.E#L#L#L#L#L#L.7aj#L#sa9#saY.saYbo.5.w.GazaB#San.l#vbgama0#xama0ama0a0bgaFbmanazak#aar#eazaz#aa6.e.e.XaraSazbhan#S#v#vaFaoa0aC.Cawaw.Naw.Naw.Naw#Da9#s#D.s.N.s.N.NaY.s.Naw.NaY.Nbl#saYblbl#Dbl#D#D#DaY#D.NaY.N#x#Ibna0a0a0.C#I#x#x#I#xaCamaFaOamaYaYaYaY.N.Nawbl#s#Dbl#D#sbl#D#Dbl#Daw#Dbl#Dbl#D#Mblblblaw#Dawbl.na9.na9.na9a9.naf.n#L.7aj#Laj#Laja9aj.7aja9aj.7#L.Eaf.7#L.7af.7afaj#L#Laf#Laf#La9.7a9a9b.a9#D#DaYblaYaYblaYaYaw.RaYbnaY#U#xbnbna0aYaYaYbl#Da9a9",
+"a9a9a9a9a9a9a9a9#L#L#L#L#L#Laf#Laf#Laf#L#Laf#Lafa9a9a9#D#D.Naw.N#x.8.w#e.lbma#az#uaZaFa0aC#x#x#x#x.WamamaF.y#ealayaG.G#eanaS#e#a.I#a.X.JanaZ#Sa#aOambga0.W#x#x.saY#saY.NaY.NaY.N#D#D#DaY.NaYaY#xawaYaYaYaYaY.saY#Dbl.N#M.Nawbl#D#M#D#MaYawaY#x#xbnaCam.8.5amamaCa0a0aob#aOaObm#v#x#I#x#xaY.N.NaY#Dbl#Dbl#D#Dbl#D#Dbl#Dbl#Dbl.sbl.N#Daw.NblaYblaYa9.n#p#sbl#Ma9bl.na9.na9.7.E.7.7.na9.na9a9.Ea9.n.7aja9.na9.Ea9.7af.7af#Laf#L#Lafa9a9a9#Da9#D#D#DblaYblaYawaYaY.R#xawaYaYaYbn.Cbn#xaYaYaY#D#D#D#D",
+"a9a9a9a9a9.7a9a9a9a9a9#Laf#L#L#La9.7.na9a9a9a9a9a9a9#s#D#s#D.Nbl#I#v.G.G#uaF#van#uaZ.8a0bnbnawbnavam.5#van#ealbra6#a#e.wana7#e#e.fakaz.TaBa#a#aFa0aoa0.Wbn.s#M.N#saY.sbl.saY.saY#s.Naw.Naw.N#I.N#x#I#x#x#IaYaY#IaYawaYawaYaY#xawaYaYaY.NaY#x#x#Iamb#aFa#a#aOamamamaob#b#aF#Sbmbmaoa0#x#xawbl#D#D#Dbl#D#sbl#Dbl#sbl#D#D#sbl#D#D#D#Mbl#DawblaY#saY#Mbl#Dbl#M#D#M#M#Da9#sa9.n#D#D#sa9.Ea9b..na9.7a9.na9.n.7.7a9.7a9aj#Lafaj#Lafaj#La9.Ea9.7#D.E#D#DblaY#MaYaYaYaYaYaY.R#x.R#xbn#U#xbnbnaYaYbl#Dbl#D",
+"a9a9a9a9afa9afa9af.nafaf#Lafa9a9afa9a9a9a9.na9.n#D#D#D#D#D#Daw.N#I.y.GazaZb#aOa#anaBa#aoa0aCbna0a0.5.8an.G.2.K#P#q#e.6anan.wazakazbha7aZaFam.8am#xaC.C#I#IaY#D#saY#saY.NaY.NaY.NblaYblaYaY#I#x#x#x#x#I#x#x#x#xaYaYbn#xbn#U#x.baY#x.s#x#x#I.Ca0.CbgaF#vbma#a#aOambgamb#aoaFaFaOaF#va0#x#I#x.Na9#D#s#Dbl#D#Dbl#D#Dbl#Dbl#D#Dbl#Dbl#DaYblaY#Dawbl#DaYaY#MaYawaYawaY.nbl#p#sa9#sa9#D#s#D#Da9#D.n#D.na9.na9a9.n#Da9#D#Lajaf#Laf#Laf#La9a9a9#Da9#Da9#DaYblaYaYblaYawbnawaYaYaYaYbn.Cbna0.Cbn#xaYaY#Da9",
+"#pa9a9a9a9a9a9a9a9a9a9a9a9a9a9.na9a9a9a9a9a9#Da9#D#s#D#s#DaY.NaYaCaZ.6az.0aOaF#van#uan#vamamamamaOa#analba.g#P#P#a#Tan.y#uaZaza7an.laZa#bgama0.C#U.C#U#I.N#s#s#D#s.Naw.N#M.NaY.saYaw.Naw#x#x#x#U#x.baYbnaw#xawaY#Ubn#U#x#Ubn#xbn#xbn#Ia0a0a0aCa0b#.t.tbma#aFaFb#amamamam.Vb#b#.V#Sbga0#x#xbl#D#Dbl#Dbl#Dbl#s#Dbl#D#M#D#Dbl#sbl#Dblaw#DawblaY#DaYawaYaYaY#Ibn#Ibn#Mbl#s#D#D#Db.#D#sa9#s#s#s#D#s#D.n#D.na9#D#D#s#Dafafaf#L#Laf#L#La9a9.7.nbja9bj#DblawblaYaYaYaYaYaYaY#x.R#x#xbnbnbnawaYaYbl#Da9a9",
+"a9a9#pa9#pa9#pa9a9a9a9a9a9a9#pa9a9.n#p.nbl.n#pa9#D#D#D#D#D.Nawbfbn#vazaS#SaF.8#vaZ.6aBa##va##v.0a7.faG#PaD#V.Kay.XazanaB.0#vbm#SbmaZ#vamama0aC#xa0.W#x#x#I.N#D#s.N#M.NaY.NaY.saYaYaYaYaYawbn#x#x#x#xbn#Ibn#x#x#xbn#xa0bna0bnaCbn#xa0#x#xbn.Ca0am.V.Vb#aOaFb#bgamaC.C.CaCa0a0aCa0a#aFbgbnaY.N#D.7#D#M#D#Dbl#Dbl#D#D#Dbl#D#Dbl#D#D#M.NblaY#DawblaYaY#Ibn#Ibn#Ubn#IaYawaYawaYawaY.s#D#s#Da9#sa9#s#D#sa9#Dbl#s#D#D#Daj#L#Lafaj#Lafaja9a9a9#Da9#D#Da9blaYblaYawaY.R#xaY#M.RaYawbna0#IaYbl#Da9a9afafa2",
+"#pafa9afa9a9a9a9#pa9#pa9afa9a9a9#p#p#D#pbl#p.na9#D#D#D#DaY.NaY#Ia0#v.Gaz.0#vaF#vanaz.w#u.0#u.waP#A.f.Xa6.Ia6akaSanaZa#aFaoaFaOaF#SaFaFama0aC#x#x.Wa0.W#Ibf.N#sbj#M.N.saY#s.NaY.NaYaYaw#xaY#x#I#x.R#x#x#x#xaYbnaY.Cbnbn#xbn#x#xbn#x#I#xbn#xa0.Ca0.pb#b#aFb#aFb#.V.C.C#x.CaCa0#xa0.FaFaOa0aYbl#D#sbl#D#Dbl#Dbl#s#Dbl#D#M#Dbl#D#M.Nbl#DaYblawaY.saY#UaYbn#x#U#x#Ubnaw.Rawblaw.NawaY#s#s#s#s#D#s#D#sbl#Mbl.n#Dblbl#Dafaj#Laf#Laf#L#La9.7a9.7#s.7#DbjblaYblaYaYaYaYaYblaY#xaY#x#xbnaYbla9#p#p.naf#La2",
+"#L#La9a9a9afa9af.j#L#La2af#La9a9#sa9#s#D#DaYaYblawaYaY#I#xbn.Ca0#Ubg.laz#uaBanaBa6#a.Xa6#aak#ebh#Sbm.Fa#aFb#amaoa0aCa0aoa0amb#.8b#aoa0aCa0#xaC#x#I#xaY.N#M#D#D#s#D#sa9.7a9.7.n.7#D#D#D#s#DaYaYaY#sbl#Mbl#Dbl#D#Dawbl.Naw.NaYaYawaYaYaYaw#DaYbl#DaY.RaYaYbnbna0a0#Ubnbn#x#x#x#I#xa0bgaBb#a0.s.s#L.NaY.N.saY.N.NaYbl.NblaY#I#x#x#x#Mbl#MaYaY#x.b#x#xbn.Wambgamamam#Ua0bnaCa0a0amaoaw#x#x#x#I#Iaw#Mblbl#sblbl#D#D#Da9#pa9a9a9a9#Laf.na9a9a9a9#paf#pa9a9#MaYaY#x#xbnaw.RaYbna0a0a0aY#D#pa9a9#La9#L#L",
+"#L.7#Laf.7a9.7a9#Laf#Laf#La9.7#Da9a9blbl.Nbl#DaY#xaYaY#xaCa0amam.t#uazar#e#T#a#zacbaayaraS#uaZa#aFaFaFb#amaoama0a0a0aCa0a0ama0amaoa0a0a0aC#xaC#xbn#I.saY.s#D#sa9a9#sa9a9.Ea9.7a9#D#s#DaY#D#D#s.Nbl#D#D#D#D#Dbl#DaY#DaY#Dblbl#DaY#D#Dbl#DaYbl.NaY.baYaYaYa0#Ia0a0#x#UaY#x#U#x#xaYbnam.FaOa0#x.s.7aY.saY.NaY.NaY.sblawaY.N#x#Ibn#xaYawaY#xawbnaY#U#x#IaCa0aCbg.paobn#U#Ua0aCaCaCb#aCaC.C.Wa0.C.baYawawaYblaw#D.s.Nbla9#p.nafa9ajafa9#pa9#pafa9a9a9#pa9blaYaY.b#xaYaYawa0#xa0a0#UaYbla9a9a9a9#L.7#L",
+"#Laf#La9.7af.7af#L#Laja9.7a9a9bj#D#D#D#MaY.NaYaY#MaY#Ua0amam.5.5aSal#PabbrayaTaTaGara7aZaZaZbm#vb#amamaCa0#x.C#x#I#x#x.CaC.CaC.5b#aob#aCamaC#xbn#I#xaY.s#D#sa9#s#Da9.Ea9.7a9.Ea9#D#D#D#D#s#D#D#D#Dbl#D#M#Dbl#sbl#DaYblaY.saY#DaY#MaY.Nbl.sbl#D#DaYaY.baYaYbn.CbnbnaYaYbn#x#x#x#xaYbnam#Sama0.N#s.NaY.Naw.Naw.NaY.NblaYaw#x#x#x#IaYaYawbl#x#I#xa0#Ia0aC.pbgb#bgb#.pa0.V.pb#.Vb#bgbm.taOaFaFao#U#x.bbn#IaYaYaY.NaYbl#Dbl#Da9a9a9a9a9a9a9a9a9a9.na9a9a9bl#DblaY#x#xaY.R#xaCama0#x#xbl#s#Daf.7af.7#L",
+"#L#L.7a9.7a9a9.7af#La9a9a9#D#D#D#D#MaYaY.N#x#I#x#xaY#x#xamaO.0bbaT#PaD#VaTaRar#eaBaZbmaFaFamb#ama0aCama0.C.C#x#I#xaY#I#x#x.W.CaCaOaFaob#aoamaC.C#I.b.NaY#s#Da9.7.n.7a9.7.n.7a9.7#D#D#D#D#D#D#D#D#D#M#D#Dbl#D#Dbl#D#D#sbl#Dbl#D#D#D#D#Dbl#D#Dbl#DaYaYaYbn#x#x#x#IaYbnaY#IaY#xaY#IaYbna0aBbmao#x.NaY.saY.NaY.NaY.saYaw.NaY#x#I#x#xaw#x.N#I.C.CavaCaFaOa#aBa##vbm#Sbm.taFbmbmaZaBbh#kbhbhaZ#Sa#b#a0aCa0a0#U#xaYaw.Nbl#Mbl.n#D.n.7a9a9.na9a9#sa9#Da9a9a9.n#D#D#xaY#xawaYbnama0ambnaYblbl#Da9#Da9#L.7",
+"a9a9a9afa9#La9a9.na9a9bj.n#D#D#saY.NaY#x#x#x#x#x#Ubnambga#.0#u#uaH#4#aazanaBaZbm#SaFaOb#bgamamama0.C.C.W.C#Ibf#xbf#I#x#x.C.Cao.8a#aOaOamaoa0.Wa0aY#xaw.N#D#s.7a9.7.n.7a9.7#L.7aj#D#D#s#D#D#D#s#D#D#Dbl#D#Dbl#D#Dbl#D#D#Dbl#D#Dbl#D#Dbl#D#D#D#DblaY.NaYawaY#xbn#xaYaYaYbn#x#x#x#x#U#xamaBaBaBa0.Caw#xaY#IaY#xaY#x#x#x#Ibn#xa0.Wa0.CaoamamaCamao.5azaz.G.Gar#e.G#a#eaz#ear#e#a.X#a#jaGak.faSaZ#vb#ambga0a0a0#I#x#xaw#xblaY#Da9#Da9#D#D#Da9#Da9#Da9.na9a9#D#DblaY#x.Rbna0.Cama0#x#xbl#Dbla9#D.7.7a9",
+"a9.7a9.7a9.na9.7a9.7#s#D#D#D#D.N#x#x#x#I#x#x.Ca0amaOa#.yanaBan#u.6aBa#amb#a0b#amamb#amamamaoa0aoa0aCambn.C.C#x#Ia0.C.CaCamao.5aO#vaFaOb#aoa0a0.WaYaw.NaY#s#D.7.n.7a9.7.n.7a9.7a9#D#D#D#D#D#D#D#Dbl#D#Dbl#D#Dbl#D#D#Dbl#D#D#D#D#Dbl#D#D#D#Dbl#D#D#sbl#D.NaYaYaY#xaYaYaY#xaYaYaY#xaYa0a0bmaz#uaOam.C.W.C.C.C.C.W#x.W#xamamamaoam.5aoaF#v.y.0#uaB.wal.2ayal.2aya6aTa6alaR.2ayayaT#P#t.K.e.X.GaSaZaBaFb#amaoa0a0bna0aYaYawblbl#sa9bj.n.7#D.7a9bja9#Dafa9afa9bl.Naw.N#U.CaCaFaoamama0aYaY#D#D#Da9#L.7",
+"a9a9.na9.7a9a9a9a9#D#D.N#s#DaY.saY#x.C.Ca0aoamao.0aZaBaZaB.0aBa#amb#a0aCaC.pa0a0aob#ama0am.C.Ca0.5b#amaCam.W.C.CaCa0ao.5amaOaF#vaF.8amamama0aqa0aYaw.Naw#D#Da9.7.n.7a9.7.7af.E#L#Da9#Da9#Da9#Da9#Da9#Da9#Da9#Da9a9a9afa9afa9afa9a9a9a9a9a9a9a9a9bl#D#Dbl.N.NaYaYaY.RawbnaY#x#I#xawa0b##Sazbha##vamaqao.Cavamao.5ao.5.8.8aF#v.0.yaZaB.waza7az.G.G#aararar.X#a.Xar#eazazaralalalayayaya6.Ial.XaSaS#va#aFaO.5aC.CaC#xbnaY.N#M#D#D#D.7a9.7.Ea9.7.7.Eaf#La9#D#D.N.NaYbnbnamamb#aoama0aYawblaY#D#D#D.7",
+".7a9.7a9a9a9.Ea9bja9#s.NaYaw.NaYa0.Wa0aCamamao.5a7az.waZa#aFaFaFamamaC#xbn#xam.5amamamaoama0aoa0aOaFaoambgamaCam.8aFaOaFaOaFaF#vaFaFaOb#aoamaCamawaY.Naw#D#D.Ea9.7a9.7.n.7.7a9.7#D#D#D#D#D#D#D#D#D#Dbl#D#Mbl#D#Ma9a9a9a9a9a9a9a9.na9a9.na9a9.na9#D#D#D#DblaY.saYaYaYaY#xaY#xaY#xaYbnaObmazaZ#Sa#.8.8.8.5am.8.5.8a##va#.ybbbb.w#uazarar#a#eazaSaz#ua7aZaZaZaZ.Tbm#SbmbmaZan#uaSaz#aalaR.2.IaGaraSaZaBa#aFaoama0aC.R#IawaYbl#D#D#Da9.7.7a9.7.7a9.7af#L.na9#D#s.N.NaYaCamaoaFamama0aYaYaY#D#D#Dbj#D",
+".N.N.N.N#D#D#D#DawaY.Nbf#xaqaqavamamaF#v.0#u.w#e#va#b#.5amamamaF#I#x#x#x#Ia0#x#x#x#I#x#xa0ao.5amamaoaFa#a#aBaZaZ.TaBaZ#SaFaFaF.5ao.5aoam.C.W#x#xaYaY.saY.N#s#D#Dajafaja9a9a9.7a9#Da9bja9#D.7#Da9#Dbl#Dbl#D#Dbl#D#Da9.7a9.7a9a9bja9#Da9#D#D#Dbl.Nbl#Dbl#D#D#Dbl.NaYaYaYaYaYawaYaY.Nbfa0b#bmaBana#bma#bm#u.6#T.oaR.Gararal#aalalal#Taraz.6#uan.0.0b#.8b#aob#aoambgamam.8aoamaO.8aFaBbhaz.Gar.X.X#abhazan.TaZbmbma#aCa0#xaYbfaY#s#D.s.N#D#D#sa9.7.7#s.7.7.7a9a9#D.7#DaYam.5aOa#amambf.N.N#s#D.NaYbf",
+"aYaYaY.saY#s#D#D#D.s#x.Wao.8aq.5.yaB#uanaBan#uanaFaOamaob#aoamaobn#x#U.Ca0.C.C.Wbna0a0aoaF.5#va#.ya#.yaBaZaBbh#u#SaBaZaOa#.8aFbg.5aoamaobn.Cbn#x.sbl.NaY#D#Da9#Daf#L#La9.7a9a9.7#D#D#D#D#D#D#D#Dbl#Dbl#DaY#DaY#D#Da9a9.7a9#D.7a9a9a9a9#Dbl#D#D#D#D#D#D#D#D#D#D#DaYaYaYaYaYaYaYaY.N#x#xbgaFaZ#ua#bgaF#vanaz#ealalazazaz.Garaz#q#ebhananaZaZa#a#a#aCama0a0aoa0ama0aqaoamamaFaoam.8a##SaZ#uana7aSbhaBaZaZbmaOaFaOaFb#ambnbn#IaY.NaY#D#D#D#D.7.7b..7#D#Da9.7#s#D.n#D#MaY#Iama#aFaoa0#x.saY#D#Dbl.N#x",
+".Nbo.N.N#xbf#xbf#x#Ia0a0aOa#aBaz.GaP.wan.ya#a#a#aCamambgama0a0a0.Wa0.C#xa0a0a0amamaoaFama#a#.0#vaSazbh#uanaBanaZa#aOaFaO.5aOaqamaoama0.C.C#Ibn#IaYaYaw#D#s#D.E.7#Laf#La9a9.7a9a9.7a9.7a9.7a9.7a9#D#D#D#D#Dbl#D#Da9.7#Da9.7a9.7#Da9.na9a9#D#Dbl#Dbl#Dbl#Dbl#D#D#p#D#D#D#D#D#D#D#D.N#DaYa0b##SaBaZamamaF#v.0#u.6.wan#u#uaSananaZaBa##vaFaFaoamamama0a0aCa0bna0#xaCa0a0.Cao.CaoamaoaF.5aOaFaFa#aFaFaF.5aoamaFamaFaob#bga0aobnbn#x#x#M#Dbl#s#Da9.7a9.s#D#D#D.N#DaY.N#Daw#xa0aoaF.5b##IaYaY#DawaYaw#x",
+".N.N#Ibf#x.W.C.W.5#v.yaZ.G#z.Kba.o#e.w.0a#a##va#amamaOaFaOaFbgamama0amaoam.8.5.5a#aFaFa#aBan#ubh#a.Xar.Gbh#uaZaBaO.5aoamamaC.C.Wa0a0.W.C#I#x#x#xaY#saY#D#D.7af.7af#L#La9a9.7#D.7#Da9.7a9.7a9bja9a9a9a9a9a9a9a9afa9.7a9.7#L.7a9afa9a9a9a9a9#Da9#D#Dbl#D#D#D#p#D#D#D#D#Dbl#Dbl#Dbl.s.NaY#xa0a#aB.0amamamaFa#a#a#a#aBaZaZaZ#va#.0a#b#b#bgamambn.Cbn.Wa0.C.C.C.Wa0.C.C.C.Wa0.Ca0.Ca0aoamama0a0bn#Ubn.Wa0.Ca0.W.C#U#xb#.Vb#b#a0ama0a0aYaY#D#D#D#s#D#saYaY.s.NaYaw.NawaYaY#Ia0amamaOam.C#x#xaYaw#x#x.C",
+".C.W.Caqaq.5.5.5anaP.o.Ya8#obs.g#TaS.wan.0#va##v.0bm.0a#.0a#a#.yamaoaFamaOa#aOa##va##S.0aZ#uaSaz#aaG#a.Gaz#uan#u#vaOam.8aCaq.W.C.C.Wa0#x#x#x#IaYawbl#D#sa9a9#L#Lajaf#L.na9a9.7a9.7a9#D.7#Da9.7a9a9a9af.7afa9.7a9.7af#L#Laf#La9.7afafa9.na9a9bl#Da9.na9a9a9a9a9afa9.na9a9.7a9a9a9.N#D.N#M#xaOaZaBamaOam.8am.8a#.5a##va#aoaFaFamamaoa0a0bnaC#x#x#x#x#I#xaY#xaY#xaY#I#x#x#x#I#x#I#xa0bn#I#xawbl.Nbl.Naw.NaY.NaY#xaYaCa0ao.Vbgb#b#b#awbnaYaYblblaYbl.NawblaY.NaYaYaYawaY#x#Ia0bga#aOamaC.C#xa0.Wa0am",
+"aoaFa#aOa##v.y.ya4.2#4.4a8aDaTaRanananaZaBaFaFaF#v.0#v.0#v.0#v.0amb#aob#amam.5aFamaOaFa##v.0.yaZaz.wanazaz.w.w.waO#vao.5aoamaCam.Wa0#x#xaw#xaYaY#D#M#Da9a9.E#L#L#L#Laf.7a9.7#Da9.7a9#L#L#L#L.7#L#L#L#L#L#L#L#La2#La2#L#L#L#L#L#Lafajafafa9a9a9afa9a9a9a9a9afa9a9a9.7a9.7a9a9.7a9.N#D#D#DaYam#SaZaF.5aFamamamamaoaFamamb#amamaoa0a0bnaC#x#x#xaY#IaYaYaYaYaYaYaYaY#xaY#IaYaYaYaYaY.s#xaY#D#D#D.7.n#D#D#D#M#D.N.saY#xa0a0amamambgambnbn#UaY#x#xaY.saY#x.NaYaw#x#I#x#x#I#xa0a0aF#vaZ.5a#amaCa0am#v.5",
+"an#uan#uan#ua7#uaz#a.Gaz.GaSaZaZ#vbybca#.5aoamb#.5b#amb#amb#amb#aCama0amamaob#amaCa0a0aoaFaFa#byaOby#v.yaZaB#u#ua##v#S#v.5ao.5aoa0#I#xaY#x#IaYaw#Dbla9#s#L#L#La9#Laf#La9#La9.7a9#L#L.7af.7af#Laf#L#L#L#L#L#L#L#Laf#Lafa2af#L.3#Lafafafafa9afa9a9#Laf#Laf#L#Laf#L#L#L#L#L#L#L#L#L.s#D#s.7#DaCa##ua#.0.5.5amama0a0amaoamaCamaCa0#xbn#x#x#x#xawbfaY.N.N.N.s.N.N.s.Nbl.Nbl.NaY.NaY.Nbl#D#D#s.7.7#D.7a9.n#p#Dbl#DblaY#x#x#xbnbnama0am.Vama0b#aCa0#x#xbn#I#x#x#xbnbn#x.Ca0a0aCam#van.wan#vbyaF#va#.yan",
+"alal.Ga7bhaZaZaZa##Sa#aFb#ao.5.8aFaFamama0amamaobn#Ubn#Ua0#Ibn#Ua0a0a0aCa0amamao#x#xaCa0aoamao.5avam.8.8#v.yaB#u#SaBaB#u#S#vaO.8amaCbn#x#I#xawaYbl#sa9a9#La9.7ajafaj#La9#L.7#Da9.7#Laf#L#L#L#L.7a2#ga2a2a2a2a2a2#La2#L#La2#L#L#La2af#Laf.na9a9a9af#Laf#La9af.7af#L#L#L#L#Laj#L#L#D#D.7#s#D.CaBbhbb.y.0aOama0aoa0ama0ama0bnbn#xaYaCbnbn#x#xaYaY.Naw.NaY.NaY.NaY.NaY#DaY#M#Dbl#M#D#Da9.7a9#Dbjb..7afa9.na9bl#DaY.N#Ibf.W#xaC.Ca0amamb#b#a0ama0ama0#xbn#x#U#x#U.C#UamaCama0ao.0.w.6.wan.yan.yan.waP",
+"#q.6a#aF.5aCa0a0bnbna0aCa0amb#am#U.Vbnbn#xa0.C#x#x.NaY.NaY.N.N.N#D#s.NaY.NawaY.N#M.s.N#x.C.Wamaq#UaCaCb#bgaOa##vbg#v#v#u.w#uaZ.yaO.5aoama0.RaYaw#D#D.7.n#Laj#L#L#L#La2#La2#La2#g#Laf#L#L#L#La2#La2#L#La2#La2#L#La2af#L.3#Laf#Lafajaf#La2#La2#La2#L#L#Laf#La2#L#L#L#La2#L#Laf#L#La2#La9#D#x#xaoaO.Xbha#ama0#x#x.CaC.Ca0aC.C#x#IbnaYaYawaYaYaYaYaY.N#D#D#D#D#D#D#D#D#D#D#D#D#D#D#D.7.E.7.7.7af.7.7aj#L#L.7.E.N.N.NaY.N.N.N.NaY.NaYbl#IaYbna0aoaFaOamaoamamamaFaF.5b#aOa#a#aZ#u#a.2.waP.w.w.waZan#u",
+".GanaB.5a0a0#xaCbn#Ibna0a0a0amam.Va0bnbn#x#x#I.C.NaY.Naw.N#s#D#D#D#D#s#D#D#D#saY#D#DaY.saY#x.W.Cbn#Ua0aCaoamaOaFaob##v#uaB.y#vaOa#aO.5bga0#U#x.R#D#D.n.7.7#Lbp#L#La2#L#g#L#g#La2#L#L#Lafa2a2#La2#L#La2#La2#La2#Lafa2#L#La2#La2#Laf#L#Laf#Laf#L#L#Laf#L#La2#La2#La2af#Lafa2#L.3#L.j#La9#DaY#xa0#v#aa7a#b#a0bn#x.C#x#x#x#x#xbn#x#x#IaYaYaYaYaYawaY#D#D#D#D#D#D#D#D#Da9#D#D#Dbj#Da9a9#La9af.E.7a9#Laf#Laf.7a9#D.N.N.saY.Nbl#DaY#D.NaYaYaY#xa0b#.5aFbga#aFaFbma#.ybm#vaZ#SaBan.G#q.2.w#u.6#uan.y.0.0",
+".6#u.0b#a0#x#xa0bnbn#x#xbn#Ibn#x.RawaY#x#I#x#xbfaYaw.N#D#D.7.7.7a9#D#Da9#Da9#D#Da9a9#D#D.N.N#x#x#I#x#Ia0ao.8am.8aCa0bg#v#vaOb#aoaFaOaFama0a0#Ubn#s#D#Da9.E#L#Lajbpa2#ga2a2aja2#gafa2#La2#La2#La2#Laf#La2#L#Laf#La2#Laf#Laf#Laf#L#Laf#L#Laf#La2afa2#La2af#La2#L.3#La2a2#L#L#L#L#La2#La9#s.N#xa0bg.Xana#aFamam.C#xbn#xbn#x#x#x#xbnaYaYaYawaYaYaYaY#Da9#Da9#Da9#Da9.7#D.7a9.7a9a9.7.7.7.7.7a9#L.7.n#L#Laja9a9#D.saY#D.N#D#D#D#D.saY#DaYaYa0a0amb#aFbm#SbmaBaB#ubha7aB#u#uazaz#Tal#q#uanaB.0a#.0a##u",
+"azaBa#aobn#x#x#x#x#x#Ibn#xaY#xaYaYaYaYaY.NaY.NaY#D#D#D#D#D.7a9.7#sa9a9bja9.7#D.Ea9bj.n#D#D.NaY.N#MaYaY#Ia0aoaoam#IaCa0ao.5ao.CaCbg.5b#aoa0aC#xa0aYaY#s.7a9#Lbp#La2bpa2#L#g#L#ga2#Laf#L#La2#La2#La2#La2#La2#La2#Lafa2#Laf#L#L#L.3aj#L#La2ajaf#L#La2#L#La2#La2#La2#La2#La2a2a2afa2#La2#L#DblaY#IamazaSaBaFama0#x.C#xaY#xaY#x#U#x#xaYaYaYaYaYaYaY#D#D#D#Dbj#D#Dbj#Da9a9a9.7a9a9bja9.7afa9aja9.7af.7#Lafa9a9#D#D#D#D#D#D#D#D#D#D#D.NaY#I#xbnaoamam.5a#bma#aZaZaZaZ#uaZanaz#q#TaR.o#q#uaB.0a#.0#uaZ#u",
+"an#vb#a0#x#x#xaYaYblaYaYaYaYaYaYaYaYaYblaY.N.N.sbl#D#Da9#D.7a9#L#D.7#sa9.7a9.7#Da9a9#Da9a9#s#D.Naw#Daw#xaCa0.C#x#U#xaCaoaCa0#Ibna0a0aoa0aCa0a0#UaY#M#D#Da9.7#L.7a2a2#ga2a2#ga2#g#La2#La2#La2#La2#La2#La2#Laf#L#Laf#Lafaj#Laf#L#Lafa2af#L#La2#Lafa2#Laf#La2#La2#La2#La2#L#La2#L#La2#Laj#Dbl.NaY#UaZ.TaBaFam.C.C#xaYaYaYaYaYaY#x#xawaYaYaYaYaY#Dbl#D.Ea9a9.7a9a9.7#D.7#Da9bja9.7a9a9.n.7a9a9a9.na9a9a9a9.na9a9a9#D#D#D#D#D.7#D#D#DaY#x#x#xbna0aCamaFaOa#bma#bmaBaZaZaB.6.Gal.o#e.GazanaBaZ#u#u#uan",
+"#vaFama0awbnaYaYaY.NaY#D#DaY#D#M#Dbl#s#D#D#s#D#D#Dbl#D.n#Daf.E.7a9a9.7a9a9a9a9a9.7a9.7a9.7a9a9a9#D.n#D.N#x#I#I.W.C#I.Caoam#U#xaw#Ia0#I#x#x#I#x#IaYaY#Dblbja9a9#L#La2bpa2bpa2#La2#Laf#Laf#La2#La2af#L#La2#La2afa2#Laf#L#Lafaj#Laf#L#L#La2#Laf#La2#L#La2#La2#La2#L#La2#La2#L#La2#L#L#Lafa9#sblaY#xb#bm#SaFambn#xaYaYaYaYaYaYaYaYaYaYaYaYawaYaY#Dbl.7a9bja9.7a9bja9#L#L#La9.7a9a9.7a9.7a9a9.7a9.7a9a9a9a9a9a9a9a9a9#D#Da9#D#Da9#Da9.N.NaYaY#x#x#xaYa0ama0am.5aF.5a##vaZan#TaR.Gazana7.wan#uaZan#uaZ",
+"b#a0#xaYaYaYaY#x#DaY#D#D#M#Da9a9#D#D#D#D#Da9#D#p#Da9#D.7a9.7#L#La9a9a9.7#L#L.7a9.na9a9.7af#L#L#L#La9.7#s.N#I#x#x.C.CaCa0.W.W#xawaYawaYawaY.NaYaYaYawaY#sbl.7#D.7#L.ja2#ga2#ga2#g#La2#La2#Laf#L#L#La2af#L#L#L#Laf#Lajaf#Laf#Laf#Lajafaf#Laf#L#La2#Laf#Lafa2#La2#La2#L#L#L.3#Laf#La2#L#La9a9#D#MaY.b#yaFbgam#x.N#saYaYaYaYaYaYaYaYaYaYaYaYaYaY#Dbla9.7#L#L.7#L#L#L.7af#La9#La9#La9afafafafa9a9a9a9a9.na9a9a9.n#pa9.n.7a9.7a9.7a9.7#D#D#D#s#DblaYblaY#x#xaCa0aCa0amaOaZ#u#q.G.6#uaBana7azaZaZaZaZa#",
+"a0a0a0aYblaYaY#xaYaY#Dbl#Da9a9af.7.7#Da9a9a9a9a9a9a9.n#Da9.7#L#L#La9.7af#L#Lafa9.7a9#L#Lajafa2aj#L.7.n#D.N#xbo#I#x.Waq.8aoa0#I.Nawbl#sbl#DaY#saYawaYaYbl#D#Da9a9#L#Lbpa2#L#g#La2#Laf#Laf#La2#L.3#Laf#L#Lafaf#Laf#Laf#L#Laf#L#Lafaf#L#Laf#Laf#Lafa2#La2#L#La2#Laf#L#L.3#L#L#L#L#L#L#L#L.na9a9blblbn#Hbga0#xaYaYa9blaYblaYblaYblaYaYawaYaYaYaYbl#Da9a9a9a9a9a9a9a9#L#L#L.7a9.7a9a9#La9a9a9a9af.nafa9#pa9#pa9#pa9a9#Da9#D.7#Da9bja9a9.7a9a9a9#D#Dbl#D#saYaY#x.Cbn.WaF#San.Ga4aZa#a#aZ#uanaZaBa#bma#",
+"bnaYaYawaYaY#M.N#D#D#D#D#D#D#Da9a9#D.nbja9.7a9.7a9.7.7a9#La9a9a9.7a9#L#L.7af.7a9#Laf#Lafa9.7a9a9#L.7#La9a9#DaY#Ua0#UaCa0#I#x#I#I.N#s#D#D#sa9#D#Da9#D#s#D#Daw#DaYajaf#L#L#Laf#L#La2a2a2#La2#La2#L#La2a2a2a2bpaj#Lajaf#Lajaf#Lajafaja9ajafajaf#L#Lafafafafa2#L#L#La2#L#L#L.3#L.3#L#La2#L#Lafa9.na9aYbnb#b#am.C.NaWa9bj#D#Dbj#D.N.NaYaY#DawaY#DaY#D#D.7a9.7a9.7a9a9#Laf#Laf#Laf#L#Lafafaf#La9#D#D#D#L#Lafajaf#Laf#L#L#L#L#L#L.7.7.7a9a9.7a9#D#D#D#DaYaY.N#x#Ia0.Ca0aF#vaF#vaOb#aob#aoaFaBaZ.0a#.5am",
+"#U#x.RaYaYaYbl#D#D#D#D#s#D#Da9#D#D.7#Da9.7a9bja9.7a9af.7a9a9.7a9af.7a9af#L#L#La9a2afaj#L#La9.7a9aj#L#La9.nblaYaY#Ia0aC.W#x#I.N.s#D#s#D.n#D#D#D#sa9a9a9#Dbl#D#D.Na9a9a9a9a9#La9#L#Laf#Laf#Laf#Laf#Laj#L.7aj#L#L.7afajafaf#Laf#Laf#Laf#L#Laf#L#Lafafafaf#Lafa2#L#L#L#La2af#L#L#L#La2a2af#L#La9bja9.Rawa0.8a0.C.Nbj#Da9a9#Da9#D#DaY#DaYbl.Nblaw#Dbl#D.7a9a9.7a9a9bjaf#Lajaf#L#Laf#Lafafafa9a9#Da9#D#Laf#Laf#L#L#Lafaj#L#L.7#L.7af.7#La9a9.7#D#D#D#D#D.NaY#x#x.C.CaoaFaFaOaOamamamamaCaF#v#v.0#vb#am",
+"bnbnawaYaYaY#Dbl.n#D#D#Da9bja9bj.n#D.7a9#D.7a9a9a9.7a9a9#La9a9a9#L#L#L#L#Laf#L#La2a2a2af#La9a9a9#L#Laf.7a9#D#IaY#UbnaC#xaY.N.saY.s#D#Db.#D.n#D.7a9a9#Da9#D#D#D#Da9bja9#Da9#Da9#Da9a9a9a9a9a9a9a9#Laf#L#Lafafajaf#La9#Lajaf#Lajaf.7#Laf#L#Lajaf#Lajafaf.3#L#L#L#Laf#Laf#La2a2#La2#La2#La2af.Ea9.naY#xaCamam#x.Nbj#s.7#D#D#D#Dbj#D#Dbl#Dbl.Nbl#Dbla9a9a9a9a9a9a9a9afafafafajafafajafaf.na9a9a9#D#D#Lajaf#L#Lafa2#L#Laf#L#L#La9.7a9a9.7a9a9#Da9#D#D#D#MaY#x#x.CaCa0aFaOaFamaFaCa0a0bnaCb#aOaFaOama0",
+"#IaYaYaYawaYaw#D#D#D#s#D#sa9#sa9.7a9a9a9.7a9#L.7#La9af.7a9a9.Ea9afaj#Laf#L#La2#La2a2a2#La2#La9#L#L#Laja9a9blaYaY#I#U#xaw.Naw#D#Da9#sa9#sa9.7a9.7ajaf.Ea9a9.7a9#D#D#D#D#Dbj#D#D#Da9#D#D#D#sbl#D#sa9a9a9a9a9#Da9#Dafajafaf.Eaf.7afajaf#Lajafaf#Lafafafajaf#Laf#L#L#Laf#L#L#Lafa2#La2a2af#L#La9a9a9aw#x.Vaoa0#x.Nbja9#D#D.7#D#D#D#Dbl#DaY#DblaYaY.Na9a9a9a9a9.7a9a9#La9afa9afa9af#pafa9#pa9a9a9.7a9#Laf#Laf#L#L#L#Laf#L#Laf.7a9#D.7a9.7a9.7#D#Dbj#Dbl.NaY#x#I.Ca0aqbgaFamaoambn.Cbn#U#xbna0aCama0a0",
+"aYaY#IaYbl.N.N#D#s#D#D#D#D#D#Da9a9a9.7a9a9a9a9#Laf#L#Laf#L#Laf#L#Lafa2a2a2a2a2a2a2a2a2a2a2#L#Lafa2#L#La9a9#DaY#Ubn#I#xaYaw#D#s.sa9bj.n#Da9.Ea9.7#L.7#L#L.7a9.7#L#Da9#Da9#Da9#Da9#Dbl#Dbl#D#Dbl#Dbl#s#D.na9#s#D#Ma9a9.n#Laf#Lajaf#Laf#Laf#L#Lafajafafafaf#Laf#L#L#La2#L.3#L#L#Lafa2a2#L#Lafa9.na9#Dawa0bga0#x.N#s#Da9#D#D#D#D#D#D.Nbl#DaYaYaYawaYa9.na9#La9afa9afa9a9a9a9a9a9a9a9a9#pa9a9a9a9a9a9#L#Lafaj#L.3#La2afafa2af#La9a9a9afa9.7a9#D#D#D#D#DaY.N#x#xa0a0aoaFbgama0a0a0aCa0aYaY.baYbnbnaC#x",
+"aYaYblbl#D#Da9.7a9a9a9a9.na9a9.7ajafaj#L#L#La2#L#L#L#L#Lafaj#Lafa2a2#L.j#La2#La2a2a2a2#La2af#L#L#L#L#L#La9#MaYaY#Ibn#MaY#D.s#D#s.7.na9.Ea9.7aj#La2aj#L#Laj#L#L.7.7a9.7.7a9.7a9.7#M#Dbl#MblblaYbl.sbl#Dbl#D#Dbl#Daf.Ea9af.Eafa9af#Lafaj#L#Laf#Lafafafafafaf#Laj#L#Laf#L#La2afa2#La2#L.3#L#L.7#Da9#DaYaCama0#Ibla9#Dbj#D#Da9#D#D.N#MaY#DblawaYaYaY#pa9a9a9#pa9a9a9afa9afa9#p.na9a9#Mbla9a9a9#La9.7afaj#Laf#L#Laf#Laf#Laf.7afa9afa9a9.7a9#D.7#D#D#D#Dblaw#x#x.WamamaOb#aOa0aC.Cbn.C#U.RaYaY.b#xbna0",
+"aYaY#D#D#D#s.7.7a9.7a9.7a9a9.7a9#Laf#Laf#Laf#Lafa2a2a2a2#La2a2aja2a2.3a2a2a2a2a2aaaaa2a2a2a2a2#La2#L#La9a9#DaY#I.RaYaw#D#M#D#s#D.n.7a9.n#L.7af#La2a2a2#La2#L#L#La9a9.7a9a9.7a9a9a9#pa9a9a9.n#pblaYaY#IaY#IaYaw#x.na9af#Laf#Laj#Laf#La9afajaf#L#Lafafafaj#Laf#L#Lafa2#L.3#L#L#L#La2a2#L#Laf.na9.n#D.NbnaCaobn#D#s#D.n#D#D#D.N.NaY#DaY#Dbl.NaYaYaw#D#pa9#p.n#pa9#pa9a9.n#pa9#pa9#pa9#D#pa9afafajaf#Laf#L#Laf#L#Laj.3af.3afafa9a9a9.7a9.7a9#D#D#D#D.NaY.N#xa0ama0aob#ama0a0a0bn#Ibna0#x.bbnaY#Uamam",
+"#MaY#s#D#D.7#La9#L.7.na9a9.7a9a9#L#L#L#La2#La2#La2a2a2aja2#La2afa2aja2#La2a2a2a2#gaaa2a2a2a2a2a2a2#L#La9a9blaYaYaY#MaY#M.N#D.n#D.na9.n.7#L.E#L#L.ja2a2a2#g#L#L#L#Lajaf#Lajaf#L#La9a9#pa9#pbla9.naYawaYaYaY.RaYaY.na9.na9aj.7af.n#Lafaj#Laf#Lajafafajafafaf#L#L#L#Laf#L#La2afa2af#L#La2af#L.7a9a9.7aw#xaCa0#IaYa9#D#D#D#D#D.NaY.saY#Dbl#DaYaYaYaY.na9#pa9a9#p.na9af#p#pa9a9a9#pa9#Dbl#Da9.na9#L#Laf#L#Lafajaf#Lafafafafafafafa9a9afa9a9bja9bj#D#D#D#DaY#x.Wa0av.5.pamaCa0#Ua0#x#xa0bnaYaw.R.Cb#am",
+"amam#xbla9a9a9a9a9a9.7a9.7afa2#Laf#Laf#La2#La2#La2a2a2a2a2a2a2a2#Laf#Laf#La2#L.3a2a2a2a2asa2#La2#gafa9blaYawaYaYawbn#IaYawaw#D#Da9.Ea9#Lafaf#L#L#L#La2a2a2a2a2a2a2a2#La2af#L#Lafajaf#L.na9bja9#D#p#pbl#M#x#Ia0bn#I.NaY#D#Da9a9.7af.Eafa9aja9#Lafa9a9a9a9#Lafa9afajafafafaf#Lafafa2.ja2afajaf#L.na2a9aY.Cbgam#x#Ma9.n#Lajafa9.N.N#pa9bl.N#MaYaYaY#p#pa9#pa9#pa9#p#pa9#p.n#p#p.n#pa9#pa9a9#paf#pa9a9.n#pafafafafafafafa9afa9afa9a9.na9a9a9a9a9#D#D.n#paYaYa0amb#amb#a0a0a0.Ca0#I#xaw#xaY#x#xaCa0aC",
+"ama0#xbla9.na9a9bja9#Da9a9ajaf#La2aj#Lafa2#La2#La2a2#La2#La2#La2af#Lafa2#Laf#L#La2a2a2asa2a2a2a2a2#La9blaYaYaYawaYaY#xawaY.N#s#Daja9#Lafajaf#Laf#L.j#La2#La2#La2#La2#La2#L#L#L#L#L#Laf.7a9#D.n#Da9.nblblaYaY#xaC#x#IaY.s#D#sa9.na9a9a9a9a9a9a9a9a9afa9afa9a9#La9afafaj#Lafaf#Lafa2#La2#Lafafaj#La2.naw.CamaC#xaY#D#D#La9a9#sbl.Na9#M#DblaYaYaY#xbla9#p#pa9#pa9#pa9#pa9#p#pa9#p#p#pa9.n#pa9a9a9af#pafa9afa9a9afa9#La9af.7afa9afafa9afa9a9.na9#Dbl#p#pblbn#U.5bg.5a0aoa0a0#Ua0#xbnaYaYaY#U#xbn#xa0",
+"amaCaYaYaw#Dbl#sa9#D.7a9.7af#L#Lafaf#L#La2#La2#La2a2a2a2a2a2a2a2#L#L#Lafaja2#L.3a2a2a2#La2a2a2a2#ga9#D#MaYaY#UaY#xaw#Ibl.Naw#D#Dafafaja9#L#Laf#La2#La2a2a2a2a2a2a2.jafa2#Laf#Laf#Laf#La9a9.7#Da9a9a9#sblawaY#x#x#IaY.NaY#D#D#D#D#sbl#s#D#sa9a9.na9.na9a9.nafa9afafafafafafafajafa2#L.3#L#Laja9#Daj#DaY.Ca0aoa0aY#D#Ma9.na9#D#DaYblblblaYaYaYaYaYbl#pa9#pa9#pa9#pa9#p#Ma9bl#p#D#pa9a9#pa9#pa9#pa9#pa9#pa9#paf#pa9afa9afa9afa9afa9a9a9a9a9a9a9#Da9bla9awaYa0a0ama0b#a0a0a0#x#U#x#xaw#xaw#xbn#I#xa0",
+"b#b#aCaYaYbl#Dblbja9#D.na9#Lajaf#L#L#Lafa2#La2#La2a2#La2#La2#La2afafaj#L#Laf#L#La2#La2a2a2a2#La2#La9blaYbnbn.R#IaY#U#xaYaw.N#D#s#L.Eaf#Lafaj#L#L#La2#La2#La2#La2afa2a2a2#L#L#L#Lafajaf.7.n#Da9b.afa9a9a9#DaY#I#x.NaY#saY#s#D#s#DaYaYaYblaY#DaY#Dbla9a9a9a9a9a9a9.na9a9.na9a9a9a9#La2aj#Lafa9a9a9af#Mawa0aCa0a0bn.NaYbl#D#M#DaY.NaYaYaYawaYaYawaYbl.na9#pa9#pa9#pblbla9#p#pa9#p.na9#pa9.n#pafa9af.naf#pajafafafafa9a9a9afa9af.7afaf.nafa9a9af#D#DblblaYaY#xaCa0.Ca0aobnaCbn#xawaYaY.RaYaYaY#xbn#x",
+"a0bnbnbnaYaYbl#D.n#D#sa9a9#Laf#L#L.3#L#L#La2#Lafa2a2a2a2a2a2a2a2#L#Lafaf#L#La2#L#La2#L#L#La2#L#Laf.nblaY.bbn#U#x#Ubn#Ibl.NaYa9.7a9afaja9#Lafaf#La2a2aja2a2a2a2a2a2a2a2a2af#Laf#L#L#L#La9a9.7#Da9#Laja9#D#D.NaYaY#s#D#D#DaY.NaY.saY.saY.NblaY#DaY#sbl#sbla9#Da9#Da9a9.na9a9afa9ajafaf#Lafa9a9#D#sa9blaY#Ua0aob#aC#xaYaw#D#DblaY#IaYawaYaYaYaYaYaYbl#pbla9#pa9#pa9bl#M#p#D#p#M#p#pa9#pa9#pa9a9#pa9#p#pa9#p#pafafaf.nafa9a9#La9afafa9afa9a9afa9#Da9bl.NaYawbn#x#x#x#Ubna0#xbnaY#xaYawaYaw#xawaY#x#U",
+"#Ubn#Uam#UaYaYbl#Da9bja9a9#L#Laf#L#Laf#Laf#La2#La2a2#La2#La2#La2af#L#L#L#Laf#La2af#L#La2#L#La2#Lafa9bl.Ra0.pa0bn#U#xawaY#M.N#s.7.na9#Lafaj#L#Lafa2a2a2a2#La2#La2a2a2a2a2#L#L#L#Laf#Laf.7a9#D.7#Dafaf#L.na9#Daw.N.n#D#D#s#Daw#DaYaYaYaYawaYaYawbla9bla9bla9.n#D#Ma9a9a9#Da9#sa9#p#Laf#La9.7.n#D#D#DaYawa0a0aob#amaCa0aYaYaY#DaY#xaYaYaYaYaYbl#Dbl#p#pa9#pa9#pa9#p#pbl#p#pa9#pa9bl#p.na9a9#pa9#pa9af#pafa9af.na9afa9a9aja9a9afa9#Laf.7afa9.7afbl#D#D#DaYaYaY#xaY#xa0bnbn#U.RawaY.baYaYblaY.R#IaYaY",
+".Rbnb#a0a0#xaYbl#s#D#sa9.Eaf#L#La2#Laj#La2a2#L#La2a2a2a2a2a2a2a2#La2afa2afa2#Laf.7af#La9a9#Lafa9a9a9.R.Ra0.V#UbnaYaYaY#D#D#D#D.7afajaf.Eafaf#L#La2#La2#La2a2a2a2a2a2#La2#L.3.7#Lafaj#La9a9.n#Da9#Laj.7a9.7#D.N.Na9.n#D#DaY.NaY.sbl#Mblbl#Dbl#Dbl#D#Dbl#s#Dbl#Dbla9#Da9.nbla9a9#Dajaf.na9#D#D#D#sblawaY#x#Ub#b#aO.5a0aCaYaYawaY#x#xaYaYaY.sblbl.na9#pa9#pa9#pa9#pblbla9#M#p#Dblbl.n#p#p.na9#p.n#p.na9#pa9#pa9af#pa9afa9a9af#Laf#Lafafa9afa9a9#Da9bl#D#M.NaY.Naw#x#UbnbnaYaYaY#xaYbl#MblaYaYaYaY#I",
+"#Fbn.Vaoa0bnaYblbja9#Da9a9#Lajaf#Laf#Laf#L#L.3#La2a2#La2#La2#La2af#L#L#L#Lafaj#La9#L#La9a9#L#Lafa9blaw.R#Ua0bnbn#IaYaw#D#s#Da9#s#La9#Laf#L#L#L#La2a2a2.j#L#La2#La2a2a2a2#L#Laf#L#Laf#Laf.7#D.7#s#L#L#La9.7#D.sbf.n#Da9#Daw#DaY.N#pbl#M#D#p.n#pa9#sbl#D#D#Dbl#D#D.na9#Dbl.n#Da9a9af#La9.7a9#s#DaYaY#x.baYbnaoamaFaFaoa0#IbnaYaY.R#x#xaYaYbl#Da9#pa9#pa9#pa9#pbla9#M#pa9#pa9#p#Mbl#pa9a9a9#pa9a9#pa9#paf.naf#pafafa9a9a9afa9af.7afa9#L#La9a9af#D#D#D#DaY#D#DaY.NaYbnbn#U#x.baYaYaw#paY#D#MaY#IaYaY",
+"blaw#xa0ambn#xaYawblbl#D#pa9afafa2a2a2a2a2a2#La2#L#La2#La2#La2#La2a2a2afa2#La9a9a9a9a9#D#D#D#D#D#pbl#paY.Rbn#I#x#pa9a9a9a9.7.7a9afajaf.n#Laf#L#L#L#L#La2a2a2#ga2a2bpa2#L#L#L#L.7af#Laf.7a9a9a9#Da9a9#sa9#D#D#D.Na9a9a9#sbl#D#Ma9bl#Dblbl#Dblblbla9a9a9afa9a9a9a9a9a9afa9a9a9a9.nafa9a9.na9a9#D.naY.RaYbna0a0b#aobgb#bg.Va0aCaY#D#Mbl#Mbl#Dblbl#Dbl#Dbl#Dbl#Dblbla9#pbla9#p#pa9#p#p#p#p#p#pa9#pa9#p#p#p#pa9a9afa9aja9afaf#Lafaf#La9afa9#Lafa9a9af#sa9#Dbl#DaYbl.N#UbnbnbnaYaY#IaYaY#MaY#xaYaYaYaY",
+"aYaYbn.Ca0a0#I#xaYaYblbl.naf#Lafaja2#La2#La2a2a2#La2#La2#La2#La2a2a2#L#L#L#L#L#Lafa9af#D#p#Dbl#D#F.nblblaYaYaYaYa9.n.7a9a9.7a9.7afafaf#L#L#L#L#La2#ga2#ga2bpa2#L#ga2a2#L#L#L#L#L#Laj#Laf.7a9bja9.7#D.7#D#D#D.Naw#D#M#D#p#D#p#D#Dbl#sbl#Dblbl#Dbla9.na9.naf#paja9afa9.na9a9afa9a9afajafa9a9a9blblaYawaY#Ua0aC.5am.V.Vb#ama0aYaY#xblaY#DaYbl#M#Dbl#Dbla9bla9bla9bl#D#p.n#pbla9bl#p#p.na9#p.na9#p.na9bl.na9afa9a9a9a9afa9#La9af.7afa9a9#Laf#Lafa9a9a9a9a9#D#DaY#saYbnbn#U#x#UaYaYaYaYaYaYawaYaYaY#x",
+"aY#xbna0a0a0a0bnaYaY#Mbla9a9a9af#L#Laf#L#L#L#Lafa2#La2#La2#La2a2#La2afa2af#L.7#La9a9#D#D#D#D#DaY#pblbl#MaYaYbl.Na9a9a9.7a9#L.Eaf.naf#Laf#L#L#L#La2a2bpa2#ga2#ga2a2#L#L#L#L.7a9a9a9a9afa9a9#D#D#sa9.nbl#DaYblaYaYbl#D#D#D#M#Dbl#sblbl#Dbl#sbl#D#Ma9a9a9a9a9a9a9a9a9a9a9a9.na9a9a9.n#pa9a9#D#sbl#saYaY.RaY#xa0a0aCa0#Ua0aCbnaYaYawbl#sbl#M#Dblbl#D#pa9a9a9a9a9a9a9#p#p#D#p.n#pa9.n#p#p#pbl#pa9a9#p#pa9#p#pa9a9afa9af#Lafaf#Lafaf#La9a9afa9af#La9afa9a9bl#D#p#DaY#DbnaCbnbnaYaY#IaYaYaw#xaYaYbn#I.R",
+".Raw#xa0aC.Ca0a0.baYaYblbla9a9af#Laf#L#La2afa2#L#La2#Lafa2#La2a2a2a2a2#L#L#Laf#L#D#p#Dbl#DblaYaY#pblblbl#Dbl#D#Dafa9af#L#La9#L.7afaf#Lajaf#L#L#L#L#ga2a2#La2bpa2#L#L#Laf#La9.7#Da9a9a9#D#Dbl#DaYblblaYaYaYawaYaY#xawaYaYaYaYaYaYaYaYaYaYaY.NblaYa9a9#pa9a9#pa9#p.n#Da9a9a9#Da9#D#pa9bl.na9blaYblblaYaY#IaYbnbna0#Ua0b#b#a0aYaYblblbl.Nblbl#Dbl#Da9a9afa9afa9afa9#Ma9#pa9#pbl#pbl#p#p#pa9#pa9#pa9a9bl#p.na9a9a9a9#La9af.7afa9#La9afa9a9af.7afafafa9a9a9#D#D#DblaYbnbn#Ibn#IaY.RawaYaYaYaYaYaY#x#x",
+"bnbnbnbna0a0a0amaYaYaYaY#D.na9a9afa9afa9#L#L#Laf#L#L#La2#La2#L#La2#L#Laf#L#L#Laf#D#Dbl#DblaYaYaYa9.nblbl#D#D#Dblafaf#L#L#L#L#L#L.naf#Laf#L#L#L#L#ga2bpa2#ga2a2#gaf.3af.7afa9a9.n#D#Dbl#sblbl.NaYaYaYaYawaY#x#xaYaYaYaYaYawaYawaYaYawaYawaYblaYblblbl#Dbl#M#Dblbl#Dbl#D#Dbl#s#Dbl.n#pa9blawblawaYaw.RaY.RaY#U#xbn#UbnaCaOama0aYbl#Dbl#Mbl.Nblbl#Da9.na9a9a9a9a9a9a9#pbl#pa9#pa9#p#p#p#M#p#p.n#pa9.n#pa9#pa9a9afa9#Lafa9afa9#Lafafa9afafa9af#La9#La9af#Dbl#Daw.NawbnbnbnbnaYaY#xaYbn.baY.RaY#xbnbn",
+"ama0bna0#Uambgb#aY.RawaYbl#Da9a9a9.7a9.7a9af.7#L#La2af#Laf#L#L#La2a2#La2#Laf#L.7#pblblaYaYblaYaYblblbl#Da9a9a9.7afajaf#L.3#L#L#L#Lafaf#L#L#L#L#L#L#ga2a2bpa2bpa2#La9#Lafa9af#D#D#Dbl#DaYaYaw#xaYaYawaYaY#xbnbnaYawaYaYaYaYbnaYaYaY.RaY.RaY.baYawbl#Mblblblbl#Mblbl#D#D#M#Dbl#D#D#pbl#MblblaYaYaY.RaYaYawbnaYbnawaYaYa0aO.Fa0#x.R#Dbl.Nbl#Mbl#sbla9a9a9a9afafafaf#p#p.na9bl.nbl#p.n#p#pa9#pa9a9#p#pbl#pa9a9a9a9a9#La9afa9a9afa9#Laf#La9afa9af#Lafa9a9#D#Dbl#DblaYbna0#Ubn#I.RawaYawaYaYaY#UbnaCbn",
+".Va0bna0.V.Vb#.5bn#xaYaYaY#Da9a9a9#La9#La9#L#Laf#L#L#La2#La2afa2#La2#Laf#La9a9a9blaY#MaYaYaYaYaYbl#Dbl#Dafa9#L#Lafa2a2a2a2a2#L#Lafaj#Laf#L#L#L#La2a2bpa2#ga2a2#gafafafa9a9a9bl#pbl#DblaYaYaYaY#xaY.Rbnbn#Ua0a0a0aYaYaYaYaYaYaY#U.R.b.R.R#U.Rbn.RaYaYawblaYblaYbl.N#MaY#DaYblaYbl#sblblblawblaYaYawbnaY.RaYaw.RaY#IbnaCb#aOb#.Vbn#DblblawaYblbl#Da9a9a9a9.7a9.7a9#D#pbl#p#p#pa9#p#p#p#pbla9#pa9a9#pa9.n#pa9.na9a9afafa9a9afa9#Laf.7af#La9afa9#Lafa9a9a9bl#s#DaY#sbnbnbnbnaYaY#x.Rbnbnbnbnbn#xa0a0",
+"a0.Vbn.bbna0b#b##UbnaYaY#D#Ma9a9.Ea9a9a9.7a9.7#Lafa2a2#La2af#L#La2a2#L#L#Laf.7.7blblaYblaYaYaYaY#DaYa9a9a9#La2#La2a2#La2#L#ga2#Lafafafa2#L#L#L#L#L#ga2#g#La2bpa2afafa9af#p#Da9#D#DaY#D#DaYaYaY#x.RaYaYbnbna0a0a0aYaYaY.RaY#UaYaYaYaYaYaYaYaYaYaYawblaYaYaYblaYblaYbl.NblaY#s.Nblblbl#MblaYawaYaY.Raw.RawaY.b#x.baY#xa0aob#bga0bnbl#sblaYaYbl#sbla9.n.7a9.n.7a9a9#pa9#pa9#p#D#pbl#p#p.na9#p.na9#p.n#pbl#pa9a9a9af.7a9afa9.na9a9afaf#Lafa9afa9af#La9.nbl#D#D#DblaYbnbn#UaYaYaYawaY.RaY.Rawbnbna0a0",
+"aYaYaYaYaYaY.N#xaYaYawbnaYaYaYaYbl#Dafa9afa9.7#L#L#L#L#L#L#L#L#L.3a2afafa9#D#DaY.R.R#x.RaYawaYaYa9.7a9#L#L#Lafa2a2a2a2a2#g#L#L#Lafafajafafa2#L#L#L#L.7#L#L#L#L#L#L#L#Laf.7#La9a9a9.7a9#D#D#D#D#Dblbl#IaY#xaY#xaYaYaYaYawaYaYaYaYaYawaYaYawaYaYaw#Fbl#M#FblaYaYaY.R.R.R.R.R.R.R.RawaYaYaYaYaYaYawaYbl.NaYaYaYbn#Ibn.baY#Ua0aOb#.Vbg#HaY.bbla9a9.na9a9a9a9.7a9a9.Ea9#p.na9a9.n#pa9#pbl#p#pa9#p#pa9#p#pa9#pa9#pa9a9#pa9.na9afafaf#L#Laf#L#L#L#L#Lafa9a9a9#pblbl.Nbl#x.R#xaY.R#x#xaYaw.RaYaYaYaYaY#D",
+"aYblaYaYaY#IaY.NblawaYaYaYaYaYaY#Dbla9a9a9a9a9#L#L#L#L#L#L#L#L#L#Laf#Lafa9#Dbl.N.R.Raw.RaYaYaYaY.7#Da9.7af#La2#La2#ga2#ga2#L#L#Lafafafaf#L#L#L#L.7#L#L#L#L.7#L.7a2a2#L#Laf#La9bja9#D.7#D#D#D#D#D#D#DaYaYaYaYaY#xaYaYaYaYaYaYaYaw#xaY#xaYaYawaYaYbl#FblaY#MaYblaw.R.b.R#MaY#FaY#FaYaYaYblaY#MaYaYblawaY.RawaYawaYbnaY#Ibnao#SaBaF.p#H#U.RaY#Ma9#Da9a9.7a9a9a9a9a9a9a9a9#pa9#pa9.na9#pa9a9#pa9#pa9#p#D#p#s#pa9a9afa9af#pafafafafaf#L#L#Lafaj#Lafaja9#pa9a9#Dbl#DblaY#UaYaYaw#x#xbnaYblaw.RaYaY#Dbl",
+"blaYblaYaY#D.NaY#pblblaY.RaYaYaYbl#Dbl#Da9a9.7a9#L#L#L#L#L#Laf#Laf.nafa9#D#DaYaYbn.RbnaYaY.R#xaYa9.7a9#L#L#La2#La2a2#g#L#L#L#L.7afajafaf#Laf#L#L#L#L#L#L#L#L#L#La2#La2a2#L#L#L#L#L#La9.7#Da9bj#DblblaYaYaYaYaYaYbl#Dbl#D#Dbl#Dblbl#Mbl#MaYblaY#Mbl.nbl#pa9aYblaYblaYaYaY.RawaYaY#M#F#M#Fbl#F#F#M#p#p#p#MblaYaYaY#UbnbnaCam#SaBbm#H.p.p.RaYaYbla9.na9a9.na9a9a9a9a9#pa9a9#pa9#pa9#pbla9#pa9#pa9#pa9#p#p#pa9#pa9#pa9#pa9a9afafafaf.3afajafafafafafa9.n#pa9#p#Dbl.N.RbnaY.RaYbnaY#x.b.RaYaYblbl#Dbl",
+"#DblblaY#Dbl#D#Dbl#DawaYaYawaYaYaYaYbl#Dbl#D#Da9#Da9#Da9#Da9.7a9a9#p#Dbl#DaYaYaw.R.RaYbnaYaY#xaY#D#Da9.7#L#L#L#La2#ga2#L#L#L.7afafafafafaj#L#L#L#L#L#L#La2#L#L#La2a2a2#La2#L.7#La9#L.7a9.7#D#D#D.N#Dbl.sbl#D#Dbl#D#D#D#Dbl#D#D#Da9#D#D#Da9#D.n#D#pa9#pa9a9blblblblaYblblblblblbl#p#Fbl#p#pbl#pbl#p#M#pblbl#Faw#FbnbnaCamaCaF#SaZ#Hb#bgbnaw.Raw#Da9a9a9a9a9a9.na9afa9a9#p.na9a9#p.na9#pa9#pa9#pa9#M#p#D#p.na9a9a9af#pajafafafafaf#Lafa9afa9a9afaf#paf#p.n#Dbl#DblbnaYbn#Ubn#x#U#xbn.baYblaY#DaY#D",
+"blblaY#DaY#D#D#Dbl#Dbl#DblaYaYaYaYaYaYaY#M#Dbla9#D#D#D#D#D#D#D#Dbl#Dbl#DaYaYaYaYbn.R#U.RaY.R#xaY.7a9.7#Laf#La2#La2a2#L#L#L#La9.7afafafaf#Laf#L#La2#g#L#g#L#ga2a2a2a2#La2a2#La2#L#L#Laf.7a9a9#Da9#DblaYaYbl.Nbl#Da9a9a9a9a9a9a9a9.na9.na9a9.na9a9ajafa9.na9a9.na9blblbl#Dblblblbl#M#p#p#p#p#p.n#p#p#p#p#M#pblbl#MbnbnbnaCa0aF#SaZ.V.V.VbgbnaYaYaYbl#D#D#D#D#D#Dbla9#p.na9#pa9#pa9#pbla9#pa9#pa9#pa9#pa9#pa9#pa9af#pa9#pafafaf#Lafa9a9a9a9a9afa9a9afafa9#p#Dbl#saY#x.bbn#xbn#I#xbnbnbnbnawbl#Dblbl",
+"a9#pa9bl#M#Dbl#Da9a9#D#D#D#D#D.Nbn#U.RaYaYaY#D#Dbl#D#Dbl#D#Dbl#DaYblaYaYaYawaYaYaY.RaYbn#xaw#xaY.7a9#D#L.7a2#Laf#L#Laf#La9a9#Da9afafajaf#L#L#L#Lbpa2a2a2#ga2a2bpa2a2a2a2a2a2#La2.3#L#L#La9.7a9.7bl.NaYaY#D#pa9#pa9a9a9afafa9a9a9afafafajafafafafafajaf#La9a9a9bj.na9#D.n#Da9#s#D#p#p#p#p.n#pbl#p#p.n#pa9bl#Mblbl#UaY#U#x#Ub#aB.l.V.V.V.VaCbnaY.R#D#Mblbl#Mblblbla9#pa9#pafa9a9#pa9#p#pa9#pa9#pa9#pbl.n#D#pa9#pa9afafafafafafafafafa9#p.na9a9a9a9afafafa9#p#DaYaY.Rbn#x#Ubnbn#xaCa0aCbnaYaYblbla9",
+"#pa9#p#Dbl#Da9#Da9afa9bla9bl#DblaYaYbnaYaYaYaYaYblaYblaYblaYaYblaYaYaYaYaYaYaYaY.Rbn.R#xaY.RaYaYa9.7a9#Laf#L#L#Lafaf#Lafa9a9a9.nafafafaf#Laf#L#Laa#ga2#ga2a2#ga2aaasa2a2#La2a2#L#L#L.3#La9.7a9#DaYblaYblbla9a9ajaf#Laf#L#Lafajaf#Lafafaf#Laf#L#La2#L#L#L#L#L.7.7a9a9a9a9a9.na9a9.na9a9a9a9a9a9.na9a9.n#D#D#D#D#D#MblawawbnaC.F.t.Fb#.Vb#.Vbnaw#xaYaYaYaY.NaY#D#Da9#pa9a9#p.n#pa9.nbla9#pa9#pa9#pa9#p#p#pa9.na9afafafafafafafafafa9a9afa9af#pafafafafa9#p#Dblblaw#xbn#Ubn#x#IbnaCb#aCbnawaY#D.na9",
+"#pa9#pa9a9#Dbla9a9a9af#D#Da9#D#D#xbn#xbnaYaYblaYaYaYaYaYaYaYaYaYbnaYaYaYaYaYaYaY.R.R.RbnaYaYaYaY#D.7#Da9#La2#Lafajafafa9a9a9a9#Dafafafaf#La2#L#La2a2#ga2a2#gaaa2asaaa2a2a2a2a2a2a2#L#L#La9a9.7a9#D.saY#D.n#pafaf#Lafaj#L#Laf#L#Laf#L#L#L#L#Lafaja2a2a2a2#L.E#L#La9a9a9.7a9a9a9a9a9.7a9.na9a9a9a9.E#L.7.7#D#s#D#s#Fblbl#M#xbnbg.t.F.t.V.V.VaCa0aY#DaYaYaYaY.Nblbl.na9#p.na9a9#pa9#p#pa9#pa9#pa9#pa9#p#D#pa9#p#pa9afafafaf#Lafafa9af#pa9#pa9afa9afafaf#pa9a9#D#DaYbnbn#xbn#Ua0bna0bg.Va0aYblbl#pa9"
+};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/namedcolors.xpm b/tests/benchmarks/gui/image/qimagereader/images/namedcolors.xpm
new file mode 100644
index 0000000000..f6485d510e
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/namedcolors.xpm
@@ -0,0 +1,18 @@
+/* XPM */
+static char *xman[] = {
+/* width height ncolors chars_per_pixel */
+"8 8 3 1",
+/* colors */
+"e g4 black c pale turquoise 4",
+"f m white c light golden rod yellow g4 grey",
+"g g white c lemon chiffon m black",
+/* pixels */
+"eeeeeeee",
+"ffffffff",
+"gggggggg",
+"gggggggg",
+"gggggggg",
+"gggggggg",
+"gggggggg",
+"gggggggg"
+};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/negativeheight.bmp b/tests/benchmarks/gui/image/qimagereader/images/negativeheight.bmp
new file mode 100644
index 0000000000..875887acef
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/negativeheight.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/noclearcode.bmp b/tests/benchmarks/gui/image/qimagereader/images/noclearcode.bmp
new file mode 100644
index 0000000000..1a5ca9c9bd
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/noclearcode.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/noclearcode.gif b/tests/benchmarks/gui/image/qimagereader/images/noclearcode.gif
new file mode 100644
index 0000000000..27784d61b2
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/noclearcode.gif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/nontransparent.xpm b/tests/benchmarks/gui/image/qimagereader/images/nontransparent.xpm
new file mode 100644
index 0000000000..00c21ef7d7
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/nontransparent.xpm
@@ -0,0 +1,788 @@
+/* XPM */
+static char *dummy[]={
+"8 8 777 2",
+"#R c #000000",
+"fn c #000001",
+".e c #000069",
+".f c #00006d",
+".g c #00006e",
+"#d c #0042b4",
+"aJ c #010101",
+"g0 c #010102",
+"dr c #010202",
+"gd c #010203",
+"#J c #0157bb",
+"e. c #020202",
+"du c #020304",
+"fR c #030303",
+"jJ c #040404",
+"hf c #040608",
+"fE c #040609",
+"cO c #04070a",
+"k# c #050505",
+"gC c #050709",
+"ka c #060606",
+"br c #06080a",
+"dY c #06090d",
+"hI c #070707",
+"in c #07090b",
+"cL c #070a0e",
+"cd c #070b0f",
+"e0 c #080808",
+"gZ c #080b0e",
+"eu c #080b0f",
+"dz c #080c10",
+"hD c #090909",
+"fq c #090d11",
+"cH c #090e13",
+"jB c #0a0a0a",
+"#U c #0a0d0f",
+"a4 c #0a0d10",
+"g3 c #0a0d11",
+"fu c #0a0f14",
+"cj c #0a1016",
+"kb c #0b0b0b",
+"#n c #0b0d0f",
+"a1 c #0b0e10",
+"g8 c #0b0f13",
+"f4 c #0b0f14",
+"hE c #0c0c0c",
+"bf c #0c0f12",
+".X c #0c28a0",
+"bT c #0d0d0d",
+"ax c #0d1014",
+"hr c #0d1217",
+"dH c #0d141b",
+"jy c #0e0e0e",
+"aW c #0e1115",
+"eH c #0e141b",
+"bE c #0f0f0f",
+"ar c #0f1317",
+"g5 c #0f1419",
+"hg c #0f151a",
+"fh c #0f151c",
+"dJ c #0f171f",
+"gI c #101010",
+".z c #101094",
+"h. c #10161b",
+"gm c #10161c",
+"eL c #10171f",
+"hK c #111111",
+"at c #11161b",
+"fC c #111820",
+"dA c #111922",
+"aj c #1163c4",
+"bJ c #121212",
+"#Z c #12161a",
+"ba c #12171c",
+"ho c #12181e",
+"jK c #131313",
+"iq c #13191d",
+"cA c #131e2a",
+"c7 c #141414",
+"dR c #141e29",
+"jr c #151515",
+"aA c #151a1f",
+"hq c #151c23",
+"fl c #151e28",
+"eV c #151e29",
+"d4 c #161616",
+"hw c #161e25",
+"jk c #171717",
+"bs c #171d23",
+"g9 c #171f27",
+"eC c #17212b",
+"b9 c #172432",
+"d5 c #181818",
+"as c #181e24",
+"bn c #181f25",
+"bS c #191919",
+"gr c #19232d",
+"ed c #1a1a1a",
+".d c #1a1a6e",
+"gB c #1a242e",
+"eK c #1a2531",
+"dQ c #1a2633",
+"hL c #1b1b1b",
+"g1 c #1b242d",
+"g# c #1b252f",
+"eJ c #1b2734",
+"d1 c #1b2937",
+"bW c #1c1c1c",
+"gW c #1c262f",
+"ci c #1c2b3b",
+"cs c #1c2c3c",
+"e# c #1d1d1d",
+"#3 c #1d232a",
+"f8 c #1d2833",
+"fI c #1d2936",
+"eO c #1d2a38",
+"cw c #1d2e3f",
+"jR c #1e1e1e",
+"a2 c #1e262e",
+"eP c #1e2b39",
+"dE c #1e2d3d",
+"cF c #1e2f41",
+"aO c #1e6ec9",
+"c4 c #1f1f1f",
+"gx c #1f2a36",
+"c# c #1f3043",
+"j2 c #202020",
+"bk c #202931",
+"ht c #202c36",
+"eF c #202f3e",
+"b7 c #203245",
+"cB c #203246",
+"hG c #212121",
+"aE c #212932",
+"bp c #212a32",
+"hl c #212d38",
+"cc c #213347",
+".M c #214eb7",
+"hF c #222222",
+"#7 c #222a32",
+"fw c #223040",
+"eU c #223141",
+"jC c #232323",
+"bb c #232c35",
+"ga c #23303d",
+"cv c #23364a",
+"cn c #23364b",
+"jl c #242424",
+"gj c #243240",
+"cm c #24374c",
+"c. c #24384d",
+"bF c #252525",
+"be c #252f39",
+"gt c #253341",
+"dU c #253649",
+".Y c #256cc9",
+"jG c #262626",
+"h8 c #26333d",
+"hb c #263440",
+"gs c #263443",
+"cr c #263b51",
+"cW c #272727",
+"aC c #27313b",
+"a9 c #27313c",
+"fk c #273748",
+"eR c #27384b",
+"cq c #273d55",
+"jV c #282828",
+"#5 c #28313b",
+"b0 c #2877ce",
+"gL c #292929",
+"#Y c #29323c",
+"hu c #293744",
+"fK c #293a4d",
+"jP c #2a2a2a",
+"#w c #2a323b",
+"bg c #2a3540",
+"dF c #2a3f55",
+"jn c #2b2b2b",
+"a6 c #2b3641",
+"jY c #2c2c2c",
+"h5 c #2c3b47",
+"hp c #2c3c4a",
+"gp c #2c3c4d",
+"cx c #2c445e",
+"bU c #2d2d2d",
+"h# c #2d3e4c",
+"dS c #2d435b",
+"e5 c #2e2e2e",
+"cG c #2e4762",
+"jF c #2f2f2f",
+"aG c #2f3b48",
+"gU c #2f3f4e",
+"ck c #2f4966",
+"j0 c #303030",
+"a0 c #303d4a",
+"he c #304251",
+"cQ c #307ace",
+"e4 c #313131",
+"ew c #31465d",
+"dW c #314862",
+"ce c #314b68",
+"jm c #323232",
+"bm c #323f4d",
+"k. c #333333",
+"e3 c #343434",
+"hi c #344757",
+"eT c #344b64",
+"b8 c #34506f",
+"dj c #347fd1",
+"bX c #353535",
+"f9 c #35485c",
+"ac c #363636",
+"#V c #36434f",
+"fv c #364c64",
+"dV c #36506d",
+"c2 c #373737",
+"ev c #37506a",
+"bI c #383838",
+"bw c #384655",
+"h4 c #384b5a",
+"hk c #384c5d",
+"ea c #393939",
+"bh c #394857",
+"gX c #394d5f",
+"#e c #3981d2",
+"e6 c #3a3a3a",
+"eS c #3a546f",
+"em c #3a81d2",
+"#F c #3b3b3b",
+"eQ c #3b5571",
+"dT c #3b5776",
+"cI c #3b5c7f",
+"gJ c #3c3c3c",
+"hX c #3c5060",
+"fi c #3c546f",
+"gG c #3d3d3d",
+"jv c #3e3e3e",
+"az c #3e4e5e",
+"fL c #3e5772",
+"bK c #3f3f3f",
+"gD c #3f576f",
+"fJ c #3f5874",
+"d2 c #3f86d5",
+"jx c #404040",
+"#8 c #404e5d",
+"bv c #405161",
+"cf c #406389",
+"jL c #414141",
+"iG c #415561",
+"im c #415663",
+"gz c #415971",
+"et c #415d7c",
+"cz c #41658c",
+"f# c #418ad7",
+"jT c #424242",
+"gy c #425b74",
+"fs c #425d7a",
+"#K c #4288d4",
+"jQ c #434343",
+"eX c #438cda",
+"j8 c #444444",
+".L c #44449a",
+"eZ c #454545",
+"#s c #455362",
+"fx c #45617f",
+"cK c #456b94",
+"aP c #458cd5",
+"ab c #464646",
+".n c #46469f",
+"aH c #46586a",
+"gV c #465f74",
+"d0 c #46678c",
+"c9 c #474747",
+"aF c #47596c",
+"a3 c #475a6d",
+"ex c #476687",
+"jU c #484848",
+"by c #485b6e",
+"gq c #48627d",
+"dI c #486b91",
+"cC c #48709b",
+"js c #494949",
+"#2 c #495a6b",
+"ih c #49606f",
+"hm c #49637a",
+"gk c #49647f",
+"j7 c #4a4a4a",
+"dt c #4a6e94",
+"ak c #4a8dd7",
+"b1 c #4a90db",
+"c1 c #4b4b4b",
+"bx c #4b5f72",
+"fr c #4b698a",
+"dG c #4b6e95",
+"co c #4b75a2",
+"fW c #4b91db",
+"bD c #4c4c4c",
+"hc c #4c687f",
+"j6 c #4d4d4d",
+"#Q c #4d5f71",
+"ik c #4d6676",
+"hH c #4e4e4e",
+"#0 c #4e5f72",
+"aD c #4e6277",
+"b. c #4e6377",
+"gN c #4e91dc",
+"c0 c #4f4f4f",
+"bj c #4f6378",
+"dZ c #4f759e",
+"cD c #4f7aa9",
+"hN c #4f8dcd",
+"kd c #505050",
+"#S c #506275",
+"#6 c #506376",
+"ge c #506e8c",
+"af c #515151",
+"b# c #51667b",
+"dk c #5195df",
+"cT c #525252",
+".c c #525280",
+"bq c #52677d",
+"iH c #526b79",
+"fj c #527397",
+"eW c #52769d",
+"dy c #527aa5",
+"hJ c #535353",
+"#x c #536476",
+"eG c #53789f",
+"jM c #545454",
+"#r c #546577",
+"bz c #546a80",
+"dM c #547ca8",
+"fP c #5499e2",
+"jp c #555555",
+"iK c #556f7e",
+"bM c #565656",
+"fB c #56799f",
+"dC c #567fab",
+"gE c #569be2",
+"cU c #575757",
+"h7 c #57748b",
+"gc c #577797",
+"fN c #577ba1",
+"dx c #5780ad",
+"cg c #5787bb",
+"i4 c #585858",
+"iF c #587483",
+"hy c #587792",
+"g2 c #587893",
+"fy c #587ca3",
+"eA c #587ea7",
+"jW c #595959",
+"bu c #597087",
+"ia c #5984b2",
+"ae c #5a5a5a",
+"#t c #5a6c7f",
+"bd c #5a7189",
+"ij c #5a7789",
+"eI c #5a81ab",
+"bR c #5b5b5b",
+"ch c #5b8dc3",
+"en c #5b9be1",
+"ke c #5c5c5c",
+"cP c #5c8fc5",
+"j5 c #5d5d5d",
+"iN c #5d7fa0",
+"gl c #5d80a3",
+"fp c #5d83ac",
+"cl c #5d8fc6",
+"b2 c #5d9de6",
+"c8 c #5e5e5e",
+"hh c #5e7f9c",
+"hn c #5e809d",
+"i3 c #5f5f5f",
+"#1 c #5f758c",
+"a8 c #5f7890",
+"g7 c #5f819e",
+"cJ c #5f93cc",
+"jz c #606060",
+"ct c #6094cd",
+"bO c #616161",
+"eN c #618cb9",
+"jH c #626262",
+"iW c #627c8d",
+"hd c #6285a3",
+"ey c #628dbb",
+"dO c #6290c4",
+"ca c #6297d1",
+"jI c #636363",
+"eM c #638fbd",
+"jN c #646464",
+"fH c #648db9",
+"eE c #648fbe",
+"cb c #649ad5",
+"hA c #64a8e2",
+"jw c #656565",
+"#k c #65798f",
+"fF c #658eba",
+"fA c #658fbb",
+"fa c #65a4e7",
+"b3 c #65a6e8",
+"jX c #666666",
+"hW c #6688a3",
+"gh c #668cb2",
+"aI c #6696cb",
+"dN c #6697cc",
+"bA c #6699ce",
+"cu c #669edb",
+"#C c #676767",
+"f3 c #678db4",
+"dl c #67a6eb",
+"kc c #686868",
+"cS c #696969",
+"dK c #699bd2",
+"cN c #69a2e0",
+"cy c #69a3e1",
+"fX c #69a6e8",
+"jD c #6a6a6a",
+"av c #6a84a1",
+"ds c #6a9cd3",
+"dL c #6a9cd4",
+"jt c #6b6b6b",
+"fo c #6b97c6",
+"cE c #6ba5e4",
+"jS c #6c6c6c",
+"aV c #6c88a4",
+"ir c #6c8ea4",
+"il c #6c8fa5",
+"eD c #6c9bce",
+"dB c #6c9ed7",
+"dq c #6c9fd8",
+"cM c #6ca7e7",
+"cp c #6ca8e8",
+"eo c #6cabed",
+"i2 c #6d6d6d",
+"#T c #6d869f",
+"#W c #6d87a0",
+"gY c #6d94b5",
+"aa c #6d9bcb",
+"eB c #6d9dd0",
+"dw c #6da0d9",
+"dD c #6da1da",
+"b4 c #6dacee",
+"h9 c #6dafe2",
+"i6 c #6e6e6e",
+"bt c #6e8aa7",
+"fM c #6e9bcb",
+"dP c #6ea3dc",
+"b5 c #6eabee",
+"jd c #707070",
+"ix c #7088a2",
+"hx c #7098ba",
+"f7 c #7099c3",
+"dv c #70a5df",
+"b6 c #70adef",
+"iy c #70aff1",
+"dm c #70aff2",
+"jE c #717171",
+"#m c #7188a0",
+"#u c #7189a1",
+"aY c #718eac",
+"gO c #71aced",
+"jq c #727272",
+"gb c #729cc6",
+"hO c #72afee",
+"ib c #72afef",
+"e7 c #737373",
+"#y c #738ba4",
+"#A c #739eca",
+".j c #747474",
+"#9 c #748fab",
+"hs c #749ec1",
+"f6 c #749fca",
+".i c #757575",
+"#q c #758da6",
+"a5 c #7593b1",
+"bo c #7594b2",
+"ii c #759bb3",
+"fb c #75b3f4",
+"ep c #75b4f3",
+"is c #75b8e2",
+"ag c #767676",
+"fz c #76a6da",
+"ez c #76a9e0",
+"dX c #76adeb",
+".h c #777777",
+".m c #777794",
+"iX c #77a6b3",
+"dn c #77b1f4",
+"gK c #787878",
+"#4 c #7894b0",
+"fG c #78a9dd",
+"j# c #797979",
+"bV c #7a7a7a",
+"do c #7ab4f4",
+"jA c #7b7b7b",
+"io c #7ba3bc",
+"dp c #7bb5f5",
+".k c #7c7c7c",
+"bc c #7c9cbd",
+"gi c #7caad8",
+"aQ c #7cb0e7",
+"fY c #7cb8f9",
+"iM c #7cbee2",
+"j1 c #7d7d7d",
+"aX c #7d9ebf",
+"fm c #7db0e7",
+"j4 c #7e7e7e",
+".8 c #7ea5ce",
+"#D c #7f7f7f",
+"hv c #7facd3",
+"gn c #7faedd",
+"eb c #808080",
+"er c #80bdf9",
+"j3 c #818181",
+"hz c #81afd6",
+"gu c #81b0e0",
+"eq c #81bbf9",
+"fc c #81bbfc",
+"#b c #828282",
+"iE c #82aac0",
+"i5 c #838383",
+"ha c #83b1d9",
+"es c #83bcf9",
+"ad c #848484",
+"go c #84b5e6",
+".v c #858585",
+"#p c #85a0bc",
+"bN c #868686",
+"hZ c #86b3d6",
+"fD c #86bcf6",
+"fO c #86bcf7",
+"gP c #86c1ff",
+"di c #878787",
+"ft c #87bdf8",
+"bH c #888888",
+"iT c #88cfe2",
+"jZ c #898989",
+"#z c #89a5c3",
+"g. c #89bbee",
+"fg c #89c0fc",
+"fd c #89c2fd",
+"hP c #89c3ff",
+"jb c #8a8a8a",
+"#o c #8aa6c4",
+"jc c #8b8b8b",
+".S c #8baccf",
+"iI c #8bb6ce",
+"al c #8bb9e8",
+"hj c #8bbde7",
+"gw c #8bbef2",
+"ff c #8bc3ff",
+"fe c #8bc4ff",
+"fZ c #8bc6ff",
+"ec c #8c8c8c",
+"gv c #8cbff3",
+"jO c #8d8d8d",
+"a# c #8dadce",
+"ic c #8dc7ff",
+"#H c #8e8e8e",
+"a. c #8eaed0",
+"#L c #8ebae8",
+"hY c #8ebee3",
+"g4 c #8ec1ec",
+"iO c #8ecbff",
+"ju c #8f8f8f",
+"bi c #8fb5da",
+"h6 c #8fc0e5",
+"f5 c #8fc4f9",
+"jf c #909090",
+"bl c #90b6dc",
+"i1 c #90dfe2",
+"bC c #919191",
+"aB c #91b5dc",
+"aZ c #91b7dd",
+"hV c #91c2e8",
+"gf c #91c6fc",
+"gg c #91c7fd",
+"f0 c #91c8ff",
+"i7 c #929292",
+"gA c #92c8fe",
+"iz c #92ccff",
+"iU c #939393",
+"a7 c #93b9e0",
+"f2 c #93c9ff",
+"gQ c #93ccff",
+"e8 c #949494",
+".y c #9494b0",
+"h1 c #94c6ec",
+"f1 c #94caff",
+"j9 c #959595",
+"#X c #95b7da",
+"cX c #969696",
+"ay c #96bbe3",
+"#f c #96bde8",
+"aR c #96c3ee",
+"gR c #96cfff",
+".J c #979797",
+"hQ c #97cfff",
+"fT c #989898",
+"#j c #98b6d7",
+"#l c #98b7d8",
+"iJ c #98c7e1",
+"g6 c #98cffd",
+"jj c #999999",
+"aS c #99c4ee",
+"h3 c #99ccf4",
+"gS c #99d0ff",
+".l c #9a9a9a",
+".b c #9a9aa4",
+"aw c #9ac1ea",
+"gT c #9ad1ff",
+"dg c #9b9b9b",
+".N c #9bbee8",
+"aq c #9bc1eb",
+"am c #9bc4ee",
+"eg c #9c9c9c",
+"au c #9cc3ed",
+"ao c #9cc5ee",
+"c5 c #9d9d9d",
+"aT c #9dc7ef",
+"hU c #9dd2fb",
+"hR c #9dd3ff",
+"dh c #9e9e9e",
+"#v c #9ebee0",
+".Z c #9ec3e8",
+"#M c #9ec3ed",
+"#N c #9ec5ed",
+"ap c #9ec5ef",
+"aU c #9ec7f0",
+"h2 c #9ed4fd",
+"id c #9ed6ff",
+"df c #9f9f9f",
+"an c #9fc5ee",
+"h0 c #9fd5fe",
+"aM c #a0a0a0",
+"hT c #a0d6ff",
+"jh c #a1a1a1",
+"hS c #a1d7ff",
+"ji c #a2a2a2",
+"#P c #a2c7ed",
+"i8 c #a3a3a3",
+"#O c #a3c8ed",
+"iA c #a3daff",
+"j. c #a4a4a4",
+"je c #a5a5a5",
+"#g c #a5c8ed",
+"ip c #a5dafb",
+"iv c #a6a6a6",
+".F c #a6bed4",
+"de c #a7a7a7",
+"#h c #a7c9ed",
+"if c #a7ddff",
+"ie c #a7deff",
+"eh c #a8a8a8",
+"#i c #a8caee",
+"iL c #a8dbf8",
+"ig c #a8deff",
+"iP c #a8e0ff",
+"iY c #a8e2e6",
+"hC c #a9a9a9",
+".0 c #a9caed",
+"#B c #aaaaaa",
+"fU c #ababab",
+".5 c #abc9e9",
+"iB c #abe3ff",
+"e2 c #acacac",
+".6 c #accaea",
+"jo c #adadad",
+".1 c #adcbed",
+".7 c #adccec",
+"iD c #ade2ff",
+"iC c #ade3ff",
+"fS c #aeaeae",
+".4 c #aecded",
+"db c #afafaf",
+".A c #afbbe7",
+".2 c #afccee",
+".3 c #afceee",
+"d6 c #b0b0b0",
+"iQ c #b0e9ff",
+"bG c #b1b1b1",
+"jg c #b2b2b2",
+"#E c #b3b3b3",
+".O c #b3d1ed",
+"gF c #b4b4b4",
+"cY c #b5b5b5",
+"iR c #b5ebff",
+"hM c #b6b6b6",
+"iS c #b6ecff",
+"d9 c #b7b7b7",
+".U c #b8b8b8",
+".u c #b9b9b9",
+"dd c #bababa",
+".P c #bad4ee",
+"bL c #bbbbbb",
+".Q c #bbd4ef",
+".R c #bbd5f0",
+"e9 c #bcbcbc",
+"c3 c #bdbdbd",
+"f. c #bebebe",
+"d8 c #bfbfbf",
+".o c #bfc2e8",
+"iZ c #bffdff",
+"iw c #c0c0c0",
+"iV c #c1c1c1",
+"i0 c #c1feff",
+"ei c #c2c2c2",
+"ej c #c3c3c3",
+"#a c #c4c4c4",
+"el c #c5c5c5",
+"d7 c #c6c6c6",
+".r c #c6cbda",
+"ek c #c7c7c7",
+"aN c #c8c8c8",
+"#G c #c9c9c9",
+"aL c #cacaca",
+"ai c #cbcbcb",
+".B c #cbddf2",
+"bZ c #cccccc",
+".C c #cce0f3",
+"dc c #cdcdcd",
+"ah c #cecece",
+"da c #cfcfcf",
+".E c #cfe1f3",
+".D c #cfe1f4",
+"#I c #d0d0d0",
+"cV c #d1d1d1",
+"fQ c #d2d2d2",
+"bB c #d3d3d3",
+"#c c #d4d4d4",
+"d# c #d5d5d5",
+"aK c #d6d6d6",
+"cZ c #d7d7d7",
+"c6 c #d8d8d8",
+"gH c #d9d9d9",
+".W c #dadada",
+"gM c #dbdbdb",
+"bQ c #dcdcdc",
+"e1 c #dddddd",
+"cR c #dedede",
+"d. c #dfdfdf",
+"bP c #e0e0e0",
+"i# c #e1e1e1",
+"bY c #e2e2e2",
+".K c #e3e3e3",
+"ee c #e4e4e4",
+"d3 c #e5e5e5",
+"ef c #e6e6e6",
+".p c #e6e9f6",
+"fV c #e7e7e7",
+"eY c #e8e8e8",
+".a c #e9e9e9",
+".q c #e9edf8",
+".V c #eaeaea",
+"## c #ebebeb",
+"Qt c #ececec",
+".w c #ededed",
+".x c #eeeeee",
+"#. c #efefef",
+".# c #f0f0f0",
+".9 c #f1f1f1",
+".I c #f2f2f2",
+".T c #f3f3f3",
+"ja c #f4f4f4",
+"i9 c #f5f5f5",
+"hB c #f6f6f6",
+".H c #f7f7f7",
+".G c #f8f8f8",
+"i. c #f9f9f9",
+"kg c #fafafa",
+"kf c #fbfbfb",
+".t c #fcfcfc",
+".s c #fdfdfd",
+"it c #fefefe",
+"iu c #ffffff",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt"};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/rgba_adobedeflate_littleendian.tif b/tests/benchmarks/gui/image/qimagereader/images/rgba_adobedeflate_littleendian.tif
new file mode 100644
index 0000000000..78868b0d48
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/rgba_adobedeflate_littleendian.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/rgba_lzw_littleendian.tif b/tests/benchmarks/gui/image/qimagereader/images/rgba_lzw_littleendian.tif
new file mode 100644
index 0000000000..107eab74e7
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/rgba_lzw_littleendian.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_bigendian.tif b/tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_bigendian.tif
new file mode 100644
index 0000000000..c314bae4c0
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_bigendian.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_littleendian.tif b/tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_littleendian.tif
new file mode 100644
index 0000000000..4f820f6649
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/rgba_nocompression_littleendian.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/rgba_packbits_littleendian.tif b/tests/benchmarks/gui/image/qimagereader/images/rgba_packbits_littleendian.tif
new file mode 100644
index 0000000000..ddeec38fbc
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/rgba_packbits_littleendian.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/rgba_zipdeflate_littleendian.tif b/tests/benchmarks/gui/image/qimagereader/images/rgba_zipdeflate_littleendian.tif
new file mode 100644
index 0000000000..50a3024246
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/rgba_zipdeflate_littleendian.tif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/runners.ppm b/tests/benchmarks/gui/image/qimagereader/images/runners.ppm
new file mode 100644
index 0000000000..fda1c97073
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/runners.ppm
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/task210380.jpg b/tests/benchmarks/gui/image/qimagereader/images/task210380.jpg
new file mode 100644
index 0000000000..fd045ea134
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/task210380.jpg
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/teapot.ppm b/tests/benchmarks/gui/image/qimagereader/images/teapot.ppm
new file mode 100644
index 0000000000..b8ab85f3a5
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/teapot.ppm
@@ -0,0 +1,31 @@
+P6
+256 256
+255
+\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À[7 eOLjQLmSMoTMnSMlRMhPL_9 \À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀnSMtVMzYN~[N~[N\N\O€\O€]O€]O€]O€]O€\O€\O}[NyYNtVM\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀG-wXN}[N€]O„^O†_O†`O‡`Oˆ`Oˆ`OˆaO‰aO‰aO‰aO‰aO‰aO‰aOˆaOˆ`O†_Oƒ^O\N \À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀaMLyYN…_O‰aP‹bPcPŽcPŽdPŽdPdPdPdPdPdPdPdPeP‘eP’eP’eP‘ePdPcP…_OpUM\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀwXN…_OdP“fP•gQ–hQ˜hQ˜iQ™iQ™iQšiQšiQšjQ›jQ›jQœjQœjQœjQœjQœjQ›jQœjQ™iQ“fP‡`O\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀNCJiQL‹bP—hQkQ¡mR¤nR¥oR¥oR¥oR¥oR¥oR¥oR¦oR¦oR¦pR¨pS©qSªqS«rS¬rS«rS©qS¤oRœjQ€]O\KK\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀfOLrUMcPŸlR©qS¯tS²uTµwT·xT¸xT¹yTºyT»zT»zU¼zU¼zU¼zU»zUºyT¸xT¶wT¯tS¡mR‰aOhPL\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\Àa0 cNLqUM€\O”fQ¦pS²wVºzV¿|VÂ}VÄVÆVÇ€VÉ‚WÌ…[Õeæ w÷³‹êª…Ĉg§qT“fQ{ZNYIK9\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀO1{G#‘JkRMqUMtVN–iS¨v\·€d¹bµzZ±vU°uT®sSªqS¤nRœjQ’eP„^OrUMHh>!T4\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀG-V5wE"~I#†M%U+¥e7²l:°g2®b*­a(­`(©^(¥])¡^-›]1ŠS,qC$`9 R3G-\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À@)J/i>!pA"tD"wF$yH&xH&tE$wE#yG%}M+ƒT4S5mE*Z7!K/B*;'\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À‰aO¦oR½{UÇ€VÏ…X<(F-a: e<!h>!j@#k@$h>"d<!c=$hD-fF2[<)K0@);'5$Ë‚VÇ€V¿|U_LKYIK\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À…_O·xTÉ‚Wó«€ûµ‹Ö’k¼|X×>µf-¨^(¡Z'šW&–T&œN>)F-J/b; g>#nD(jB&c<!b=%jH2_A/I0!<(8&5$”J¥Y’S%8&;'?)E,<:HA=HE?IJAISFJYIKXIK\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À£nRÁ}UܘqÊŠe±vU²e,™V&¥V†C €@ |> y< u: r9 o7 l6
+j5
+h4
+g3
+5$D,K/b; h>"wM1tK.e="a<#cA,U8&E-<(9&.!a0 b1 c1    
+
++3#@)46G<:HMCIXHK\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀU*´vT¿~X¸{YÃk+›W&‰N$|> u: p8 k5
+f3
+a0 _/ ]. [- I¡\*ª_(‘LkRMmSMmSMnSMnSMD,R3W5mA"|O0|P1j?"c<!a=%Y7"N1F,;'NCJNCJNDJODJODJODJh>!a: X/K%
+g3
+a0 Z- \/ T*Q(ŠHµm8kRMmSMnTMoTMpTMpUM15G15G05G04G04GpUMpTM5^9 d<!yF#O+€N,rC#qB"pB#k?"a: Z7 6ODJPDJPEJQEJQEJREJREJREJRFJSFJSFJSFJSFJe<!X/
+^/ V+Q(L&I$r9  TlRMnSM46G47G47G46G46G46G46G46G36G36G25G25G15G04G/4F.3F
+
+X&pUMuWMwXNxXN<:H<:H<:H<:H<;H<;H<;H<;H=;H=;H=;H=;H>;H>;H?<H@<HA=HC>HG@ILBIREJ[JKcNLjQL§pR±uTºzUÃ~VÈWË‚XÖŽcäsÒŽe¼{V²vT¨pSžkR•gQŒbP†_O‚^O]O€\O€\O€\O€\O€]O]O]O]O]O]O]O]O]O]O]O€\O€\O~\N}[N|ZNxXN•T%H$
+›W&rVMvWNyYNzYN|ZN}[N}[N><H?<H?<H?<H?<H?<H@<H@<H@<HA=HA=HB=HC>HE?IG@IIAIKBIODJSFJWHK—hQŸlR§pR°b(¾i*Én+Ù|7Û|6Ïr,Íq+Êp-Ãl+»g)±b(®sS§pS lRšiQ•gQePcPŠaPˆaO‡`O‡`O†_O†_O…_O…_O…_O…_O…_O…_O…_O„_O„^O„^Oƒ^Oƒ^O‚]O]O€\O~[N{ZN•T%
+
+ 
+@%<-$G?@…pfdNLuWM\NdNL\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀTFJvWN‰aP./01„E}[N]O…_Oˆ`O‰aP‹bPŒbPcPcPŽcPdPdPdPeP‘eP’eP’eP“fP“fQ”fQ•gQ•gQ–gQ–hQ—hQ˜hQ™iQšiQ›jQœjQkQkRžlRŸlRžY&¤\'¨^'µ^½bÀcÃeÇi ÄgÀc½b¼a¹`µ^´]¯X¢[' Z'žY&¢mR¡mR¡mR lRŸlRŸlRžkRkQœkQœjQ›jQšjQšiQ™iQ™iQ˜iQ˜hQ—hQ—hQ—hQ–gQ–gQ•gQ•gQ•gQ”fQ”fQ“fQ“fP’eP‘ePdPcP‰aP—O
+ B\À\À\À\À\À\À\À\À\À\À%7!!C*F#P) {dYœze»p€\OgPL\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀSFJ`LKvWNŠaPm6
+ 
+$5 ¬`(¶e)£nRœjQƒ^OJAI\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀXIK^KKdNLhPLuWM‚]OŒbP”fQeP m6
+†`OŽcP“fQ—hQ˜hQ™iQšiQšjQ›jQ›jQ›jQœjQœjQœjQœkQkQkQkRžkRžkRžkRžlRŸlRŸlRŸlR lR lR lR¡mR¡mR¡mR¡mRºg)³c(²c(±b(­V¿cÂeÅi!Åi!Àd¼bº`¹`·_·_¶^¢Q§]'ª_(­`(¹f)£nR£nR£nR£nR£nR£nR£nR¢nR¢nR¢nR¢nR¢nR¢nR¢mR¢mR¢mR¢mR¢mR¢mR¢mR¢mR¢mR¢nR¢mR¢mR£nR¢mR¢mR¡mR mRkR—hQˆGa0 ŠbP mRœjQ“fQ‰aP}[NrUMmSM…L$\À\À\À\À\À\À\À\À B B #C, 8&H.Z7 §pR›jQ{ZN\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀQEJ[JK`LKdNLhQLqUM{ZN…_OŽcP–gQ—hQ
+‹bP‘eP–hQšiQ›jQœjQkQkQkRžkRžkRžlRžlRŸlRŸlRŸlRŸlRŸlR lR lR lR mR¡mR¡mR¡mR¡mR¡mR¢mR¢mR¢mR¢nR£nRÀj*ºg)·e)¶d)Âd°XÅgÅhÂe¿c½b½b¾bªU­`(®a(¯a(³c(¾i*¤oR¤oR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤nR¤oR¤oR¥oR¥oR¥oR¥oR¥oR¥oR¦oR¦oR¥oR¥oR¤nR¡mR›jQŽQ%Z- œjQ£nRŸlR—hQŽdP…_OuWMpTMnSMkRLa: \À\À\À\À\À\À\À B B&D2 @*S6#G@IPDJ˜hQmSM\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀVGJ]KKbMLeOLiQLlRMvWN\OˆaO‘eP—hQœjQ•gQ
+!C+E'0F.4F7%8%U/lG.SFJZIK]KKZIKB=H\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀREJZJK`LKdNLgPLjQLlRMnSMpTMqUMtWMxXN{ZN~[N]O„^O†`O‰aO‹bPdP•gQ™iQœkQ lR¤nR§pSªrS­sS¯tT²uT´vT¶wT·xT¹yT¹yTºyTºyT¹yT¶xT´vT¬rS¢nR—hQ¿|U¿|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ|UÀ}UÀ}UÁ}UÁ}UÁ}UÁ}UÂ}UÂ~UÃ~UÃ~VÃ~VÄVÅ€WÆX®a(ŸlRªrS´vT¸yT¼zU¾|UÁ~VÃXÆ‚[Ɇ_΋dÓ‘jÔ“mÔ“nБlÊŒhĆd½_¶{[°vWªsU¦pS¢nRžkRšiQ˜hQ•gQ“fQ‘ePdPŒbP‰aO†_Oƒ^O€\O|ZNxXNsVMpTMnTMmSMjQL€C B)D&/F-3F47G6%>" Y7 kA$YIK]KK^KKSFJ\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀVGJ\KKbMLeOLhPLkRLmSMnTMpTMrUMuWNyYN|ZN\N‚]O„_O‡`OŠaPŒbPŽcPeP“fP—hQ›jQžlR¢nR¥oS©qT¬sT¯uU²vU´wV¶xV¸yV¹yUºzU»zU¼{U½{U¾{U¾|U¿|U¿|U¿|U¿|U¾{U½{U¼{U¼zU»zTºyT¹yT¸xTµwT³vT´vT´vT´vT´wT´wTµwT·xT¹yTºzT¼zU½{U¾{U¿|UÀ|UÂ}UÄVÅ€WÇ‚YÉ„\͈_ÑŒdÙ”láuç£|쩂ſt명æ¦ÞŸ{Õ—sËŽl†d¹^³yZ­uW¨qU¤oSŸlRžkRœjQšiQ˜hQ–gQ”fQ‘ePdPcPŠaP‡`O„^O]O}[NyYNuWMpTMoTMmSMkRLgPL&D#.E,3F46G;'<(D"iB(VGJ]KK`LK[JKB>H\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀNCJYIK^LKcNLfOLiQLkRMmSMoTMqUMsVMvXNzYN}[N€\O‚^O…_Oˆ`OŠaPŒcPdP‘eP“fQ•gQ—hQ™iQkR mS¤oT¨rU¬tW°wY´zZ¸}\»]¾€^À^Á‚^‚^Â\Á€ZÁYÁXÁ~WÁ~WÂ~VÂ~VÂ~VÃ~VÃ~UÃ~UÄ~UÄ~UÄUÄUÅVÅVÅVÅVÆVÆ€VÆ€VÇ€WÇWÈ‚XɃZË…[͇^ЊaÓdØ’iÜ—nâtè£zî©ó¯‡ø´û¸‘üº“û¹“÷¶ñ±Œé©…à¡~Ö˜vËmÇf»€`´z[®vX©rU¥pT£oS¢nS lRžkRœkRšjQ˜iQ–hQ”fQ’ePdPcP‹bPˆ`O…_O‚]O~[NzYNvWNpTMoTMnSMkRMhQLo7 ,2F36G99HC+@ ]8 nA"\JK`ML_LKSFJ\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀSFJ[JK`LKdNLgPLjQLlRMnSMpTMqUMtVMwXNzZN}[N€]Oƒ^O†_OˆaO‹bPcPdP‘eP“fQ•gQ—hQ™iQ›jRžlR mS£oU§rW¬vZ²{]¹€a¿…fÅŠjËnГqÓ•sÕ–sÕ–rÕ–qÕ”oÓ’mÑjÏgÍŠcˈaɆ^È„\Ç‚[ÆYÅ€XÅ€WÅWÅWÅVÅVÅWÅ€WÆ€WÇXÈ‚YɃ[Ê…\͇_ÏŠaÒeÕ‘hÙ•mÝ™qávä¡zç¤}꧀멃몄騃奀ߠ|Ù›wÓ•rÌmƉh¿„c¸~^²yZ®vX¬tWªsV¨qU¦pT¤oS¢nS mRžlRœkR›jQ™iQ—hQ•gQ“fPePŽcP‹bPˆaO…_O‚^O\N{ZNwXNsVMoTMnSMlRMiQL~I#26G99G?<HA*E$ i@$ZIKaMLbML[JK;:H\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀWHJ]KKbMLeOLhPLjRLlSMnTMpTMrUMuWMxXN{ZN~\N]O„^O†`O‰aO‹bPŽcPdP’eP”fQ–gQ˜hQšiQœkRžlS mT£oU¦rWªuZ¯y]´~aºƒfŠlË’sÔšzÜ¡€ã§†è«‰ë®‹í¯Œí®‹ë¬ˆè¨„ã£~ßžyÚ™tÖ•oÒjÎŒfˈbÈ…_ƃ\ÅZÄ€YÃXÂWÂ~WÂ~WÂ~WÃXÀXÄ€YÅZƃ\Ç…^Ɇ`ˈbÌŠdÍ‹fÎgÎŽiÎŽjÎŽjÍŽjËŒiljgÆd¿ƒaº^¸}]¶|\´{[²yZ°xY®vX¬tWªsV¨qU¦pT¤oS¢nS mRžlRkR›jQ™iQ—hQ•gQ“fP‘ePŽdPŒbP‰aO†_Oƒ^O€\O|ZNxXNtVMpTMnSMmSMjQLgPL99G?<HG-E&b;!YIK`MLdOM`LKNCJ\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀŸlRºyTÄ~UÊ‚XʃYÄXº{W­tUšW'¢[(—hQ lRcP€\OhQL\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀNCJYIK^LKcNLfOLiQLkRLmSMoTMqUMrVMvWNyYN|ZN\N‚]O„_O‡`O‰aPŒbPŽcPdP’fP”gQ–hQ˜iQšjRœkRžlS¡nT¤pU§sW«vZ°z]µb»„gŠlÉ‘sИyØžÞ¤…ã©Šè­ì±ï³‘ﳑ뭊穅⣀ݞzؘtÒ“nÎiɉdÆ…`Â]Á€[¿~Y¾}X½|W½|V¼{V¼{V¼{V¼{V¼{V¼|W¼|W½}X½}Y½~Z½~Z¼~Z»}[º}[º}[º~\º~\º~]º~]¹~]¸~]·}]¶|\´z[²yZ°wY®vX¬tWªsV¨rU¦pT¤oS¢nS mRŸlRkR›jQšiQ˜hQ–gQ“fQ‘ePdPŒcPŠaP‡`O„^O]O}[NyYNuWNpTMnTMmSMkRLhPL|H$D>IQ2P+XHK_LLfQOcNLXIK\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À©qSºyTÃ~VΈ`遲ޜv¾€]ªqS–LŽG|> g3
+S)?*%.—hQ—hQ‘eP‡`OuWM\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\ÀSFJ[JK`LKdNLgPLjQLlRMnSMoTMqUMsVMwXNzYN}[N€\O‚^O…_O‡`OŠaPŒbPŽdP‘eP“fP•gQ—hQ˜iQšjRœkRŸlS¡nT¤pV§sX«vZ°z^¶b¼…gËmÊ’sјzØŸ€Þ¤…ã©Šè­ê¯ë°ê¯Žè¬‹å¨‡à¤‚Ûž|Ö™wÑ“qÌŽlljgÃ…bÀ‚_½\»}Zº{X¹zW¸yV·yU·xU·xU·xT·xT·xU·xU·xU·yV·yV·yW¸zW¸{X¹{Y¹|Zº}[º}[º}\º~\¹~]¹~]¸}]·|\µ{\´z[²yZ°wY®vX¬tWªsV¨rU¦pT¤oS¢nS¡mRŸlRkRœjQšiQ˜hQ–gQ”fQ’ePdPcPŠbP‡`O…_O‚]O~[NzZNvWNrUMoTMmSMlRMiQLeOLJAIJ(h>!]KKfQOgQN_LKD>I\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À\À™iQ°tS¸yT¼{UÂYÎŒeï­ˆô´Õ—u¶|\ Z'™LˆD |>
+
+ &3#.$-% .% .& /&!,#,#@70A71XNHXNHWNHWNHZRLYQLYQLXQLWQLWPLUOLSNLQMKOLJMJJ0//.-.,,-&(+"(!'
+ %' %$#" ! !$ 
diff --git a/tests/benchmarks/gui/image/qimagereader/images/test.ppm b/tests/benchmarks/gui/image/qimagereader/images/test.ppm
new file mode 100644
index 0000000000..05d627c0cb
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/test.ppm
@@ -0,0 +1,2 @@
+P6 10 10 1023
+¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬¬ \ No newline at end of file
diff --git a/tests/benchmarks/gui/image/qimagereader/images/test.xpm b/tests/benchmarks/gui/image/qimagereader/images/test.xpm
new file mode 100644
index 0000000000..5fcf075b7f
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/test.xpm
@@ -0,0 +1,260 @@
+/* XPM */
+static char * test_xpm[] = {
+"256 256 1 1",
+" c grey",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/transparent.xpm b/tests/benchmarks/gui/image/qimagereader/images/transparent.xpm
new file mode 100644
index 0000000000..5ddcf0b00e
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/transparent.xpm
@@ -0,0 +1,788 @@
+/* XPM */
+static char *dummy[]={
+"8 8 777 2",
+"#R c none",
+"fn c #000001",
+".e c #000069",
+".f c #00006d",
+".g c #00006e",
+"#d c #0042b4",
+"aJ c #010101",
+"g0 c #010102",
+"dr c #010202",
+"gd c #010203",
+"#J c #0157bb",
+"e. c #020202",
+"du c #020304",
+"fR c #030303",
+"jJ c #040404",
+"hf c #040608",
+"fE c #040609",
+"cO c #04070a",
+"k# c #050505",
+"gC c #050709",
+"ka c #060606",
+"br c #06080a",
+"dY c #06090d",
+"hI c #070707",
+"in c #07090b",
+"cL c #070a0e",
+"cd c #070b0f",
+"e0 c #080808",
+"gZ c #080b0e",
+"eu c #080b0f",
+"dz c #080c10",
+"hD c #090909",
+"fq c #090d11",
+"cH c #090e13",
+"jB c #0a0a0a",
+"#U c #0a0d0f",
+"a4 c #0a0d10",
+"g3 c #0a0d11",
+"fu c #0a0f14",
+"cj c #0a1016",
+"kb c #0b0b0b",
+"#n c #0b0d0f",
+"a1 c #0b0e10",
+"g8 c #0b0f13",
+"f4 c #0b0f14",
+"hE c #0c0c0c",
+"bf c #0c0f12",
+".X c #0c28a0",
+"bT c #0d0d0d",
+"ax c #0d1014",
+"hr c #0d1217",
+"dH c #0d141b",
+"jy c #0e0e0e",
+"aW c #0e1115",
+"eH c #0e141b",
+"bE c #0f0f0f",
+"ar c #0f1317",
+"g5 c #0f1419",
+"hg c #0f151a",
+"fh c #0f151c",
+"dJ c #0f171f",
+"gI c #101010",
+".z c #101094",
+"h. c #10161b",
+"gm c #10161c",
+"eL c #10171f",
+"hK c #111111",
+"at c #11161b",
+"fC c #111820",
+"dA c #111922",
+"aj c #1163c4",
+"bJ c #121212",
+"#Z c #12161a",
+"ba c #12171c",
+"ho c #12181e",
+"jK c #131313",
+"iq c #13191d",
+"cA c #131e2a",
+"c7 c #141414",
+"dR c #141e29",
+"jr c #151515",
+"aA c #151a1f",
+"hq c #151c23",
+"fl c #151e28",
+"eV c #151e29",
+"d4 c #161616",
+"hw c #161e25",
+"jk c #171717",
+"bs c #171d23",
+"g9 c #171f27",
+"eC c #17212b",
+"b9 c #172432",
+"d5 c #181818",
+"as c #181e24",
+"bn c #181f25",
+"bS c #191919",
+"gr c #19232d",
+"ed c #1a1a1a",
+".d c #1a1a6e",
+"gB c #1a242e",
+"eK c #1a2531",
+"dQ c #1a2633",
+"hL c #1b1b1b",
+"g1 c #1b242d",
+"g# c #1b252f",
+"eJ c #1b2734",
+"d1 c #1b2937",
+"bW c #1c1c1c",
+"gW c #1c262f",
+"ci c #1c2b3b",
+"cs c #1c2c3c",
+"e# c #1d1d1d",
+"#3 c #1d232a",
+"f8 c #1d2833",
+"fI c #1d2936",
+"eO c #1d2a38",
+"cw c #1d2e3f",
+"jR c #1e1e1e",
+"a2 c #1e262e",
+"eP c #1e2b39",
+"dE c #1e2d3d",
+"cF c #1e2f41",
+"aO c #1e6ec9",
+"c4 c #1f1f1f",
+"gx c #1f2a36",
+"c# c #1f3043",
+"j2 c #202020",
+"bk c #202931",
+"ht c #202c36",
+"eF c #202f3e",
+"b7 c #203245",
+"cB c #203246",
+"hG c #212121",
+"aE c #212932",
+"bp c #212a32",
+"hl c #212d38",
+"cc c #213347",
+".M c #214eb7",
+"hF c #222222",
+"#7 c #222a32",
+"fw c #223040",
+"eU c #223141",
+"jC c #232323",
+"bb c #232c35",
+"ga c #23303d",
+"cv c #23364a",
+"cn c #23364b",
+"jl c #242424",
+"gj c #243240",
+"cm c #24374c",
+"c. c #24384d",
+"bF c #252525",
+"be c #252f39",
+"gt c #253341",
+"dU c #253649",
+".Y c #256cc9",
+"jG c #262626",
+"h8 c #26333d",
+"hb c #263440",
+"gs c #263443",
+"cr c #263b51",
+"cW c #272727",
+"aC c #27313b",
+"a9 c #27313c",
+"fk c #273748",
+"eR c #27384b",
+"cq c #273d55",
+"jV c #282828",
+"#5 c #28313b",
+"b0 c #2877ce",
+"gL c #292929",
+"#Y c #29323c",
+"hu c #293744",
+"fK c #293a4d",
+"jP c #2a2a2a",
+"#w c #2a323b",
+"bg c #2a3540",
+"dF c #2a3f55",
+"jn c #2b2b2b",
+"a6 c #2b3641",
+"jY c #2c2c2c",
+"h5 c #2c3b47",
+"hp c #2c3c4a",
+"gp c #2c3c4d",
+"cx c #2c445e",
+"bU c #2d2d2d",
+"h# c #2d3e4c",
+"dS c #2d435b",
+"e5 c #2e2e2e",
+"cG c #2e4762",
+"jF c #2f2f2f",
+"aG c #2f3b48",
+"gU c #2f3f4e",
+"ck c #2f4966",
+"j0 c #303030",
+"a0 c #303d4a",
+"he c #304251",
+"cQ c #307ace",
+"e4 c #313131",
+"ew c #31465d",
+"dW c #314862",
+"ce c #314b68",
+"jm c #323232",
+"bm c #323f4d",
+"k. c #333333",
+"e3 c #343434",
+"hi c #344757",
+"eT c #344b64",
+"b8 c #34506f",
+"dj c #347fd1",
+"bX c #353535",
+"f9 c #35485c",
+"ac c #363636",
+"#V c #36434f",
+"fv c #364c64",
+"dV c #36506d",
+"c2 c #373737",
+"ev c #37506a",
+"bI c #383838",
+"bw c #384655",
+"h4 c #384b5a",
+"hk c #384c5d",
+"ea c #393939",
+"bh c #394857",
+"gX c #394d5f",
+"#e c #3981d2",
+"e6 c #3a3a3a",
+"eS c #3a546f",
+"em c #3a81d2",
+"#F c #3b3b3b",
+"eQ c #3b5571",
+"dT c #3b5776",
+"cI c #3b5c7f",
+"gJ c #3c3c3c",
+"hX c #3c5060",
+"fi c #3c546f",
+"gG c #3d3d3d",
+"jv c #3e3e3e",
+"az c #3e4e5e",
+"fL c #3e5772",
+"bK c #3f3f3f",
+"gD c #3f576f",
+"fJ c #3f5874",
+"d2 c #3f86d5",
+"jx c #404040",
+"#8 c #404e5d",
+"bv c #405161",
+"cf c #406389",
+"jL c #414141",
+"iG c #415561",
+"im c #415663",
+"gz c #415971",
+"et c #415d7c",
+"cz c #41658c",
+"f# c #418ad7",
+"jT c #424242",
+"gy c #425b74",
+"fs c #425d7a",
+"#K c #4288d4",
+"jQ c #434343",
+"eX c #438cda",
+"j8 c #444444",
+".L c #44449a",
+"eZ c #454545",
+"#s c #455362",
+"fx c #45617f",
+"cK c #456b94",
+"aP c #458cd5",
+"ab c #464646",
+".n c #46469f",
+"aH c #46586a",
+"gV c #465f74",
+"d0 c #46678c",
+"c9 c #474747",
+"aF c #47596c",
+"a3 c #475a6d",
+"ex c #476687",
+"jU c #484848",
+"by c #485b6e",
+"gq c #48627d",
+"dI c #486b91",
+"cC c #48709b",
+"js c #494949",
+"#2 c #495a6b",
+"ih c #49606f",
+"hm c #49637a",
+"gk c #49647f",
+"j7 c #4a4a4a",
+"dt c #4a6e94",
+"ak c #4a8dd7",
+"b1 c #4a90db",
+"c1 c #4b4b4b",
+"bx c #4b5f72",
+"fr c #4b698a",
+"dG c #4b6e95",
+"co c #4b75a2",
+"fW c #4b91db",
+"bD c #4c4c4c",
+"hc c #4c687f",
+"j6 c #4d4d4d",
+"#Q c #4d5f71",
+"ik c #4d6676",
+"hH c #4e4e4e",
+"#0 c #4e5f72",
+"aD c #4e6277",
+"b. c #4e6377",
+"gN c #4e91dc",
+"c0 c #4f4f4f",
+"bj c #4f6378",
+"dZ c #4f759e",
+"cD c #4f7aa9",
+"hN c #4f8dcd",
+"kd c #505050",
+"#S c #506275",
+"#6 c #506376",
+"ge c #506e8c",
+"af c #515151",
+"b# c #51667b",
+"dk c #5195df",
+"cT c #525252",
+".c c #525280",
+"bq c #52677d",
+"iH c #526b79",
+"fj c #527397",
+"eW c #52769d",
+"dy c #527aa5",
+"hJ c #535353",
+"#x c #536476",
+"eG c #53789f",
+"jM c #545454",
+"#r c #546577",
+"bz c #546a80",
+"dM c #547ca8",
+"fP c #5499e2",
+"jp c #555555",
+"iK c #556f7e",
+"bM c #565656",
+"fB c #56799f",
+"dC c #567fab",
+"gE c #569be2",
+"cU c #575757",
+"h7 c #57748b",
+"gc c #577797",
+"fN c #577ba1",
+"dx c #5780ad",
+"cg c #5787bb",
+"i4 c #585858",
+"iF c #587483",
+"hy c #587792",
+"g2 c #587893",
+"fy c #587ca3",
+"eA c #587ea7",
+"jW c #595959",
+"bu c #597087",
+"ia c #5984b2",
+"ae c #5a5a5a",
+"#t c #5a6c7f",
+"bd c #5a7189",
+"ij c #5a7789",
+"eI c #5a81ab",
+"bR c #5b5b5b",
+"ch c #5b8dc3",
+"en c #5b9be1",
+"ke c #5c5c5c",
+"cP c #5c8fc5",
+"j5 c #5d5d5d",
+"iN c #5d7fa0",
+"gl c #5d80a3",
+"fp c #5d83ac",
+"cl c #5d8fc6",
+"b2 c #5d9de6",
+"c8 c #5e5e5e",
+"hh c #5e7f9c",
+"hn c #5e809d",
+"i3 c #5f5f5f",
+"#1 c #5f758c",
+"a8 c #5f7890",
+"g7 c #5f819e",
+"cJ c #5f93cc",
+"jz c #606060",
+"ct c #6094cd",
+"bO c #616161",
+"eN c #618cb9",
+"jH c #626262",
+"iW c #627c8d",
+"hd c #6285a3",
+"ey c #628dbb",
+"dO c #6290c4",
+"ca c #6297d1",
+"jI c #636363",
+"eM c #638fbd",
+"jN c #646464",
+"fH c #648db9",
+"eE c #648fbe",
+"cb c #649ad5",
+"hA c #64a8e2",
+"jw c #656565",
+"#k c #65798f",
+"fF c #658eba",
+"fA c #658fbb",
+"fa c #65a4e7",
+"b3 c #65a6e8",
+"jX c #666666",
+"hW c #6688a3",
+"gh c #668cb2",
+"aI c #6696cb",
+"dN c #6697cc",
+"bA c #6699ce",
+"cu c #669edb",
+"#C c #676767",
+"f3 c #678db4",
+"dl c #67a6eb",
+"kc c #686868",
+"cS c #696969",
+"dK c #699bd2",
+"cN c #69a2e0",
+"cy c #69a3e1",
+"fX c #69a6e8",
+"jD c #6a6a6a",
+"av c #6a84a1",
+"ds c #6a9cd3",
+"dL c #6a9cd4",
+"jt c #6b6b6b",
+"fo c #6b97c6",
+"cE c #6ba5e4",
+"jS c #6c6c6c",
+"aV c #6c88a4",
+"ir c #6c8ea4",
+"il c #6c8fa5",
+"eD c #6c9bce",
+"dB c #6c9ed7",
+"dq c #6c9fd8",
+"cM c #6ca7e7",
+"cp c #6ca8e8",
+"eo c #6cabed",
+"i2 c #6d6d6d",
+"#T c #6d869f",
+"#W c #6d87a0",
+"gY c #6d94b5",
+"aa c #6d9bcb",
+"eB c #6d9dd0",
+"dw c #6da0d9",
+"dD c #6da1da",
+"b4 c #6dacee",
+"h9 c #6dafe2",
+"i6 c #6e6e6e",
+"bt c #6e8aa7",
+"fM c #6e9bcb",
+"dP c #6ea3dc",
+"b5 c #6eabee",
+"jd c #707070",
+"ix c #7088a2",
+"hx c #7098ba",
+"f7 c #7099c3",
+"dv c #70a5df",
+"b6 c #70adef",
+"iy c #70aff1",
+"dm c #70aff2",
+"jE c #717171",
+"#m c #7188a0",
+"#u c #7189a1",
+"aY c #718eac",
+"gO c #71aced",
+"jq c #727272",
+"gb c #729cc6",
+"hO c #72afee",
+"ib c #72afef",
+"e7 c #737373",
+"#y c #738ba4",
+"#A c #739eca",
+".j c #747474",
+"#9 c #748fab",
+"hs c #749ec1",
+"f6 c #749fca",
+".i c #757575",
+"#q c #758da6",
+"a5 c #7593b1",
+"bo c #7594b2",
+"ii c #759bb3",
+"fb c #75b3f4",
+"ep c #75b4f3",
+"is c #75b8e2",
+"ag c #767676",
+"fz c #76a6da",
+"ez c #76a9e0",
+"dX c #76adeb",
+".h c #777777",
+".m c #777794",
+"iX c #77a6b3",
+"dn c #77b1f4",
+"gK c #787878",
+"#4 c #7894b0",
+"fG c #78a9dd",
+"j# c #797979",
+"bV c #7a7a7a",
+"do c #7ab4f4",
+"jA c #7b7b7b",
+"io c #7ba3bc",
+"dp c #7bb5f5",
+".k c #7c7c7c",
+"bc c #7c9cbd",
+"gi c #7caad8",
+"aQ c #7cb0e7",
+"fY c #7cb8f9",
+"iM c #7cbee2",
+"j1 c #7d7d7d",
+"aX c #7d9ebf",
+"fm c #7db0e7",
+"j4 c #7e7e7e",
+".8 c #7ea5ce",
+"#D c #7f7f7f",
+"hv c #7facd3",
+"gn c #7faedd",
+"eb c #808080",
+"er c #80bdf9",
+"j3 c #818181",
+"hz c #81afd6",
+"gu c #81b0e0",
+"eq c #81bbf9",
+"fc c #81bbfc",
+"#b c #828282",
+"iE c #82aac0",
+"i5 c #838383",
+"ha c #83b1d9",
+"es c #83bcf9",
+"ad c #848484",
+"go c #84b5e6",
+".v c #858585",
+"#p c #85a0bc",
+"bN c #868686",
+"hZ c #86b3d6",
+"fD c #86bcf6",
+"fO c #86bcf7",
+"gP c #86c1ff",
+"di c #878787",
+"ft c #87bdf8",
+"bH c #888888",
+"iT c #88cfe2",
+"jZ c #898989",
+"#z c #89a5c3",
+"g. c #89bbee",
+"fg c #89c0fc",
+"fd c #89c2fd",
+"hP c #89c3ff",
+"jb c #8a8a8a",
+"#o c #8aa6c4",
+"jc c #8b8b8b",
+".S c #8baccf",
+"iI c #8bb6ce",
+"al c #8bb9e8",
+"hj c #8bbde7",
+"gw c #8bbef2",
+"ff c #8bc3ff",
+"fe c #8bc4ff",
+"fZ c #8bc6ff",
+"ec c #8c8c8c",
+"gv c #8cbff3",
+"jO c #8d8d8d",
+"a# c #8dadce",
+"ic c #8dc7ff",
+"#H c #8e8e8e",
+"a. c #8eaed0",
+"#L c #8ebae8",
+"hY c #8ebee3",
+"g4 c #8ec1ec",
+"iO c #8ecbff",
+"ju c #8f8f8f",
+"bi c #8fb5da",
+"h6 c #8fc0e5",
+"f5 c #8fc4f9",
+"jf c #909090",
+"bl c #90b6dc",
+"i1 c #90dfe2",
+"bC c #919191",
+"aB c #91b5dc",
+"aZ c #91b7dd",
+"hV c #91c2e8",
+"gf c #91c6fc",
+"gg c #91c7fd",
+"f0 c #91c8ff",
+"i7 c #929292",
+"gA c #92c8fe",
+"iz c #92ccff",
+"iU c #939393",
+"a7 c #93b9e0",
+"f2 c #93c9ff",
+"gQ c #93ccff",
+"e8 c #949494",
+".y c #9494b0",
+"h1 c #94c6ec",
+"f1 c #94caff",
+"j9 c #959595",
+"#X c #95b7da",
+"cX c #969696",
+"ay c #96bbe3",
+"#f c #96bde8",
+"aR c #96c3ee",
+"gR c #96cfff",
+".J c #979797",
+"hQ c #97cfff",
+"fT c #989898",
+"#j c #98b6d7",
+"#l c #98b7d8",
+"iJ c #98c7e1",
+"g6 c #98cffd",
+"jj c #999999",
+"aS c #99c4ee",
+"h3 c #99ccf4",
+"gS c #99d0ff",
+".l c #9a9a9a",
+".b c #9a9aa4",
+"aw c #9ac1ea",
+"gT c #9ad1ff",
+"dg c #9b9b9b",
+".N c #9bbee8",
+"aq c #9bc1eb",
+"am c #9bc4ee",
+"eg c #9c9c9c",
+"au c #9cc3ed",
+"ao c #9cc5ee",
+"c5 c #9d9d9d",
+"aT c #9dc7ef",
+"hU c #9dd2fb",
+"hR c #9dd3ff",
+"dh c #9e9e9e",
+"#v c #9ebee0",
+".Z c #9ec3e8",
+"#M c #9ec3ed",
+"#N c #9ec5ed",
+"ap c #9ec5ef",
+"aU c #9ec7f0",
+"h2 c #9ed4fd",
+"id c #9ed6ff",
+"df c #9f9f9f",
+"an c #9fc5ee",
+"h0 c #9fd5fe",
+"aM c #a0a0a0",
+"hT c #a0d6ff",
+"jh c #a1a1a1",
+"hS c #a1d7ff",
+"ji c #a2a2a2",
+"#P c #a2c7ed",
+"i8 c #a3a3a3",
+"#O c #a3c8ed",
+"iA c #a3daff",
+"j. c #a4a4a4",
+"je c #a5a5a5",
+"#g c #a5c8ed",
+"ip c #a5dafb",
+"iv c #a6a6a6",
+".F c #a6bed4",
+"de c #a7a7a7",
+"#h c #a7c9ed",
+"if c #a7ddff",
+"ie c #a7deff",
+"eh c #a8a8a8",
+"#i c #a8caee",
+"iL c #a8dbf8",
+"ig c #a8deff",
+"iP c #a8e0ff",
+"iY c #a8e2e6",
+"hC c #a9a9a9",
+".0 c #a9caed",
+"#B c #aaaaaa",
+"fU c #ababab",
+".5 c #abc9e9",
+"iB c #abe3ff",
+"e2 c #acacac",
+".6 c #accaea",
+"jo c #adadad",
+".1 c #adcbed",
+".7 c #adccec",
+"iD c #ade2ff",
+"iC c #ade3ff",
+"fS c #aeaeae",
+".4 c #aecded",
+"db c #afafaf",
+".A c #afbbe7",
+".2 c #afccee",
+".3 c #afceee",
+"d6 c #b0b0b0",
+"iQ c #b0e9ff",
+"bG c #b1b1b1",
+"jg c #b2b2b2",
+"#E c #b3b3b3",
+".O c #b3d1ed",
+"gF c #b4b4b4",
+"cY c #b5b5b5",
+"iR c #b5ebff",
+"hM c #b6b6b6",
+"iS c #b6ecff",
+"d9 c #b7b7b7",
+".U c #b8b8b8",
+".u c #b9b9b9",
+"dd c #bababa",
+".P c #bad4ee",
+"bL c #bbbbbb",
+".Q c #bbd4ef",
+".R c #bbd5f0",
+"e9 c #bcbcbc",
+"c3 c #bdbdbd",
+"f. c #bebebe",
+"d8 c #bfbfbf",
+".o c #bfc2e8",
+"iZ c #bffdff",
+"iw c #c0c0c0",
+"iV c #c1c1c1",
+"i0 c #c1feff",
+"ei c #c2c2c2",
+"ej c #c3c3c3",
+"#a c #c4c4c4",
+"el c #c5c5c5",
+"d7 c #c6c6c6",
+".r c #c6cbda",
+"ek c #c7c7c7",
+"aN c #c8c8c8",
+"#G c #c9c9c9",
+"aL c #cacaca",
+"ai c #cbcbcb",
+".B c #cbddf2",
+"bZ c #cccccc",
+".C c #cce0f3",
+"dc c #cdcdcd",
+"ah c #cecece",
+"da c #cfcfcf",
+".E c #cfe1f3",
+".D c #cfe1f4",
+"#I c #d0d0d0",
+"cV c #d1d1d1",
+"fQ c #d2d2d2",
+"bB c #d3d3d3",
+"#c c #d4d4d4",
+"d# c #d5d5d5",
+"aK c #d6d6d6",
+"cZ c #d7d7d7",
+"c6 c #d8d8d8",
+"gH c #d9d9d9",
+".W c #dadada",
+"gM c #dbdbdb",
+"bQ c #dcdcdc",
+"e1 c #dddddd",
+"cR c #dedede",
+"d. c #dfdfdf",
+"bP c #e0e0e0",
+"i# c #e1e1e1",
+"bY c #e2e2e2",
+".K c #e3e3e3",
+"ee c #e4e4e4",
+"d3 c #e5e5e5",
+"ef c #e6e6e6",
+".p c #e6e9f6",
+"fV c #e7e7e7",
+"eY c #e8e8e8",
+".a c #e9e9e9",
+".q c #e9edf8",
+".V c #eaeaea",
+"## c #ebebeb",
+"Qt c #ececec",
+".w c #ededed",
+".x c #eeeeee",
+"#. c #efefef",
+".# c #f0f0f0",
+".9 c #f1f1f1",
+".I c #f2f2f2",
+".T c #f3f3f3",
+"ja c #f4f4f4",
+"i9 c #f5f5f5",
+"hB c #f6f6f6",
+".H c #f7f7f7",
+".G c #f8f8f8",
+"i. c #f9f9f9",
+"kg c #fafafa",
+"kf c #fbfbfb",
+".t c #fcfcfc",
+".s c #fdfdfd",
+"it c #fefefe",
+"iu c #ffffff",
+"#RQtQtQtQtQtQt#R",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt",
+"#RQtQtQtQtQtQt#R"};
diff --git a/tests/benchmarks/gui/image/qimagereader/images/trolltech.gif b/tests/benchmarks/gui/image/qimagereader/images/trolltech.gif
new file mode 100644
index 0000000000..f674369efc
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/trolltech.gif
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/tst7.bmp b/tests/benchmarks/gui/image/qimagereader/images/tst7.bmp
new file mode 100644
index 0000000000..6d3ac9241c
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/tst7.bmp
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/images/tst7.png b/tests/benchmarks/gui/image/qimagereader/images/tst7.png
new file mode 100644
index 0000000000..96efae4e79
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/images/tst7.png
Binary files differ
diff --git a/tests/benchmarks/gui/image/qimagereader/qimagereader.pro b/tests/benchmarks/gui/image/qimagereader/qimagereader.pro
new file mode 100644
index 0000000000..db5ffcd01d
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/qimagereader.pro
@@ -0,0 +1,27 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qimagereader
+
+SOURCES += tst_qimagereader.cpp
+
+!contains(QT_CONFIG, no-gif):DEFINES += QTEST_HAVE_GIF
+!contains(QT_CONFIG, no-jpeg):DEFINES += QTEST_HAVE_JPEG
+!contains(QT_CONFIG, no-mng):DEFINES += QTEST_HAVE_MNG
+!contains(QT_CONFIG, no-tiff):DEFINES += QTEST_HAVE_TIFF
+QT += network
+
+wince*: {
+ addFiles.files = images
+ addFiles.path = .
+
+ CONFIG(debug, debug|release):{
+ imageFormatsPlugins.files = $$(QTDIR)/plugins/imageformats/*d4.dll
+ }
+
+ CONFIG(release, debug|release):{
+ imageFormatsPlugins.files = $$(QTDIR)/plugins/imageformats/*[^d]4.dll
+ }
+ imageFormatsPlugins.path = imageformats
+ DEPLOYMENT += addFiles imageFormatsPlugins
+}
+
diff --git a/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp b/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp
new file mode 100644
index 0000000000..4dbb17fd51
--- /dev/null
+++ b/tests/benchmarks/gui/image/qimagereader/tst_qimagereader.cpp
@@ -0,0 +1,244 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QBuffer>
+#include <QDebug>
+#include <QFile>
+#include <QImage>
+#include <QImageReader>
+#include <QImageWriter>
+#include <QLabel>
+#include <QPixmap>
+#include <QSet>
+#include <QTcpSocket>
+#include <QTcpServer>
+#include <QTimer>
+
+typedef QMap<QString, QString> QStringMap;
+typedef QList<int> QIntList;
+Q_DECLARE_METATYPE(QImage)
+Q_DECLARE_METATYPE(QRect)
+Q_DECLARE_METATYPE(QSize)
+Q_DECLARE_METATYPE(QColor)
+Q_DECLARE_METATYPE(QStringMap)
+Q_DECLARE_METATYPE(QIntList)
+Q_DECLARE_METATYPE(QIODevice *)
+
+//TESTED_FILES=
+
+class tst_QImageReader : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QImageReader();
+ virtual ~tst_QImageReader();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void readImage_data();
+ void readImage();
+
+ void setScaledSize_data();
+ void setScaledSize();
+
+ void setClipRect_data();
+ void setClipRect();
+
+ void setScaledClipRect_data();
+ void setScaledClipRect();
+
+private:
+ QList< QPair<QString, QByteArray> > images; // filename, format
+};
+
+tst_QImageReader::tst_QImageReader()
+{
+ images << QPair<QString, QByteArray>(QLatin1String("colorful.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("font.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("crash-signed-char.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("4bpp-rle.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("tst7.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("16bpp.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("negativeheight.bmp"), QByteArray("bmp"));
+ images << QPair<QString, QByteArray>(QLatin1String("marble.xpm"), QByteArray("xpm"));
+ images << QPair<QString, QByteArray>(QLatin1String("kollada.png"), QByteArray("png"));
+ images << QPair<QString, QByteArray>(QLatin1String("teapot.ppm"), QByteArray("ppm"));
+ images << QPair<QString, QByteArray>(QLatin1String("runners.ppm"), QByteArray("ppm"));
+ images << QPair<QString, QByteArray>(QLatin1String("test.ppm"), QByteArray("ppm"));
+ images << QPair<QString, QByteArray>(QLatin1String("gnus.xbm"), QByteArray("xbm"));
+#if defined QTEST_HAVE_JPEG
+ images << QPair<QString, QByteArray>(QLatin1String("beavis.jpg"), QByteArray("jpeg"));
+ images << QPair<QString, QByteArray>(QLatin1String("YCbCr_cmyk.jpg"), QByteArray("jpeg"));
+ images << QPair<QString, QByteArray>(QLatin1String("YCbCr_rgb.jpg"), QByteArray("jpeg"));
+ images << QPair<QString, QByteArray>(QLatin1String("task210380.jpg"), QByteArray("jpeg"));
+#endif
+#if defined QTEST_HAVE_GIF
+ images << QPair<QString, QByteArray>(QLatin1String("earth.gif"), QByteArray("gif"));
+ images << QPair<QString, QByteArray>(QLatin1String("trolltech.gif"), QByteArray("gif"));
+#endif
+#if defined QTEST_HAVE_MNG
+ images << QPair<QString, QByteArray>(QLatin1String("ball.mng"), QByteArray("mng"));
+ images << QPair<QString, QByteArray>(QLatin1String("fire.mng"), QByteArray("mng"));
+#endif
+}
+
+tst_QImageReader::~tst_QImageReader()
+{
+}
+
+void tst_QImageReader::init()
+{
+}
+
+void tst_QImageReader::cleanup()
+{
+}
+
+void tst_QImageReader::readImage_data()
+{
+ QTest::addColumn<QString>("fileName");
+ QTest::addColumn<QByteArray>("format");
+
+ for (int i = 0; i < images.size(); ++i) {
+ const QString file = images[i].first;
+ const QByteArray format = images[i].second;
+ QTest::newRow(qPrintable(file)) << file << format;
+ }
+}
+
+void tst_QImageReader::readImage()
+{
+ QFETCH(QString, fileName);
+ QFETCH(QByteArray, format);
+
+ QBENCHMARK {
+ QImageReader io("images/" + fileName, format);
+ QImage image = io.read();
+ QVERIFY(!image.isNull());
+ }
+}
+
+void tst_QImageReader::setScaledSize_data()
+{
+ QTest::addColumn<QString>("fileName");
+ QTest::addColumn<QByteArray>("format");
+ QTest::addColumn<QSize>("newSize");
+
+ for (int i = 0; i < images.size(); ++i) {
+ const QString file = images[i].first;
+ const QByteArray format = images[i].second;
+ QSize size(200, 200);
+ if (file == QLatin1String("teapot"))
+ size = QSize(400, 400);
+ else if (file == QLatin1String("test.ppm"))
+ size = QSize(10, 10);
+ QTest::newRow(qPrintable(file)) << file << format << size;
+ }
+}
+
+void tst_QImageReader::setScaledSize()
+{
+ QFETCH(QString, fileName);
+ QFETCH(QSize, newSize);
+ QFETCH(QByteArray, format);
+
+ QBENCHMARK {
+ QImageReader reader("images/" + fileName, format);
+ reader.setScaledSize(newSize);
+ QImage image = reader.read();
+ QCOMPARE(image.size(), newSize);
+ }
+}
+
+void tst_QImageReader::setClipRect_data()
+{
+ QTest::addColumn<QString>("fileName");
+ QTest::addColumn<QByteArray>("format");
+ QTest::addColumn<QRect>("newRect");
+
+ for (int i = 0; i < images.size(); ++i) {
+ const QString file = images[i].first;
+ const QByteArray format = images[i].second;
+ QTest::newRow(qPrintable(file)) << file << format << QRect(0, 0, 50, 50);
+ }
+}
+
+void tst_QImageReader::setClipRect()
+{
+ QFETCH(QString, fileName);
+ QFETCH(QRect, newRect);
+ QFETCH(QByteArray, format);
+
+ QBENCHMARK {
+ QImageReader reader("images/" + fileName, format);
+ reader.setClipRect(newRect);
+ QImage image = reader.read();
+ QCOMPARE(image.rect(), newRect);
+ }
+}
+
+void tst_QImageReader::setScaledClipRect_data()
+{
+ setClipRect_data();
+}
+
+void tst_QImageReader::setScaledClipRect()
+{
+ QFETCH(QString, fileName);
+ QFETCH(QRect, newRect);
+ QFETCH(QByteArray, format);
+
+ QBENCHMARK {
+ QImageReader reader("images/" + fileName, format);
+ reader.setScaledSize(QSize(300, 300));
+ reader.setScaledClipRect(newRect);
+ QImage image = reader.read();
+ QCOMPARE(image.rect(), newRect);
+ }
+}
+
+QTEST_MAIN(tst_QImageReader)
+#include "tst_qimagereader.moc"
diff --git a/tests/benchmarks/gui/image/qpixmap/qpixmap.pro b/tests/benchmarks/gui/image/qpixmap/qpixmap.pro
new file mode 100644
index 0000000000..201ac9ea99
--- /dev/null
+++ b/tests/benchmarks/gui/image/qpixmap/qpixmap.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qpixmap
+
+SOURCES += tst_qpixmap.cpp
diff --git a/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp b/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp
new file mode 100644
index 0000000000..ac5829e853
--- /dev/null
+++ b/tests/benchmarks/gui/image/qpixmap/tst_qpixmap.cpp
@@ -0,0 +1,315 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QBitmap>
+#include <QDir>
+#include <QImage>
+#include <QImageReader>
+#include <QPainter>
+#include <QPixmap>
+#include <private/qpixmap_raster_p.h>
+
+class tst_QPixmap : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QPixmap();
+
+private slots:
+ void fill_data();
+ void fill();
+
+ void scaled_data();
+ void scaled();
+ void transformed_data();
+ void transformed();
+ void mask_data();
+ void mask();
+
+ void fromImageReader_data();
+ void fromImageReader();
+};
+
+Q_DECLARE_METATYPE(QImage::Format)
+Q_DECLARE_METATYPE(Qt::AspectRatioMode)
+Q_DECLARE_METATYPE(Qt::TransformationMode)
+
+QPixmap rasterPixmap(int width, int height)
+{
+ QPixmapData *data =
+ new QRasterPixmapData(QPixmapData::PixmapType);
+
+ data->resize(width, height);
+
+ return QPixmap(data);
+}
+
+QPixmap rasterPixmap(const QSize &size)
+{
+ return rasterPixmap(size.width(), size.height());
+}
+
+QPixmap rasterPixmap(const QImage &image)
+{
+ QPixmapData *data =
+ new QRasterPixmapData(QPixmapData::PixmapType);
+
+ data->fromImage(image, Qt::AutoColor);
+
+ return QPixmap(data);
+}
+
+tst_QPixmap::tst_QPixmap()
+{
+}
+
+void tst_QPixmap::fill_data()
+{
+ QTest::addColumn<bool>("opaque");
+ QTest::addColumn<int>("width");
+ QTest::addColumn<int>("height");
+
+ QTest::newRow("opaque 16x16") << true << 16 << 16;
+ QTest::newRow("!opaque 16x16") << false << 16 << 16;
+ QTest::newRow("opaque 587x128") << true << 587 << 128;
+ QTest::newRow("!opaque 587x128") << false << 587 << 128;
+}
+
+void tst_QPixmap::fill()
+{
+ QFETCH(bool, opaque);
+ QFETCH(int, width);
+ QFETCH(int, height);
+
+ const QColor color = opaque ? QColor(255, 0, 0) : QColor(255, 0, 0, 200);
+ QPixmap pixmap = rasterPixmap(width, height);
+
+ QBENCHMARK {
+ pixmap.fill(color);
+ }
+}
+
+void tst_QPixmap::scaled_data()
+{
+ QTest::addColumn<QSize>("size");
+ QTest::addColumn<QSize>("scale");
+ QTest::addColumn<Qt::AspectRatioMode>("ratioMode");
+ QTest::addColumn<Qt::TransformationMode>("transformMode");
+
+ QTest::newRow("16x16 => 32x32") << QSize(16, 16) << QSize(32, 32)
+ << Qt::IgnoreAspectRatio
+ << Qt::FastTransformation;
+ QTest::newRow("100x100 => 200x200") << QSize(100, 100) << QSize(200, 200)
+ << Qt::IgnoreAspectRatio
+ << Qt::FastTransformation;
+ QTest::newRow("100x100 => 200x200") << QSize(100, 100) << QSize(200, 200)
+ << Qt::IgnoreAspectRatio
+ << Qt::FastTransformation;
+ QTest::newRow("80x80 => 200x200") << QSize(137, 137) << QSize(200, 200)
+ << Qt::IgnoreAspectRatio
+ << Qt::FastTransformation;
+
+}
+
+void tst_QPixmap::scaled()
+{
+ QFETCH(QSize, size);
+ QFETCH(QSize, scale);
+ QFETCH(Qt::AspectRatioMode, ratioMode);
+ QFETCH(Qt::TransformationMode, transformMode);
+
+ QPixmap opaque = rasterPixmap(size);
+ QPixmap transparent = rasterPixmap(size);
+ opaque.fill(QColor(255, 0, 0));
+ transparent.fill(QColor(255, 0, 0, 200));
+
+ QPixmap scaled1;
+ QPixmap scaled2;
+ QBENCHMARK {
+ scaled1 = opaque.scaled(scale, ratioMode, transformMode);
+ scaled2 = transparent.scaled(scale, ratioMode, transformMode);
+ }
+}
+
+void tst_QPixmap::transformed_data()
+{
+ QTest::addColumn<QSize>("size");
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<Qt::TransformationMode>("transformMode");
+
+ QTest::newRow("16x16 rotate(90)") << QSize(16, 16)
+ << QTransform().rotate(90)
+ << Qt::FastTransformation;
+ QTest::newRow("16x16 rotate(199)") << QSize(16, 16)
+ << QTransform().rotate(199)
+ << Qt::FastTransformation;
+ QTest::newRow("16x16 shear(2,1)") << QSize(16, 16)
+ << QTransform().shear(2, 1)
+ << Qt::FastTransformation;
+ QTest::newRow("16x16 rotate(199).shear(2,1)") << QSize(16, 16)
+ << QTransform().rotate(199).shear(2, 1)
+ << Qt::FastTransformation;
+ QTest::newRow("100x100 rotate(90)") << QSize(100, 100)
+ << QTransform().rotate(90)
+ << Qt::FastTransformation;
+ QTest::newRow("100x100 rotate(199)") << QSize(100, 100)
+ << QTransform().rotate(199)
+ << Qt::FastTransformation;
+ QTest::newRow("100x100 shear(2,1)") << QSize(100, 100)
+ << QTransform().shear(2, 1)
+ << Qt::FastTransformation;
+ QTest::newRow("100x100 shear(2,1) smooth") << QSize(100, 100)
+ << QTransform().shear(2, 1)
+ << Qt::SmoothTransformation;
+ QTest::newRow("100x100 rotate(199).shear(2,1)") << QSize(100, 100)
+ << QTransform().rotate(199).shear(2, 1)
+ << Qt::FastTransformation;
+}
+
+void tst_QPixmap::transformed()
+{
+ QFETCH(QSize, size);
+ QFETCH(QTransform, transform);
+ QFETCH(Qt::TransformationMode, transformMode);
+
+ QPixmap opaque = rasterPixmap(size);
+ QPixmap transparent = rasterPixmap(size);
+ opaque.fill(QColor(255, 0, 0));
+ transparent.fill(QColor(255, 0, 0, 200));
+
+ QPixmap transformed1;
+ QPixmap transformed2;
+ QBENCHMARK {
+ transformed1 = opaque.transformed(transform, transformMode);
+ transformed2 = transparent.transformed(transform, transformMode);
+ }
+}
+
+void tst_QPixmap::mask_data()
+{
+ QTest::addColumn<QSize>("size");
+
+ QTest::newRow("1x1") << QSize(1, 1);
+ QTest::newRow("9x9") << QSize(9, 9);
+ QTest::newRow("16x16") << QSize(16, 16);
+ QTest::newRow("128x128") << QSize(128, 128);
+ QTest::newRow("333x333") << QSize(333, 333);
+ QTest::newRow("2048x128") << QSize(2048, 128);
+}
+
+void tst_QPixmap::mask()
+{
+ QFETCH(QSize, size);
+
+ QPixmap src = rasterPixmap(size);
+ src.fill(Qt::transparent);
+ {
+ QPainter p(&src);
+ p.drawLine(QPoint(0, 0), QPoint(src.width(), src.height()));
+ }
+
+ QBENCHMARK {
+ QBitmap bitmap = src.mask();
+ QVERIFY(bitmap.size() == src.size());
+ }
+}
+
+void tst_QPixmap::fromImageReader_data()
+{
+ const QString tempDir = QDir::tempPath();
+ QTest::addColumn<QString>("filename");
+
+ QImage image(2000, 2000, QImage::Format_ARGB32);
+ image.fill(0);
+ {
+ // Generate an image with opaque and transparent pixels
+ // with an interesting distribution.
+ QPainter painter(&image);
+
+ QRadialGradient radialGrad(QPointF(1000, 1000), 1000);
+ radialGrad.setColorAt(0, QColor(255, 0, 0, 255));
+ radialGrad.setColorAt(0.5, QColor(0, 255, 0, 255));
+ radialGrad.setColorAt(0.9, QColor(0, 0, 255, 100));
+ radialGrad.setColorAt(1, QColor(0, 0, 0, 0));
+
+ painter.fillRect(image.rect(), radialGrad);
+ }
+ image.save("test.png");
+
+ // RGB32
+ const QString rgb32Path = tempDir + QString::fromLatin1("/rgb32.jpg");
+ image.save(rgb32Path);
+ QTest::newRow("gradient RGB32") << rgb32Path;
+
+ // ARGB32
+ const QString argb32Path = tempDir + QString::fromLatin1("/argb32.png");
+ image.save(argb32Path);
+ QTest::newRow("gradient ARGB32") << argb32Path;
+
+ // Indexed 8
+ const QString indexed8Path = tempDir + QString::fromLatin1("/indexed8.gif");
+ image.save(indexed8Path);
+ QTest::newRow("gradient indexed8") << indexed8Path;
+
+}
+
+void tst_QPixmap::fromImageReader()
+{
+ QFETCH(QString, filename);
+ // warmup
+ {
+ QImageReader imageReader(filename);
+ QPixmap::fromImageReader(&imageReader);
+ }
+
+ QBENCHMARK {
+ QImageReader imageReader(filename);
+ QPixmap::fromImageReader(&imageReader);
+ }
+ QFile::remove(filename);
+}
+
+
+QTEST_MAIN(tst_QPixmap)
+
+#include "tst_qpixmap.moc"
diff --git a/tests/benchmarks/gui/image/qpixmapcache/qpixmapcache.pro b/tests/benchmarks/gui/image/qpixmapcache/qpixmapcache.pro
new file mode 100644
index 0000000000..78ac97d259
--- /dev/null
+++ b/tests/benchmarks/gui/image/qpixmapcache/qpixmapcache.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qpixmapcache
+TEMPLATE = app
+# Input
+SOURCES += tst_qpixmapcache.cpp
diff --git a/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp b/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp
new file mode 100644
index 0000000000..6fad8638e8
--- /dev/null
+++ b/tests/benchmarks/gui/image/qpixmapcache/tst_qpixmapcache.cpp
@@ -0,0 +1,226 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QPixmapCache>
+//TESTED_FILES=
+
+class tst_QPixmapCache : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QPixmapCache();
+ virtual ~tst_QPixmapCache();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void insert_data();
+ void insert();
+ void find_data();
+ void find();
+ void styleUseCaseComplexKey();
+ void styleUseCaseComplexKey_data();
+};
+
+tst_QPixmapCache::tst_QPixmapCache()
+{
+}
+
+tst_QPixmapCache::~tst_QPixmapCache()
+{
+}
+
+void tst_QPixmapCache::init()
+{
+}
+
+void tst_QPixmapCache::cleanup()
+{
+}
+
+void tst_QPixmapCache::insert_data()
+{
+ QTest::addColumn<bool>("cacheType");
+ QTest::newRow("QPixmapCache") << true;
+ QTest::newRow("QPixmapCache (int API)") << false;
+}
+
+QList<QPixmapCache::Key> keys;
+
+void tst_QPixmapCache::insert()
+{
+ QFETCH(bool, cacheType);
+ QPixmap p;
+ if (cacheType) {
+ QBENCHMARK {
+ for (int i = 0 ; i <= 10000 ; i++)
+ {
+ QString tmp;
+ tmp.sprintf("my-key-%d", i);
+ QPixmapCache::insert(tmp, p);
+ }
+ }
+ } else {
+ QBENCHMARK {
+ for (int i = 0 ; i <= 10000 ; i++)
+ keys.append(QPixmapCache::insert(p));
+ }
+ }
+}
+
+void tst_QPixmapCache::find_data()
+{
+ QTest::addColumn<bool>("cacheType");
+ QTest::newRow("QPixmapCache") << true;
+ QTest::newRow("QPixmapCache (int API)") << false;
+}
+
+void tst_QPixmapCache::find()
+{
+ QFETCH(bool, cacheType);
+ QPixmap p;
+ if (cacheType) {
+ QBENCHMARK {
+ QString tmp;
+ for (int i = 0 ; i <= 10000 ; i++)
+ {
+ tmp.sprintf("my-key-%d", i);
+ QPixmapCache::find(tmp, p);
+ }
+ }
+ } else {
+ QBENCHMARK {
+ for (int i = 0 ; i <= 10000 ; i++)
+ QPixmapCache::find(keys.at(i), &p);
+ }
+ }
+
+}
+
+void tst_QPixmapCache::styleUseCaseComplexKey_data()
+{
+ QTest::addColumn<bool>("cacheType");
+ QTest::newRow("QPixmapCache") << true;
+ QTest::newRow("QPixmapCache (int API)") << false;
+}
+
+struct styleStruct {
+ QString key;
+ uint state;
+ uint direction;
+ uint complex;
+ uint palette;
+ int width;
+ int height;
+ bool operator==(const styleStruct &str) const
+ {
+ return str.state == state && str.direction == direction
+ && str.complex == complex && str.palette == palette && str.width == width
+ && str.height == height && str.key == key;
+ }
+};
+
+uint qHash(const styleStruct &myStruct)
+{
+ return qHash(myStruct.state);
+}
+
+void tst_QPixmapCache::styleUseCaseComplexKey()
+{
+ QFETCH(bool, cacheType);
+ QPixmap p;
+ if (cacheType) {
+ QBENCHMARK {
+ for (int i = 0 ; i <= 10000 ; i++)
+ {
+ QString tmp;
+ tmp.sprintf("%s-%d-%d-%d-%d-%d-%d", QString("my-progressbar-%1").arg(i).toLatin1().constData(), 5, 3, 0, 358, 100, 200);
+ QPixmapCache::insert(tmp, p);
+ }
+
+ for (int i = 0 ; i <= 10000 ; i++)
+ {
+ QString tmp;
+ tmp.sprintf("%s-%d-%d-%d-%d-%d-%d", QString("my-progressbar-%1").arg(i).toLatin1().constData(), 5, 3, 0, 358, 100, 200);
+ QPixmapCache::find(tmp, p);
+ }
+ }
+ } else {
+ QHash<styleStruct, QPixmapCache::Key> hash;
+ QBENCHMARK {
+ for (int i = 0 ; i <= 10000 ; i++)
+ {
+ styleStruct myStruct;
+ myStruct.key = QString("my-progressbar-%1").arg(i);
+ myStruct.key = 5;
+ myStruct.key = 4;
+ myStruct.key = 3;
+ myStruct.palette = 358;
+ myStruct.width = 100;
+ myStruct.key = 200;
+ QPixmapCache::Key key = QPixmapCache::insert(p);
+ hash.insert(myStruct, key);
+ }
+ for (int i = 0 ; i <= 10000 ; i++)
+ {
+ styleStruct myStruct;
+ myStruct.key = QString("my-progressbar-%1").arg(i);
+ myStruct.key = 5;
+ myStruct.key = 4;
+ myStruct.key = 3;
+ myStruct.palette = 358;
+ myStruct.width = 100;
+ myStruct.key = 200;
+ QPixmapCache::Key key = hash.value(myStruct);
+ QPixmapCache::find(key, &p);
+ }
+ }
+ }
+
+}
+
+
+QTEST_MAIN(tst_QPixmapCache)
+#include "tst_qpixmapcache.moc"
diff --git a/tests/benchmarks/gui/itemviews/itemviews.pro b/tests/benchmarks/gui/itemviews/itemviews.pro
new file mode 100644
index 0000000000..be0ee558dc
--- /dev/null
+++ b/tests/benchmarks/gui/itemviews/itemviews.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qtableview
diff --git a/tests/benchmarks/gui/itemviews/qtableview/qtableview.pro b/tests/benchmarks/gui/itemviews/qtableview/qtableview.pro
new file mode 100644
index 0000000000..3f4d4e135c
--- /dev/null
+++ b/tests/benchmarks/gui/itemviews/qtableview/qtableview.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qtableview
+
+SOURCES += tst_qtableview.cpp
+
diff --git a/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp b/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp
new file mode 100644
index 0000000000..43bdfab43e
--- /dev/null
+++ b/tests/benchmarks/gui/itemviews/qtableview/tst_qtableview.cpp
@@ -0,0 +1,367 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QDebug>
+#include <QTableView>
+#include <QImage>
+#include <QPainter>
+
+//TESTED_FILES=
+
+class QtTestTableModel: public QAbstractTableModel
+{
+ Q_OBJECT
+
+
+public:
+ QtTestTableModel(int rows = 0, int columns = 0, QObject *parent = 0)
+ : QAbstractTableModel(parent),
+ row_count(rows),
+ column_count(columns) {}
+
+ int rowCount(const QModelIndex& = QModelIndex()) const { return row_count; }
+ int columnCount(const QModelIndex& = QModelIndex()) const { return column_count; }
+ bool isEditable(const QModelIndex &) const { return true; }
+
+ QVariant data(const QModelIndex &idx, int role) const
+ {
+ if (!idx.isValid() || idx.row() >= row_count || idx.column() >= column_count) {
+ qWarning() << "Invalid modelIndex [%d,%d,%p]" << idx;
+ return QVariant();
+ }
+
+ if (role == Qt::DisplayRole || role == Qt::EditRole)
+ return QString("[%1,%2,%3]").arg(idx.row()).arg(idx.column()).arg(0);
+
+ return QVariant();
+ }
+
+ bool insertRows(int start, int count, const QModelIndex &parent = QModelIndex())
+ {
+ if (start < 0 || start > row_count)
+ return false;
+
+ beginInsertRows(parent, start, start + count - 1);
+ row_count += count;
+ endInsertRows();
+ return true;
+ }
+
+ bool removeRows(int start, int count, const QModelIndex &parent = QModelIndex())
+ {
+ if (start < 0 || start >= row_count || row_count < count)
+ return false;
+
+ beginRemoveRows(parent, start, start + count - 1);
+ row_count -= count;
+ endRemoveRows();
+ return true;
+ }
+
+ bool insertColumns(int start, int count, const QModelIndex &parent = QModelIndex())
+ {
+ if (start < 0 || start > column_count)
+ return false;
+
+ beginInsertColumns(parent, start, start + count - 1);
+ column_count += count;
+ endInsertColumns();
+ return true;
+ }
+
+ bool removeColumns(int start, int count, const QModelIndex &parent = QModelIndex())
+ {
+ if (start < 0 || start >= column_count || column_count < count)
+ return false;
+
+ beginRemoveColumns(parent, start, start + count - 1);
+ column_count -= count;
+ endRemoveColumns();
+ return true;
+ }
+
+ int row_count;
+ int column_count;
+};
+
+
+
+
+class tst_QTableView : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QTableView();
+ virtual ~tst_QTableView();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void spanInit();
+ void spanDraw();
+ void spanSelectColumn();
+ void spanSelectAll();
+ void rowInsertion_data();
+ void rowInsertion();
+ void rowRemoval_data();
+ void rowRemoval();
+ void columnInsertion_data();
+ void columnInsertion();
+ void columnRemoval_data();
+ void columnRemoval();
+private:
+ static inline void spanInit_helper(QTableView *);
+};
+
+tst_QTableView::tst_QTableView()
+{
+}
+
+tst_QTableView::~tst_QTableView()
+{
+}
+
+void tst_QTableView::init()
+{
+}
+
+void tst_QTableView::cleanup()
+{
+}
+
+void tst_QTableView::spanInit_helper(QTableView *view)
+{
+ for (int i=0; i < 40; i++) {
+ view->setSpan(1+i%2, 1+4*i, 1+i%3, 2);
+ }
+
+ for (int i=1; i < 40; i++) {
+ view->setSpan(6 + i*7, 4, 4, 50);
+ }
+}
+
+void tst_QTableView::spanInit()
+{
+ QtTestTableModel model(500, 500);
+ QTableView v;
+ v.setModel(&model);
+
+ QBENCHMARK {
+ spanInit_helper(&v);
+ }
+}
+
+void tst_QTableView::spanDraw()
+{
+ QtTestTableModel model(500, 500);
+ QTableView v;
+ v.setModel(&model);
+
+ spanInit_helper(&v);
+ v.show();
+ v.resize(500,500);
+ QTest::qWait(30);
+
+ QImage image(500, 500, QImage::Format_ARGB32_Premultiplied);
+ QPainter painter(&image);
+ QBENCHMARK {
+ v.render(&painter);
+ }
+}
+
+void tst_QTableView::spanSelectAll()
+{
+ QtTestTableModel model(500, 500);
+ QTableView v;
+ v.setModel(&model);
+
+ spanInit_helper(&v);
+ v.show();
+ QTest::qWait(30);
+
+ QBENCHMARK {
+ v.selectAll();
+ }
+}
+
+void tst_QTableView::spanSelectColumn()
+{
+ QtTestTableModel model(500, 500);
+ QTableView v;
+ v.setModel(&model);
+
+ spanInit_helper(&v);
+ v.show();
+ QTest::qWait(30);
+
+ QBENCHMARK {
+ v.selectColumn(22);
+ }
+}
+
+typedef QVector<QRect> SpanList;
+Q_DECLARE_METATYPE(SpanList)
+
+void spansData()
+{
+ QTest::addColumn<SpanList>("spans");
+
+ QTest::newRow("Without spans")
+ << SpanList();
+
+ QTest::newRow("With spans")
+ << (SpanList()
+ << QRect(0, 1, 1, 2)
+ << QRect(1, 2, 1, 2)
+ << QRect(2, 2, 1, 5)
+ << QRect(2, 8, 1, 2)
+ << QRect(3, 4, 1, 2)
+ << QRect(4, 4, 1, 4)
+ << QRect(5, 6, 1, 3)
+ << QRect(6, 7, 1, 3));
+}
+
+void tst_QTableView::rowInsertion_data()
+{
+ spansData();
+}
+
+void tst_QTableView::rowInsertion()
+{
+ QFETCH(SpanList, spans);
+
+ QtTestTableModel model(10, 10);
+ QTableView view;
+ view.setModel(&model);
+
+ foreach (QRect span, spans)
+ view.setSpan(span.top(), span.left(), span.height(), span.width());
+ view.show();
+ QTest::qWait(50);
+
+ QBENCHMARK_ONCE {
+ view.model()->insertRows(0, 2);
+ view.model()->insertRows(5, 2);
+ view.model()->insertRows(8, 2);
+ view.model()->insertRows(12, 2);
+ }
+}
+
+void tst_QTableView::rowRemoval_data()
+{
+ spansData();
+}
+
+void tst_QTableView::rowRemoval()
+{
+ QFETCH(SpanList, spans);
+
+ QtTestTableModel model(10, 10);
+ QTableView view;
+ view.setModel(&model);
+
+ foreach (QRect span, spans)
+ view.setSpan(span.top(), span.left(), span.height(), span.width());
+ view.show();
+ QTest::qWait(50);
+
+ QBENCHMARK_ONCE {
+ view.model()->removeRows(3, 3);
+ }
+}
+
+void tst_QTableView::columnInsertion_data()
+{
+ spansData();
+}
+
+void tst_QTableView::columnInsertion()
+{
+ QFETCH(SpanList, spans);
+
+ QtTestTableModel model(10, 10);
+ QTableView view;
+ view.setModel(&model);
+
+ // Same set as for rowInsertion, just swapping columns and rows.
+ foreach (QRect span, spans)
+ view.setSpan(span.left(), span.top(), span.width(), span.height());
+ view.show();
+ QTest::qWait(50);
+
+ QBENCHMARK_ONCE {
+ view.model()->insertColumns(0, 2);
+ view.model()->insertColumns(5, 2);
+ view.model()->insertColumns(8, 2);
+ view.model()->insertColumns(12, 2);
+ }
+}
+
+void tst_QTableView::columnRemoval_data()
+{
+ spansData();
+}
+
+void tst_QTableView::columnRemoval()
+{
+ QFETCH(SpanList, spans);
+
+ QtTestTableModel model(10, 10);
+ QTableView view;
+ view.setModel(&model);
+
+ // Same set as for rowRemoval, just swapping columns and rows.
+ foreach (QRect span, spans)
+ view.setSpan(span.left(), span.top(), span.width(), span.height());
+ view.show();
+ QTest::qWait(50);
+
+ QBENCHMARK_ONCE {
+ view.model()->removeColumns(3, 3);
+ }
+}
+
+QTEST_MAIN(tst_QTableView)
+#include "tst_qtableview.moc"
diff --git a/tests/benchmarks/gui/kernel/kernel.pro b/tests/benchmarks/gui/kernel/kernel.pro
new file mode 100644
index 0000000000..a50aad2014
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/kernel.pro
@@ -0,0 +1,4 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qapplication \
+ qwidget
diff --git a/tests/benchmarks/gui/kernel/qapplication/main.cpp b/tests/benchmarks/gui/kernel/qapplication/main.cpp
new file mode 100644
index 0000000000..9647f6e642
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qapplication/main.cpp
@@ -0,0 +1,71 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QApplication>
+
+#include <qtest.h>
+
+
+class tst_qapplication : public QObject
+{
+ Q_OBJECT
+private slots:
+ void ctor();
+};
+
+/*
+ Test the performance of the QApplication constructor.
+
+ Note: results from the second start on can be misleading,
+ since all global statics are already initialized.
+*/
+void tst_qapplication::ctor()
+{
+ // simulate reasonable argc, argv
+ int argc = 1;
+ char *argv[] = { "tst_qapplication" };
+ QBENCHMARK {
+ QApplication app(argc, argv);
+ }
+}
+
+QTEST_APPLESS_MAIN(tst_qapplication)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/kernel/qapplication/qapplication.pro b/tests/benchmarks/gui/kernel/qapplication/qapplication.pro
new file mode 100644
index 0000000000..e12a60c54c
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qapplication/qapplication.pro
@@ -0,0 +1,10 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qapplication
+DEPENDPATH += .
+INCLUDEPATH += .
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/kernel/qguimetatype/qguimetatype.pro b/tests/benchmarks/gui/kernel/qguimetatype/qguimetatype.pro
new file mode 100644
index 0000000000..7ef99e4cb4
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qguimetatype/qguimetatype.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qguimetatype
+
+SOURCES += tst_qguimetatype.cpp
+
diff --git a/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp b/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp
new file mode 100644
index 0000000000..fd5132c02f
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qguimetatype/tst_qguimetatype.cpp
@@ -0,0 +1,113 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QtCore/qmetatype.h>
+
+class tst_QGuiMetaType : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QGuiMetaType();
+ virtual ~tst_QGuiMetaType();
+
+private slots:
+ void constructGuiType_data();
+ void constructGuiType();
+ void constructGuiTypeCopy_data();
+ void constructGuiTypeCopy();
+};
+
+tst_QGuiMetaType::tst_QGuiMetaType()
+{
+}
+
+tst_QGuiMetaType::~tst_QGuiMetaType()
+{
+}
+
+void tst_QGuiMetaType::constructGuiType_data()
+{
+ QTest::addColumn<int>("typeId");
+ for (int i = QMetaType::FirstGuiType; i <= QMetaType::LastGuiType; ++i)
+ QTest::newRow(QMetaType::typeName(i)) << i;
+}
+
+// Tests how fast QMetaType can default-construct and destroy a Qt GUI
+// type. The purpose of this benchmark is to measure the overhead of
+// using type id-based creation compared to creating the type directly
+// (i.e. "T *t = new T(); delete t;").
+void tst_QGuiMetaType::constructGuiType()
+{
+ QFETCH(int, typeId);
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i) {
+ void *data = QMetaType::construct(typeId, (void *)0);
+ QMetaType::destroy(typeId, data);
+ }
+ }
+}
+
+void tst_QGuiMetaType::constructGuiTypeCopy_data()
+{
+ constructGuiType_data();
+}
+
+// Tests how fast QMetaType can copy-construct and destroy a Qt GUI
+// type. The purpose of this benchmark is to measure the overhead of
+// using type id-based creation compared to creating the type directly
+// (i.e. "T *t = new T(other); delete t;").
+void tst_QGuiMetaType::constructGuiTypeCopy()
+{
+ QFETCH(int, typeId);
+ QVariant other(typeId, (void *)0);
+ const void *copy = other.constData();
+ QBENCHMARK {
+ for (int i = 0; i < 100000; ++i) {
+ void *data = QMetaType::construct(typeId, copy);
+ QMetaType::destroy(typeId, data);
+ }
+ }
+}
+
+QTEST_MAIN(tst_QGuiMetaType)
+#include "tst_qguimetatype.moc"
diff --git a/tests/benchmarks/gui/kernel/qguivariant/qguivariant.pro b/tests/benchmarks/gui/kernel/qguivariant/qguivariant.pro
new file mode 100644
index 0000000000..4e05dd7d4b
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qguivariant/qguivariant.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qguivariant
+
+SOURCES += tst_qguivariant.cpp
+
diff --git a/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp b/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp
new file mode 100644
index 0000000000..a9e49b5de2
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qguivariant/tst_qguivariant.cpp
@@ -0,0 +1,111 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QtCore/qvariant.h>
+
+#define ITERATION_COUNT 1e5
+
+class tst_QGuiVariant : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QGuiVariant();
+ virtual ~tst_QGuiVariant();
+
+private slots:
+ void createGuiType_data();
+ void createGuiType();
+ void createGuiTypeCopy_data();
+ void createGuiTypeCopy();
+};
+
+tst_QGuiVariant::tst_QGuiVariant()
+{
+}
+
+tst_QGuiVariant::~tst_QGuiVariant()
+{
+}
+
+void tst_QGuiVariant::createGuiType_data()
+{
+ QTest::addColumn<int>("typeId");
+ for (int i = QMetaType::FirstGuiType; i <= QMetaType::LastGuiType; ++i)
+ QTest::newRow(QMetaType::typeName(i)) << i;
+}
+
+// Tests how fast a Qt GUI type can be default-constructed by a
+// QVariant. The purpose of this benchmark is to measure the overhead
+// of creating (and destroying) a QVariant compared to creating the
+// type directly.
+void tst_QGuiVariant::createGuiType()
+{
+ QFETCH(int, typeId);
+ QBENCHMARK {
+ for (int i = 0; i < ITERATION_COUNT; ++i)
+ QVariant(typeId, (void *)0);
+ }
+}
+
+void tst_QGuiVariant::createGuiTypeCopy_data()
+{
+ createGuiType_data();
+}
+
+// Tests how fast a Qt GUI type can be copy-constructed by a
+// QVariant. The purpose of this benchmark is to measure the overhead
+// of creating (and destroying) a QVariant compared to creating the
+// type directly.
+void tst_QGuiVariant::createGuiTypeCopy()
+{
+ QFETCH(int, typeId);
+ QVariant other(typeId, (void *)0);
+ const void *copy = other.constData();
+ QBENCHMARK {
+ for (int i = 0; i < ITERATION_COUNT; ++i)
+ QVariant(typeId, copy);
+ }
+}
+
+QTEST_MAIN(tst_QGuiVariant)
+#include "tst_qguivariant.moc"
diff --git a/tests/benchmarks/gui/kernel/qwidget/qwidget.pro b/tests/benchmarks/gui/kernel/qwidget/qwidget.pro
new file mode 100644
index 0000000000..4c6e5c724d
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qwidget/qwidget.pro
@@ -0,0 +1,4 @@
+load(qttest_p4)
+
+TARGET = tst_bench_qwidget
+SOURCES += tst_qwidget.cpp
diff --git a/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp b/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp
new file mode 100644
index 0000000000..bcb1266490
--- /dev/null
+++ b/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp
@@ -0,0 +1,260 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QtGui>
+
+static void processEvents()
+{
+ QApplication::flush();
+ QApplication::processEvents();
+ QApplication::processEvents();
+}
+
+class UpdateWidget : public QWidget
+{
+public:
+ UpdateWidget(int rows, int columns)
+ : QWidget(0), rowCount(0), columnCount(0), opaqueChildren(false)
+ {
+ fill(rows, columns);
+ }
+
+ UpdateWidget(QWidget *parent = 0)
+ : QWidget(parent), rowCount(0), columnCount(0), opaqueChildren(false) {}
+
+ void fill(int rows, int columns)
+ {
+ if (rows == rowCount && columns == columnCount)
+ return;
+ delete layout();
+ QGridLayout *layout = new QGridLayout;
+ rowCount = rows;
+ columnCount = columns;
+ for (int row = 0; row < rowCount; ++row) {
+ for (int column = 0; column < columnCount; ++column) {
+ UpdateWidget *widget = new UpdateWidget;
+ widget->setFixedSize(20, 20);
+ layout->addWidget(widget, row, column);
+ children.append(widget);
+ }
+ }
+ setLayout(layout);
+ adjustSize();
+ QTest::qWait(250);
+ processEvents();
+ }
+
+ void setOpaqueChildren(bool enable)
+ {
+ if (opaqueChildren != enable) {
+ foreach (QWidget *w, children)
+ w->setAttribute(Qt::WA_OpaquePaintEvent, enable);
+ opaqueChildren = enable;
+ processEvents();
+ }
+ }
+
+ void paintEvent(QPaintEvent *)
+ {
+ static int color = Qt::black;
+
+ QPainter painter(this);
+ painter.fillRect(rect(), Qt::GlobalColor(color));
+
+ if (++color > Qt::darkYellow)
+ color = Qt::black;
+ }
+
+ QRegion updateRegion;
+ QList<UpdateWidget*> children;
+ int rowCount;
+ int columnCount;
+ bool opaqueChildren;
+};
+
+class tst_QWidget : public QObject
+{
+ Q_OBJECT
+
+public slots:
+ void initTestCase();
+ void init();
+
+private slots:
+ void update_data();
+ void update();
+ void updatePartial_data();
+ void updatePartial();
+ void updateComplex_data();
+ void updateComplex();
+
+private:
+ UpdateWidget widget;
+};
+
+void tst_QWidget::initTestCase()
+{
+ widget.show();
+ QTest::qWaitForWindowShown(&widget);
+ QTest::qWait(300);
+ processEvents();
+}
+
+void tst_QWidget::init()
+{
+ QVERIFY(widget.isVisible());
+ for (int i = 0; i < 3; ++i)
+ processEvents();
+}
+
+void tst_QWidget::update_data()
+{
+ QTest::addColumn<int>("rows");
+ QTest::addColumn<int>("columns");
+ QTest::addColumn<int>("numUpdates");
+ QTest::addColumn<bool>("opaque");
+
+ QTest::newRow("10x10x1 transparent") << 10 << 10 << 1 << false;
+ QTest::newRow("10x10x10 transparent") << 10 << 10 << 10 << false;
+ QTest::newRow("10x10x100 transparent") << 10 << 10 << 100 << false;
+ QTest::newRow("10x10x1 opaque") << 10 << 10 << 1 << true;
+ QTest::newRow("10x10x10 opaque") << 10 << 10 << 10 << true;
+ QTest::newRow("10x10x100 opaque") << 10 << 10 << 100 << true;
+#ifndef Q_OS_SYMBIAN
+ //These test cases cause stack overflow in QWidgetPrivate::paintSiblingsRecursive
+ //see http://bugreports.qt.nokia.com/browse/QTBUG-8512
+ //Symbian threads have a hard limit of 80kB user stack
+ QTest::newRow("25x25x1 transparent ") << 25 << 25 << 1 << false;
+ QTest::newRow("25x25x10 transparent") << 25 << 25 << 10 << false;
+ QTest::newRow("25x25x100 transparent") << 25 << 25 << 100 << false;
+ QTest::newRow("25x25x1 opaque") << 25 << 25 << 1 << true;
+ QTest::newRow("25x25x10 opaque") << 25 << 25 << 10 << true;
+ QTest::newRow("25x25x100 opaque") << 25 << 25 << 100 << true;
+#endif
+}
+
+void tst_QWidget::update()
+{
+ QFETCH(int, rows);
+ QFETCH(int, columns);
+ QFETCH(int, numUpdates);
+ QFETCH(bool, opaque);
+
+ widget.fill(rows, columns);
+ widget.setOpaqueChildren(opaque);
+
+ QBENCHMARK {
+ for (int i = 0; i < widget.children.size(); ++i) {
+ for (int j = 0; j < numUpdates; ++j)
+ widget.children.at(i)->update();
+ QApplication::processEvents();
+ }
+ }
+
+ QApplication::flush();
+}
+
+void tst_QWidget::updatePartial_data()
+{
+ update_data();
+}
+
+void tst_QWidget::updatePartial()
+{
+ QFETCH(int, rows);
+ QFETCH(int, columns);
+ QFETCH(int, numUpdates);
+ QFETCH(bool, opaque);
+
+ widget.fill(rows, columns);
+ widget.setOpaqueChildren(opaque);
+
+ QBENCHMARK {
+ for (int i = 0; i < widget.children.size(); ++i) {
+ QWidget *w = widget.children[i];
+ const int x = w->width() / 2;
+ const int y = w->height() / 2;
+ for (int j = 0; j < numUpdates; ++j) {
+ w->update(0, 0, x, y);
+ w->update(x, 0, x, y);
+ w->update(0, y, x, y);
+ w->update(x, y, x, y);
+ }
+ QApplication::processEvents();
+ }
+ }
+}
+
+void tst_QWidget::updateComplex_data()
+{
+ update_data();
+}
+
+void tst_QWidget::updateComplex()
+{
+ QFETCH(int, rows);
+ QFETCH(int, columns);
+ QFETCH(int, numUpdates);
+ QFETCH(bool, opaque);
+
+ widget.fill(rows, columns);
+ widget.setOpaqueChildren(opaque);
+
+ QBENCHMARK {
+ for (int i = 0; i < widget.children.size(); ++i) {
+ QWidget *w = widget.children[i];
+ const int x = w->width() / 2;
+ const int y = w->height() / 2;
+ QRegion r1(0, 0, x, y, QRegion::Ellipse);
+ QRegion r2(x, y, x, y, QRegion::Ellipse);
+ for (int j = 0; j < numUpdates; ++j) {
+ w->update(r1);
+ w->update(r2);
+ }
+ QApplication::processEvents();
+ }
+ }
+}
+
+QTEST_MAIN(tst_QWidget)
+
+#include "tst_qwidget.moc"
diff --git a/tests/benchmarks/gui/math3d/math3d.pro b/tests/benchmarks/gui/math3d/math3d.pro
new file mode 100644
index 0000000000..c511d9a904
--- /dev/null
+++ b/tests/benchmarks/gui/math3d/math3d.pro
@@ -0,0 +1,4 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qmatrix4x4 \
+ qquaternion
diff --git a/tests/benchmarks/gui/math3d/qmatrix4x4/qmatrix4x4.pro b/tests/benchmarks/gui/math3d/qmatrix4x4/qmatrix4x4.pro
new file mode 100644
index 0000000000..b6a2046453
--- /dev/null
+++ b/tests/benchmarks/gui/math3d/qmatrix4x4/qmatrix4x4.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qmatrix4x4
+
+SOURCES += tst_qmatrix4x4.cpp
+
diff --git a/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp b/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp
new file mode 100644
index 0000000000..4094dc2077
--- /dev/null
+++ b/tests/benchmarks/gui/math3d/qmatrix4x4/tst_qmatrix4x4.cpp
@@ -0,0 +1,672 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtOpenGL module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QtTest>
+#include <QtGui/qmatrix4x4.h>
+
+class tst_QMatrix4x4 : public QObject
+{
+ Q_OBJECT
+public:
+ tst_QMatrix4x4() {}
+ ~tst_QMatrix4x4() {}
+
+private slots:
+ void multiply_data();
+ void multiply();
+
+ void multiplyInPlace_data();
+ void multiplyInPlace();
+
+ void multiplyDirect_data();
+ void multiplyDirect();
+
+ void mapVector3D_data();
+ void mapVector3D();
+
+ void mapVector2D_data();
+ void mapVector2D();
+
+ void mapVectorDirect_data();
+ void mapVectorDirect();
+
+ void compareTranslate_data();
+ void compareTranslate();
+
+ void compareTranslateAfterScale_data();
+ void compareTranslateAfterScale();
+
+ void compareTranslateAfterRotate_data();
+ void compareTranslateAfterRotate();
+
+ void compareScale_data();
+ void compareScale();
+
+ void compareScaleAfterTranslate_data();
+ void compareScaleAfterTranslate();
+
+ void compareScaleAfterRotate_data();
+ void compareScaleAfterRotate();
+
+ void compareRotate_data();
+ void compareRotate();
+
+ void compareRotateAfterTranslate_data();
+ void compareRotateAfterTranslate();
+
+ void compareRotateAfterScale_data();
+ void compareRotateAfterScale();
+};
+
+static qreal const generalValues[16] =
+ {1.0f, 2.0f, 3.0f, 4.0f,
+ 5.0f, 6.0f, 7.0f, 8.0f,
+ 9.0f, 10.0f, 11.0f, 12.0f,
+ 13.0f, 14.0f, 15.0f, 16.0f};
+
+void tst_QMatrix4x4::multiply_data()
+{
+ QTest::addColumn<QMatrix4x4>("m1");
+ QTest::addColumn<QMatrix4x4>("m2");
+
+ QTest::newRow("identity * identity")
+ << QMatrix4x4() << QMatrix4x4();
+ QTest::newRow("identity * general")
+ << QMatrix4x4() << QMatrix4x4(generalValues);
+ QTest::newRow("general * identity")
+ << QMatrix4x4(generalValues) << QMatrix4x4();
+ QTest::newRow("general * general")
+ << QMatrix4x4(generalValues) << QMatrix4x4(generalValues);
+}
+
+QMatrix4x4 mresult;
+
+void tst_QMatrix4x4::multiply()
+{
+ QFETCH(QMatrix4x4, m1);
+ QFETCH(QMatrix4x4, m2);
+
+ QMatrix4x4 m3;
+
+ QBENCHMARK {
+ m3 = m1 * m2;
+ }
+
+ // Force the result to be stored so the compiler doesn't
+ // optimize away the contents of the benchmark loop.
+ mresult = m3;
+}
+
+void tst_QMatrix4x4::multiplyInPlace_data()
+{
+ multiply_data();
+}
+
+void tst_QMatrix4x4::multiplyInPlace()
+{
+ QFETCH(QMatrix4x4, m1);
+ QFETCH(QMatrix4x4, m2);
+
+ QMatrix4x4 m3;
+
+ QBENCHMARK {
+ m3 = m1;
+ m3 *= m2;
+ }
+
+ // Force the result to be stored so the compiler doesn't
+ // optimize away the contents of the benchmark loop.
+ mresult = m3;
+}
+
+// Use a direct naive multiplication algorithm. This is used
+// to compare against the optimized routines to see if they are
+// actually faster than the naive implementation.
+void tst_QMatrix4x4::multiplyDirect_data()
+{
+ multiply_data();
+}
+void tst_QMatrix4x4::multiplyDirect()
+{
+ QFETCH(QMatrix4x4, m1);
+ QFETCH(QMatrix4x4, m2);
+
+ QMatrix4x4 m3;
+
+ const qreal *m1data = m1.constData();
+ const qreal *m2data = m2.constData();
+ qreal *m3data = m3.data();
+
+ QBENCHMARK {
+ for (int row = 0; row < 4; ++row) {
+ for (int col = 0; col < 4; ++col) {
+ m3data[col * 4 + row] = 0.0f;
+ for (int j = 0; j < 4; ++j) {
+ m3data[col * 4 + row] +=
+ m1data[j * 4 + row] * m2data[col * 4 + j];
+ }
+ }
+ }
+ }
+}
+
+QVector3D vresult;
+
+void tst_QMatrix4x4::mapVector3D_data()
+{
+ QTest::addColumn<QMatrix4x4>("m1");
+
+ QTest::newRow("identity") << QMatrix4x4();
+ QTest::newRow("general") << QMatrix4x4(generalValues);
+
+ QMatrix4x4 t1;
+ t1.translate(-100.5f, 64.0f, 75.25f);
+ QTest::newRow("translate3D") << t1;
+
+ QMatrix4x4 t2;
+ t2.translate(-100.5f, 64.0f);
+ QTest::newRow("translate2D") << t2;
+
+ QMatrix4x4 s1;
+ s1.scale(-100.5f, 64.0f, 75.25f);
+ QTest::newRow("scale3D") << s1;
+
+ QMatrix4x4 s2;
+ s2.scale(-100.5f, 64.0f);
+ QTest::newRow("scale2D") << s2;
+}
+void tst_QMatrix4x4::mapVector3D()
+{
+ QFETCH(QMatrix4x4, m1);
+
+ QVector3D v(10.5f, -2.0f, 3.0f);
+ QVector3D result;
+
+ m1.optimize();
+
+ QBENCHMARK {
+ result = m1 * v;
+ }
+
+ // Force the result to be stored so the compiler doesn't
+ // optimize away the contents of the benchmark loop.
+ vresult = result;
+}
+
+QPointF vresult2;
+
+void tst_QMatrix4x4::mapVector2D_data()
+{
+ mapVector3D_data();
+}
+void tst_QMatrix4x4::mapVector2D()
+{
+ QFETCH(QMatrix4x4, m1);
+
+ QPointF v(10.5f, -2.0f);
+ QPointF result;
+
+ m1.optimize();
+
+ QBENCHMARK {
+ result = m1 * v;
+ }
+
+ // Force the result to be stored so the compiler doesn't
+ // optimize away the contents of the benchmark loop.
+ vresult2 = result;
+}
+
+// Use a direct naive multiplication algorithm. This is used
+// to compare against the optimized routines to see if they are
+// actually faster than the naive implementation.
+void tst_QMatrix4x4::mapVectorDirect_data()
+{
+ mapVector3D_data();
+}
+void tst_QMatrix4x4::mapVectorDirect()
+{
+ QFETCH(QMatrix4x4, m1);
+
+ const qreal *m1data = m1.constData();
+ qreal v[4] = {10.5f, -2.0f, 3.0f, 1.0f};
+ qreal result[4];
+
+ QBENCHMARK {
+ for (int row = 0; row < 4; ++row) {
+ result[row] = 0.0f;
+ for (int col = 0; col < 4; ++col) {
+ result[row] += m1data[col * 4 + row] * v[col];
+ }
+ }
+ result[0] /= result[3];
+ result[1] /= result[3];
+ result[2] /= result[3];
+ }
+}
+
+// Compare the performance of QTransform::translate() to
+// QMatrix4x4::translate().
+void tst_QMatrix4x4::compareTranslate_data()
+{
+ QTest::addColumn<bool>("useQTransform");
+ QTest::addColumn<QVector3D>("translation");
+
+ QTest::newRow("QTransform::translate(0, 0, 0)")
+ << true << QVector3D(0, 0, 0);
+ QTest::newRow("QMatrix4x4::translate(0, 0, 0)")
+ << false << QVector3D(0, 0, 0);
+
+ QTest::newRow("QTransform::translate(1, 2, 0)")
+ << true << QVector3D(1, 2, 0);
+ QTest::newRow("QMatrix4x4::translate(1, 2, 0)")
+ << false << QVector3D(1, 2, 0);
+
+ QTest::newRow("QTransform::translate(1, 2, 4)")
+ << true << QVector3D(1, 2, 4);
+ QTest::newRow("QMatrix4x4::translate(1, 2, 4)")
+ << false << QVector3D(1, 2, 4);
+}
+void tst_QMatrix4x4::compareTranslate()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(QVector3D, translation);
+
+ qreal x = translation.x();
+ qreal y = translation.y();
+ qreal z = translation.z();
+
+ if (useQTransform) {
+ QTransform t;
+ QBENCHMARK {
+ t.translate(x, y);
+ }
+ } else if (z == 0.0f) {
+ QMatrix4x4 m;
+ QBENCHMARK {
+ m.translate(x, y);
+ }
+ } else {
+ QMatrix4x4 m;
+ QBENCHMARK {
+ m.translate(x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::translate() to
+// QMatrix4x4::translate() after priming the matrix with a scale().
+void tst_QMatrix4x4::compareTranslateAfterScale_data()
+{
+ compareTranslate_data();
+}
+void tst_QMatrix4x4::compareTranslateAfterScale()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(QVector3D, translation);
+
+ qreal x = translation.x();
+ qreal y = translation.y();
+ qreal z = translation.z();
+
+ if (useQTransform) {
+ QTransform t;
+ t.scale(3, 4);
+ QBENCHMARK {
+ t.translate(x, y);
+ }
+ } else if (z == 0.0f) {
+ QMatrix4x4 m;
+ m.scale(3, 4);
+ QBENCHMARK {
+ m.translate(x, y);
+ }
+ } else {
+ QMatrix4x4 m;
+ m.scale(3, 4, 5);
+ QBENCHMARK {
+ m.translate(x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::translate() to
+// QMatrix4x4::translate() after priming the matrix with a rotate().
+void tst_QMatrix4x4::compareTranslateAfterRotate_data()
+{
+ compareTranslate_data();
+}
+void tst_QMatrix4x4::compareTranslateAfterRotate()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(QVector3D, translation);
+
+ qreal x = translation.x();
+ qreal y = translation.y();
+ qreal z = translation.z();
+
+ if (useQTransform) {
+ QTransform t;
+ t.rotate(45.0f);
+ QBENCHMARK {
+ t.translate(x, y);
+ }
+ } else if (z == 0.0f) {
+ QMatrix4x4 m;
+ m.rotate(45.0f, 0, 0, 1);
+ QBENCHMARK {
+ m.translate(x, y);
+ }
+ } else {
+ QMatrix4x4 m;
+ m.rotate(45.0f, 0, 0, 1);
+ QBENCHMARK {
+ m.translate(x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::scale() to
+// QMatrix4x4::scale().
+void tst_QMatrix4x4::compareScale_data()
+{
+ QTest::addColumn<bool>("useQTransform");
+ QTest::addColumn<QVector3D>("scale");
+
+ QTest::newRow("QTransform::scale(1, 1, 1)")
+ << true << QVector3D(1, 1, 1);
+ QTest::newRow("QMatrix4x4::scale(1, 1, 1)")
+ << false << QVector3D(1, 1, 1);
+
+ QTest::newRow("QTransform::scale(3, 6, 1)")
+ << true << QVector3D(3, 6, 1);
+ QTest::newRow("QMatrix4x4::scale(3, 6, 1)")
+ << false << QVector3D(3, 6, 1);
+
+ QTest::newRow("QTransform::scale(3, 6, 4)")
+ << true << QVector3D(3, 6, 4);
+ QTest::newRow("QMatrix4x4::scale(3, 6, 4)")
+ << false << QVector3D(3, 6, 4);
+}
+void tst_QMatrix4x4::compareScale()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(QVector3D, scale);
+
+ qreal x = scale.x();
+ qreal y = scale.y();
+ qreal z = scale.z();
+
+ if (useQTransform) {
+ QTransform t;
+ QBENCHMARK {
+ t.scale(x, y);
+ }
+ } else if (z == 1.0f) {
+ QMatrix4x4 m;
+ QBENCHMARK {
+ m.scale(x, y);
+ }
+ } else {
+ QMatrix4x4 m;
+ QBENCHMARK {
+ m.scale(x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::scale() to
+// QMatrix4x4::scale() after priming the matrix with a translate().
+void tst_QMatrix4x4::compareScaleAfterTranslate_data()
+{
+ compareScale_data();
+}
+void tst_QMatrix4x4::compareScaleAfterTranslate()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(QVector3D, scale);
+
+ qreal x = scale.x();
+ qreal y = scale.y();
+ qreal z = scale.z();
+
+ if (useQTransform) {
+ QTransform t;
+ t.translate(20, 34);
+ QBENCHMARK {
+ t.scale(x, y);
+ }
+ } else if (z == 1.0f) {
+ QMatrix4x4 m;
+ m.translate(20, 34);
+ QBENCHMARK {
+ m.scale(x, y);
+ }
+ } else {
+ QMatrix4x4 m;
+ m.translate(20, 34, 42);
+ QBENCHMARK {
+ m.scale(x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::scale() to
+// QMatrix4x4::scale() after priming the matrix with a rotate().
+void tst_QMatrix4x4::compareScaleAfterRotate_data()
+{
+ compareScale_data();
+}
+void tst_QMatrix4x4::compareScaleAfterRotate()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(QVector3D, scale);
+
+ qreal x = scale.x();
+ qreal y = scale.y();
+ qreal z = scale.z();
+
+ if (useQTransform) {
+ QTransform t;
+ t.rotate(45.0f);
+ QBENCHMARK {
+ t.scale(x, y);
+ }
+ } else if (z == 1.0f) {
+ QMatrix4x4 m;
+ m.rotate(45.0f, 0, 0, 1);
+ QBENCHMARK {
+ m.scale(x, y);
+ }
+ } else {
+ QMatrix4x4 m;
+ m.rotate(45.0f, 0, 0, 1);
+ QBENCHMARK {
+ m.scale(x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::rotate() to
+// QMatrix4x4::rotate().
+void tst_QMatrix4x4::compareRotate_data()
+{
+ QTest::addColumn<bool>("useQTransform");
+ QTest::addColumn<qreal>("angle");
+ QTest::addColumn<QVector3D>("rotation");
+ QTest::addColumn<int>("axis");
+
+ QTest::newRow("QTransform::rotate(0, ZAxis)")
+ << true << qreal(0.0f) << QVector3D(0, 0, 1) << int(Qt::ZAxis);
+ QTest::newRow("QMatrix4x4::rotate(0, ZAxis)")
+ << false << qreal(0.0f) << QVector3D(0, 0, 1) << int(Qt::ZAxis);
+
+ QTest::newRow("QTransform::rotate(45, ZAxis)")
+ << true << qreal(45.0f) << QVector3D(0, 0, 1) << int(Qt::ZAxis);
+ QTest::newRow("QMatrix4x4::rotate(45, ZAxis)")
+ << false << qreal(45.0f) << QVector3D(0, 0, 1) << int(Qt::ZAxis);
+
+ QTest::newRow("QTransform::rotate(90, ZAxis)")
+ << true << qreal(90.0f) << QVector3D(0, 0, 1) << int(Qt::ZAxis);
+ QTest::newRow("QMatrix4x4::rotate(90, ZAxis)")
+ << false << qreal(90.0f) << QVector3D(0, 0, 1) << int(Qt::ZAxis);
+
+ QTest::newRow("QTransform::rotate(0, YAxis)")
+ << true << qreal(0.0f) << QVector3D(0, 1, 0) << int(Qt::YAxis);
+ QTest::newRow("QMatrix4x4::rotate(0, YAxis)")
+ << false << qreal(0.0f) << QVector3D(0, 1, 0) << int(Qt::YAxis);
+
+ QTest::newRow("QTransform::rotate(45, YAxis)")
+ << true << qreal(45.0f) << QVector3D(0, 1, 0) << int(Qt::YAxis);
+ QTest::newRow("QMatrix4x4::rotate(45, YAxis)")
+ << false << qreal(45.0f) << QVector3D(0, 1, 0) << int(Qt::YAxis);
+
+ QTest::newRow("QTransform::rotate(90, YAxis)")
+ << true << qreal(90.0f) << QVector3D(0, 1, 0) << int(Qt::YAxis);
+ QTest::newRow("QMatrix4x4::rotate(90, YAxis)")
+ << false << qreal(90.0f) << QVector3D(0, 1, 0) << int(Qt::YAxis);
+
+ QTest::newRow("QTransform::rotate(0, XAxis)")
+ << true << qreal(0.0f) << QVector3D(0, 1, 0) << int(Qt::XAxis);
+ QTest::newRow("QMatrix4x4::rotate(0, XAxis)")
+ << false << qreal(0.0f) << QVector3D(0, 1, 0) << int(Qt::XAxis);
+
+ QTest::newRow("QTransform::rotate(45, XAxis)")
+ << true << qreal(45.0f) << QVector3D(1, 0, 0) << int(Qt::XAxis);
+ QTest::newRow("QMatrix4x4::rotate(45, XAxis)")
+ << false << qreal(45.0f) << QVector3D(1, 0, 0) << int(Qt::XAxis);
+
+ QTest::newRow("QTransform::rotate(90, XAxis)")
+ << true << qreal(90.0f) << QVector3D(1, 0, 0) << int(Qt::XAxis);
+ QTest::newRow("QMatrix4x4::rotate(90, XAxis)")
+ << false << qreal(90.0f) << QVector3D(1, 0, 0) << int(Qt::XAxis);
+}
+void tst_QMatrix4x4::compareRotate()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(qreal, angle);
+ QFETCH(QVector3D, rotation);
+ QFETCH(int, axis);
+
+ qreal x = rotation.x();
+ qreal y = rotation.y();
+ qreal z = rotation.z();
+
+ if (useQTransform) {
+ QTransform t;
+ QBENCHMARK {
+ t.rotate(angle, Qt::Axis(axis));
+ }
+ } else {
+ QMatrix4x4 m;
+ QBENCHMARK {
+ m.rotate(angle, x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::rotate() to
+// QMatrix4x4::rotate() after priming the matrix with a translate().
+void tst_QMatrix4x4::compareRotateAfterTranslate_data()
+{
+ compareRotate_data();
+}
+void tst_QMatrix4x4::compareRotateAfterTranslate()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(qreal, angle);
+ QFETCH(QVector3D, rotation);
+ QFETCH(int, axis);
+
+ qreal x = rotation.x();
+ qreal y = rotation.y();
+ qreal z = rotation.z();
+
+ if (useQTransform) {
+ QTransform t;
+ t.translate(3, 4);
+ QBENCHMARK {
+ t.rotate(angle, Qt::Axis(axis));
+ }
+ } else {
+ QMatrix4x4 m;
+ m.translate(3, 4, 5);
+ QBENCHMARK {
+ m.rotate(angle, x, y, z);
+ }
+ }
+}
+
+// Compare the performance of QTransform::rotate() to
+// QMatrix4x4::rotate() after priming the matrix with a scale().
+void tst_QMatrix4x4::compareRotateAfterScale_data()
+{
+ compareRotate_data();
+}
+void tst_QMatrix4x4::compareRotateAfterScale()
+{
+ QFETCH(bool, useQTransform);
+ QFETCH(qreal, angle);
+ QFETCH(QVector3D, rotation);
+ QFETCH(int, axis);
+
+ qreal x = rotation.x();
+ qreal y = rotation.y();
+ qreal z = rotation.z();
+
+ if (useQTransform) {
+ QTransform t;
+ t.scale(3, 4);
+ QBENCHMARK {
+ t.rotate(angle, Qt::Axis(axis));
+ }
+ } else {
+ QMatrix4x4 m;
+ m.scale(3, 4, 5);
+ QBENCHMARK {
+ m.rotate(angle, x, y, z);
+ }
+ }
+}
+
+QTEST_MAIN(tst_QMatrix4x4)
+
+#include "tst_qmatrix4x4.moc"
diff --git a/tests/benchmarks/gui/math3d/qquaternion/qquaternion.pro b/tests/benchmarks/gui/math3d/qquaternion/qquaternion.pro
new file mode 100644
index 0000000000..bd6a0d31a3
--- /dev/null
+++ b/tests/benchmarks/gui/math3d/qquaternion/qquaternion.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qquaternion
+
+SOURCES += tst_qquaternion.cpp
+
diff --git a/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp b/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp
new file mode 100644
index 0000000000..0790fd3c74
--- /dev/null
+++ b/tests/benchmarks/gui/math3d/qquaternion/tst_qquaternion.cpp
@@ -0,0 +1,124 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QQuaternion>
+
+//TESTED_FILES=
+
+class tst_QQuaternion : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QQuaternion();
+ virtual ~tst_QQuaternion();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void multiply_data();
+ void multiply();
+};
+
+tst_QQuaternion::tst_QQuaternion()
+{
+}
+
+tst_QQuaternion::~tst_QQuaternion()
+{
+}
+
+void tst_QQuaternion::init()
+{
+}
+
+void tst_QQuaternion::cleanup()
+{
+}
+
+void tst_QQuaternion::multiply_data()
+{
+ QTest::addColumn<qreal>("x1");
+ QTest::addColumn<qreal>("y1");
+ QTest::addColumn<qreal>("z1");
+ QTest::addColumn<qreal>("w1");
+ QTest::addColumn<qreal>("x2");
+ QTest::addColumn<qreal>("y2");
+ QTest::addColumn<qreal>("z2");
+ QTest::addColumn<qreal>("w2");
+
+ QTest::newRow("null")
+ << (qreal)0.0f << (qreal)0.0f << (qreal)0.0f << (qreal)0.0f
+ << (qreal)0.0f << (qreal)0.0f << (qreal)0.0f << (qreal)0.0f;
+
+ QTest::newRow("unitvec")
+ << (qreal)1.0f << (qreal)0.0f << (qreal)0.0f << (qreal)1.0f
+ << (qreal)0.0f << (qreal)1.0f << (qreal)0.0f << (qreal)1.0f;
+
+ QTest::newRow("complex")
+ << (qreal)1.0f << (qreal)2.0f << (qreal)3.0f << (qreal)7.0f
+ << (qreal)4.0f << (qreal)5.0f << (qreal)6.0f << (qreal)8.0f;
+}
+
+void tst_QQuaternion::multiply()
+{
+ QFETCH(qreal, x1);
+ QFETCH(qreal, y1);
+ QFETCH(qreal, z1);
+ QFETCH(qreal, w1);
+ QFETCH(qreal, x2);
+ QFETCH(qreal, y2);
+ QFETCH(qreal, z2);
+ QFETCH(qreal, w2);
+
+ QQuaternion q1(w1, x1, y1, z1);
+ QQuaternion q2(w2, x2, y2, z2);
+
+ QBENCHMARK {
+ QQuaternion q3 = q1 * q2;
+ }
+}
+
+QTEST_MAIN(tst_QQuaternion)
+#include "tst_qquaternion.moc"
diff --git a/tests/benchmarks/gui/painting/painting.pro b/tests/benchmarks/gui/painting/painting.pro
new file mode 100644
index 0000000000..76c26c1627
--- /dev/null
+++ b/tests/benchmarks/gui/painting/painting.pro
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qpainter \
+ qregion \
+ qtransform \
+ qtracebench \
+ qtbench
diff --git a/tests/benchmarks/gui/painting/qpainter/qpainter.pro b/tests/benchmarks/gui/painting/qpainter/qpainter.pro
new file mode 100644
index 0000000000..6603abafea
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qpainter/qpainter.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qpainter
+
+SOURCES += tst_qpainter.cpp
diff --git a/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp b/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp
new file mode 100644
index 0000000000..2d33825e5c
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qpainter/tst_qpainter.cpp
@@ -0,0 +1,1666 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QPainter>
+#include <QPixmap>
+#include <QDialog>
+#include <QImage>
+#include <QPaintEngine>
+#include <math.h>
+#ifndef M_PI
+#define M_PI 3.14159265358979323846
+#endif
+
+#include <private/qpixmap_raster_p.h>
+
+Q_DECLARE_METATYPE(QLine)
+Q_DECLARE_METATYPE(QRect)
+Q_DECLARE_METATYPE(QSize)
+Q_DECLARE_METATYPE(QPoint)
+Q_DECLARE_METATYPE(QPainterPath)
+Q_DECLARE_METATYPE(QPainter::RenderHint)
+Q_DECLARE_METATYPE(QPainter::CompositionMode)
+Q_DECLARE_METATYPE(QImage::Format)
+
+enum PrimitiveType {
+ Primitive_Int_DiagLine,
+ Primitive_Int_VerLine,
+ Primitive_Int_HorLine,
+ Primitive_Int_Rect,
+ Primitive_Int_Ellipse,
+ Primitive_Int_Pie,
+ Primitive_Int_Arc,
+ Primitive_Int_Chord,
+ Primitive_Int_TriPoly,
+ Primitive_Int_RectPoly,
+ Primitive_Int_2RectPoly,
+
+ Primitive_Float_DiagLine,
+ Primitive_Float_VerLine,
+ Primitive_Float_HorLine,
+ Primitive_Float_Rect,
+ Primitive_Float_Ellipse,
+ Primitive_Float_Pie,
+ Primitive_Float_Arc,
+ Primitive_Float_Chord,
+ Primitive_Float_TriPoly,
+ Primitive_Float_RectPoly,
+ Primitive_Float_2RectPoly,
+
+ Primitive_Float_TriPath,
+ Primitive_Float_RectPath,
+ Primitive_Float_2RectPath,
+ Primitive_Float_EllipsePath,
+ Primitive_Last_Primitive
+
+};
+
+
+enum StateChanges {
+ ChangePen = 0x0001,
+ ChangeBrush = 0x0002,
+ ChangeClip = 0x0004,
+ ChangeTransform = 0x0008
+};
+
+
+struct PrimitiveSet {
+ QRect i_rect;
+ QLine i_line_diag;
+ QLine i_line_ver;
+ QLine i_line_hor;
+ QPolygon i_poly_tri;
+ QPolygon i_poly_2rects;
+ QPolygon i_poly_rect;
+
+ QRectF f_rect;
+ QLineF f_line_diag;
+ QLineF f_line_ver;
+ QLineF f_line_hor;
+ QPolygonF f_poly_tri;
+ QPolygonF f_poly_2rects;
+ QPolygonF f_poly_rect;
+
+ QPainterPath f_path_tri;
+ QPainterPath f_path_2rects;
+ QPainterPath f_path_rect;
+ QPainterPath f_path_ellipse;
+};
+
+
+QPixmap rasterPixmap(int width, int height)
+{
+ QPixmapData *data =
+ new QRasterPixmapData(QPixmapData::PixmapType);
+
+ data->resize(width, height);
+
+ return QPixmap(data);
+}
+
+QPixmap rasterPixmap(const QSize &size)
+{
+ return rasterPixmap(size.width(), size.height());
+}
+
+QPixmap rasterPixmap(const QImage &image)
+{
+ QPixmapData *data =
+ new QRasterPixmapData(QPixmapData::PixmapType);
+
+ data->fromImage(image, Qt::AutoColor);
+
+ return QPixmap(data);
+}
+
+
+class tst_QPainter : public QObject
+{
+ Q_OBJECT
+
+ public:
+ tst_QPainter()
+ {
+ setupBrushes();
+ createPrimitives();
+ m_surface = surface();
+ }
+
+private slots:
+ void beginAndEnd();
+
+ void saveRestore_data();
+ void saveRestore();
+
+ void drawLine_data();
+ void drawLine();
+ void drawLine_clipped_data();
+ void drawLine_clipped();
+ void drawLine_antialiased_clipped_data();
+ void drawLine_antialiased_clipped();
+
+ void drawPixmap_data();
+ void drawPixmap();
+
+ void drawImage_data();
+ void drawImage();
+
+ void drawTiledPixmap_data();
+ void drawTiledPixmap();
+
+ void compositionModes_data();
+ void compositionModes();
+
+ void fillPrimitives_10_data() { drawPrimitives_data_helper(false); }
+ void fillPrimitives_100_data() { drawPrimitives_data_helper(false); }
+ void fillPrimitives_1000_data() { drawPrimitives_data_helper(false); }
+ void fillPrimitives_10();
+ void fillPrimitives_100();
+ void fillPrimitives_1000();
+
+ void strokePrimitives_10_data() { drawPrimitives_data_helper(true); }
+ void strokePrimitives_100_data() { drawPrimitives_data_helper(true); }
+ void strokePrimitives_1000_data() { drawPrimitives_data_helper(true); }
+ void strokePrimitives_10();
+ void strokePrimitives_100();
+ void strokePrimitives_1000();
+
+ void drawText_data();
+ void drawText();
+
+ void clipAndFill_data();
+ void clipAndFill();
+
+ void drawRoundedRect();
+ void drawScaledRoundedRect();
+ void drawTransformedRoundedRect();
+
+ void drawScaledAntialiasedRoundedRect_data();
+ void drawTransformedAntialiasedRoundedRect_data();
+ void drawAntialiasedRoundedRect();
+ void drawScaledAntialiasedRoundedRect();
+ void drawTransformedAntialiasedRoundedRect();
+
+ void drawScaledImageRoundedRect_data();
+ void drawTransformedImageRoundedRect_data();
+ void drawImageRoundedRect();
+ void drawScaledImageRoundedRect();
+ void drawTransformedImageRoundedRect();
+
+ void drawScaledBorderPixmapRoundedRect_data();
+ void drawTransformedBorderPixmapRoundedRect_data();
+ void drawBorderPixmapRoundedRect();
+ void drawScaledBorderPixmapRoundedRect();
+ void drawTransformedBorderPixmapRoundedRect();
+
+ void drawTransformedTransparentImage_data();
+ void drawTransformedSemiTransparentImage_data();
+ void drawTransformedFilledImage_data();
+ void drawTransformedTransparentImage();
+ void drawTransformedSemiTransparentImage();
+ void drawTransformedFilledImage();
+
+private:
+ void setupBrushes();
+ void createPrimitives();
+
+ void drawPrimitives_data_helper(bool fancypens);
+ void fillPrimitives_helper(QPainter *painter, PrimitiveType type, PrimitiveSet *s);
+
+ QTransform transformForAngle(qreal angle);
+
+ QPaintDevice *surface()
+ {
+ m_pixmap = rasterPixmap(1024, 1024);
+ return &m_pixmap;
+ }
+
+
+ QMap<QString, QPen> m_pens;
+ QMap<QString, QBrush> m_brushes;
+
+ PrimitiveSet m_primitives_10;
+ PrimitiveSet m_primitives_100;
+ PrimitiveSet m_primitives_1000;
+
+ QPixmap m_pixmap;
+ QPaintDevice *m_surface;
+ QPainter m_painter;
+
+};
+
+void tst_QPainter::createPrimitives()
+{
+ for (int i=0; i<3; ++i) {
+ PrimitiveSet *ps;
+ int size;
+ switch (i) {
+ case 0:
+ ps = &m_primitives_10;
+ size = 10;
+ break;
+ case 1:
+ ps = &m_primitives_100;
+ size = 100;
+ break;
+ case 2:
+ ps = &m_primitives_1000;
+ size = 1000;
+ break;
+ }
+
+ ps->f_rect = QRectF(0, 0, size, size);
+ ps->f_line_diag = QLineF(0, 0, size, size);
+ ps->f_line_ver = QLineF(10, 0, 10, size);
+ ps->f_line_hor = QLineF(0, 10, size, 10);
+ ps->f_poly_rect = QPolygonF() << QPointF(0, 0)
+ << QPointF(size, 0)
+ << QPointF(size, size)
+ << QPointF(0, size);
+ ps->f_poly_2rects = QPolygonF() << QPointF(0, 0)
+ << QPointF(size * 0.75, 0)
+ << QPointF(size * 0.75, size * 0.75)
+ << QPointF(size * 0.25, size * 0.75)
+ << QPointF(size * 0.25, size * 0.25)
+ << QPointF(size, size * 0.25)
+ << QPointF(size, size)
+ << QPointF(0, size);
+ ps->f_poly_tri = QPolygonF() << QPointF(size / 2.0, 0)
+ << QPointF(0, size)
+ << QPointF(size, size);
+
+ ps->f_path_tri.addPolygon(ps->f_poly_tri);
+ ps->f_path_rect.addRect(ps->f_rect);
+ ps->f_path_2rects.addPolygon(ps->f_poly_2rects);
+ ps->f_path_ellipse.addEllipse(ps->f_rect);
+
+ ps->i_rect = ps->f_rect.toRect();
+ ps->i_line_diag = ps->f_line_diag.toLine();
+ ps->i_line_hor = ps->f_line_hor.toLine();
+ ps->i_line_ver = ps->f_line_ver.toLine();
+ ps->i_poly_tri = ps->f_poly_tri.toPolygon();
+ ps->i_poly_rect = ps->f_poly_rect.toPolygon();
+ ps->i_poly_2rects = ps->f_poly_2rects.toPolygon();
+ }
+}
+
+void tst_QPainter::drawLine_data()
+{
+ QTest::addColumn<QLine>("line");
+ QTest::addColumn<QPen>("pen");
+
+ QVector<QPen> pens;
+ pens << QPen(Qt::black)
+ << QPen(Qt::black, 0, Qt::DashDotLine)
+ << QPen(Qt::black, 4)
+ << QPen(Qt::black, 4, Qt::DashDotLine)
+ << QPen(QColor(255, 0, 0, 200))
+ << QPen(QColor(255, 0, 0, 200), 0, Qt::DashDotLine)
+ << QPen(QColor(255, 0, 0, 200), 4)
+ << QPen(QColor(255, 0, 0, 200), 4, Qt::DashDotLine);
+
+ QStringList penNames;
+ penNames << "black-0"
+ << "black-0-dashdot"
+ << "black-4"
+ << "black-4-dashdot"
+ << "alpha-0"
+ << "alpha-0-dashdot"
+ << "alpha-4"
+ << "alpha-4-dashdot";
+
+ int i = 0;
+ foreach (QPen pen, pens) {
+ const QString s = QString(QLatin1String("%1:%2")).arg(penNames[i]);
+ QTest::newRow(qPrintable(s.arg("horizontal")))
+ << QLine(0, 20, 100, 20) << pen;
+ QTest::newRow(qPrintable(s.arg("vertical:")))
+ << QLine(20, 0, 20, 100) << pen;
+ QTest::newRow(qPrintable(s.arg("0-45:")))
+ << QLine(0, 20, 100, 0) << pen;
+ QTest::newRow(qPrintable(s.arg("45-90:")))
+ << QLine(0, 100, 20, 0) << pen;
+ QTest::newRow(qPrintable(s.arg("90-135:")))
+ << QLine(20, 100, 0, 0) << pen;
+ QTest::newRow(qPrintable(s.arg("135-180:")))
+ << QLine(100, 20, 0, 0) << pen;
+ QTest::newRow(qPrintable(s.arg("180-225:")))
+ << QLine(100, 0, 0, 20) << pen;
+ QTest::newRow(qPrintable(s.arg("225-270:")))
+ << QLine(20, 0, 0, 100) << pen;
+ QTest::newRow(qPrintable(s.arg("270-315:")))
+ << QLine(0, 0, 20, 100) << pen;
+ QTest::newRow(qPrintable(s.arg("315-360:")))
+ << QLine(0, 0, 100, 20) << pen;
+ ++i;
+ }
+}
+
+void tst_QPainter::setupBrushes()
+{
+ // Solid brushes...
+ m_brushes["black-brush"] = QBrush(Qt::black);
+ m_brushes["white-brush"] = QBrush(Qt::white);
+ m_brushes["transparent-brush"] = QBrush(QColor(255, 255, 255, 0));
+ m_brushes["alpha1-brush"] = QBrush(QColor(255, 255, 255, 100));
+ m_brushes["alpha2-brush"] = QBrush(QColor(255, 255, 255, 200));
+
+
+ // Patterns
+ m_brushes["dense1-brush"] = QBrush(Qt::Dense1Pattern);
+ m_brushes["dense2-brush"] = QBrush(Qt::Dense2Pattern);
+ m_brushes["dense3-brush"] = QBrush(Qt::Dense3Pattern);
+ m_brushes["dense4-brush"] = QBrush(Qt::Dense4Pattern);
+ m_brushes["dense5-brush"] = QBrush(Qt::Dense5Pattern);
+ m_brushes["dense6-brush"] = QBrush(Qt::Dense6Pattern);
+ m_brushes["dense7-brush"] = QBrush(Qt::Dense7Pattern);
+ m_brushes["hor-brush"] = QBrush(Qt::HorPattern);
+ m_brushes["ver-brush"] = QBrush(Qt::VerPattern);
+ m_brushes["cross-brush"] = QBrush(Qt::CrossPattern);
+ m_brushes["bdiag-brush"] = QBrush(Qt::BDiagPattern);
+ m_brushes["fdiag-brush"] = QBrush(Qt::FDiagPattern);
+ m_brushes["diagcross-brush"] = QBrush(Qt::DiagCrossPattern);
+
+ // Gradients
+ QGradientStops gradient_white_black;
+ gradient_white_black << QPair<qreal, QColor>(0, QColor(Qt::white));
+ gradient_white_black << QPair<qreal, QColor>(1, QColor(Qt::black));
+
+ QGradientStops gradient_white_black10;
+ for (int i=0; i<10; ++i) {
+ gradient_white_black10 << QPair<qreal, QColor>(i/10.0, QColor(Qt::white));
+ gradient_white_black10 << QPair<qreal, QColor>(i/10.0+0.05, QColor(Qt::black));
+ }
+
+ QGradientStops gradient_white_alpha;
+ gradient_white_alpha << QPair<qreal, QColor>(0, QColor(Qt::white));
+ gradient_white_alpha << QPair<qreal, QColor>(0, QColor(Qt::transparent));
+
+ QGradientStops gradient_white_alpha10;
+ for (int i=0; i<10; ++i) {
+ gradient_white_alpha10 << QPair<qreal, QColor>(i/10.0, QColor(Qt::white));
+ gradient_white_alpha10 << QPair<qreal, QColor>(i/10.0+0.05, QColor(Qt::black));
+ }
+
+
+ for (int j=0; j<4; ++j) {
+ QLinearGradient lg;
+ lg.setStart(0, 0);
+
+ QRadialGradient rg;
+ QConicalGradient cg;
+
+ QGradientStops stops;
+ if (j == 0) stops = gradient_white_black;
+ else if (j == 1) stops = gradient_white_black10;
+ else if (j == 2) stops = gradient_white_alpha;
+ else if (j == 3) stops = gradient_white_alpha10;
+ lg.setStops(stops);
+ rg.setStops(stops);
+ cg.setStops(stops);
+
+ for (int i=0; i<6; ++i) {
+ lg.setSpread((QGradient::Spread) (i % 3));
+ lg.setCoordinateMode((QGradient::CoordinateMode) (j / 3));
+
+ QString name = QString::fromLatin1("-%1%2")
+ .arg(lg.spread())
+ .arg(lg.coordinateMode());
+
+ lg.setFinalStop(100, 0);
+ m_brushes["hor-lingrad-w/b-brush" + name] = QBrush(lg);
+
+ lg.setFinalStop(0, 100);
+ m_brushes["ver-lingrad-w/b-brush" + name] = QBrush(lg);
+
+ lg.setFinalStop(100, 100);
+ m_brushes["diag-lingrad-w/b-brush" + name] = QBrush(lg);
+
+ rg.setRadius(100);
+ rg.setCenter(0, 0);
+ rg.setFocalPoint(50, 50);
+ m_brushes["radgrad-brush" + name] = QBrush(rg);
+
+ cg.setCenter(0, 0);
+ cg.setAngle(40);
+ m_brushes["congrad-brush" + name] = QBrush(cg);
+ }
+ }
+
+ // Set up pens...
+
+
+// m_pens["black-pen"] = QPen(Qt::black);
+// m_pens["white-pen"] = QPen(Qt::white);
+// m_pens["transparent-pen"] = QPen(QColor(255, 255, 255, 0));
+// m_pens["translucent1-pen"] = QPen(QColor(255, 255, 255, 100));
+// m_pens["translucent2-pen"] = QPen(QColor(255, 255, 255, 200));
+
+
+
+}
+
+
+// void QPainter_Primitives::fillRect_data() {
+
+// QTest::addColumn<QBrush>("brush");
+// QTest::addColumn<QSize>("size");
+
+// for (QMap<QString, QBrush>::const_iterator it = m_brushes.constBegin();
+// it != m_brushes.constEnd(); ++it) {
+// for (int w=2; w<1025; w*=2) {
+// for (int h=2; h<1025; h*=2) {
+// QTest::newRow(QString("brush=%1; size=[%2,%3]").arg(it.key()).arg(w).arg(h).toAscii().data())
+// << *it << QSize(w, h);
+// }
+// }
+// }
+// }
+
+
+
+
+
+// void QPainter_Primitives::fillRect()
+// {
+// QFETCH(QBrush, brush);
+// QFETCH(QSize, size);
+
+// QImage img(1024, 1024, QImage::Format_ARGB32_Premultiplied);
+// QPainter p(&img);
+// p.setPen(Qt::NoPen);
+// p.setBrush(brush);
+// QRect rect(QPoint(0, 0), size);
+// QBENCHMARK {
+// p.drawRect(rect);
+// }
+// }
+
+
+
+
+void tst_QPainter::beginAndEnd()
+{
+ QPixmap pixmap = rasterPixmap(100, 100);
+
+ QBENCHMARK {
+ QPainter p;
+ p.begin(&pixmap);
+ p.end();
+ }
+}
+
+void tst_QPainter::drawLine()
+{
+ QFETCH(QLine, line);
+ QFETCH(QPen, pen);
+
+ const int offset = 5;
+ QPixmap pixmapUnclipped =
+ rasterPixmap(qMin(line.x1(), line.x2())
+ + 2*offset + qAbs(line.dx()),
+ qMin(line.y1(), line.y2())
+ + 2*offset + qAbs(line.dy()));
+ pixmapUnclipped.fill(Qt::white);
+
+ QPainter p(&pixmapUnclipped);
+ p.translate(offset, offset);
+ p.setPen(pen);
+ p.paintEngine()->syncState();
+
+ QBENCHMARK {
+ p.drawLine(line);
+ }
+
+ p.end();
+
+}
+
+void tst_QPainter::drawLine_clipped_data()
+{
+ drawLine_data();
+}
+
+void tst_QPainter::drawLine_clipped()
+{
+ QFETCH(QLine, line);
+ QFETCH(QPen, pen);
+
+ const int offset = 5;
+ QPixmap pixmapClipped
+ = rasterPixmap(qMin(line.x1(), line.x2())
+ + 2*offset + qAbs(line.dx()),
+ qMin(line.y1(), line.y2())
+ + 2*offset + qAbs(line.dy()));
+
+ const QRect clip = QRect(line.p1(), line.p2()).normalized();
+
+ pixmapClipped.fill(Qt::white);
+ QPainter p(&pixmapClipped);
+ p.translate(offset, offset);
+ p.setClipRect(clip);
+ p.setPen(pen);
+ p.paintEngine()->syncState();
+
+ QBENCHMARK {
+ p.drawLine(line);
+ }
+
+ p.end();
+}
+
+
+void tst_QPainter::drawLine_antialiased_clipped_data()
+{
+ drawLine_data();
+}
+
+
+void tst_QPainter::drawLine_antialiased_clipped()
+{
+ QFETCH(QLine, line);
+ QFETCH(QPen, pen);
+
+ const int offset = 5;
+ QPixmap pixmapClipped
+ = rasterPixmap(qMin(line.x1(), line.x2())
+ + 2*offset + qAbs(line.dx()),
+ qMin(line.y1(), line.y2())
+ + 2*offset + qAbs(line.dy()));
+
+ const QRect clip = QRect(line.p1(), line.p2()).normalized();
+
+ pixmapClipped.fill(Qt::white);
+ QPainter p(&pixmapClipped);
+ p.setRenderHint(QPainter::Antialiasing);
+ p.translate(offset, offset);
+ p.setClipRect(clip);
+ p.setPen(pen);
+ p.paintEngine()->syncState();
+
+ QBENCHMARK {
+ p.drawLine(line);
+ }
+
+ p.end();
+}
+
+void tst_QPainter::drawPixmap_data()
+{
+ QTest::addColumn<QImage::Format>("sourceFormat");
+ QTest::addColumn<QImage::Format>("targetFormat");
+ QTest::addColumn<QSize>("size");
+ QTest::addColumn<int>("type"); // 0 = circle, 1 = diag line, 2 = solid rect, 3 = alpharect
+
+ QList<QSize> sizes;
+ sizes << QSize(1, 1)
+ << QSize(10, 10)
+ << QSize(100, 100)
+ << QSize(1000, 1000);
+
+ const char *typeNames[] = {
+ "circle",
+ "line",
+ "solidrect",
+ "alpharect"
+ };
+
+ const char *formatNames[] = {
+ "Invalid",
+ "Mono",
+ "MonoLSB",
+ "Indexed8",
+ "RGB32",
+ "ARGB32",
+ "ARGB32_pm",
+ "RGB16",
+ "ARGB8565_pm",
+ "RGB666",
+ "ARGB6666_pm",
+ "RGB555",
+ "ARGB8555_pm",
+ "RGB888",
+ "RGB444",
+ "ARGB4444_pm"
+ };
+
+ for (int tar=4; tar<QImage::NImageFormats; ++tar) {
+ for (int src=4; src<QImage::NImageFormats; ++src) {
+
+ // skip the low-priority formats to keep resultset manageable...
+ if (tar == QImage::Format_RGB444 || src == QImage::Format_RGB444
+ || tar == QImage::Format_RGB555 || src == QImage::Format_RGB555
+ || tar == QImage::Format_RGB666 || src == QImage::Format_RGB666
+ || tar == QImage::Format_RGB888 || src == QImage::Format_RGB888
+ || tar == QImage::Format_ARGB4444_Premultiplied
+ || src == QImage::Format_ARGB4444_Premultiplied
+ || tar == QImage::Format_ARGB6666_Premultiplied
+ || src == QImage::Format_ARGB6666_Premultiplied)
+ continue;
+
+ foreach (const QSize &s, sizes) {
+ for (int type=0; type<=3; ++type) {
+ QString name = QString::fromLatin1("%1 on %2, (%3x%4), %5")
+ .arg(formatNames[src])
+ .arg(formatNames[tar])
+ .arg(s.width()).arg(s.height())
+ .arg(typeNames[type]);
+ QTest::newRow(name.toLatin1()) << (QImage::Format) src
+ << (QImage::Format) tar
+ << s
+ << type;
+ }
+ }
+ }
+ }
+}
+
+static QImage createImage(int type, const QSize &size) {
+ QImage base(size, QImage::Format_ARGB32_Premultiplied);
+ base.fill(0);
+ QPainter p(&base);
+ p.setRenderHint(QPainter::Antialiasing);
+ switch (type) {
+ case 0: // ellipse
+ p.setBrush(Qt::red);
+ p.drawEllipse(0, 0, size.width(), size.height());
+ break;
+ case 1: // line
+ p.drawLine(0, 0, size.width(), size.height());
+ break;
+ case 2:
+ p.fillRect(0, 0, size.width(), size.height(), Qt::red);
+ break;
+ case 3:
+ p.fillRect(0, 0, size.width(), size.height(), QColor(0, 255, 0, 127));
+ break;
+ }
+ p.end();
+ return base;
+}
+
+
+void tst_QPainter::drawPixmap()
+{
+ QFETCH(QImage::Format, sourceFormat);
+ QFETCH(QImage::Format, targetFormat);
+ QFETCH(QSize, size);
+ QFETCH(int, type);
+
+ QImage sourceImage = createImage(type, size).convertToFormat(sourceFormat);
+ QImage targetImage(size, targetFormat);
+
+ QPixmap sourcePixmap = rasterPixmap(sourceImage);
+ QPixmap targetPixmap = rasterPixmap(targetImage);
+
+ QPainter p(&targetPixmap);
+
+ QBENCHMARK {
+ p.drawPixmap(0, 0, sourcePixmap);
+ }
+}
+
+void tst_QPainter::drawImage_data()
+{
+ drawPixmap_data();
+}
+
+
+void tst_QPainter::drawImage()
+{
+ QFETCH(QImage::Format, sourceFormat);
+ QFETCH(QImage::Format, targetFormat);
+ QFETCH(QSize, size);
+ QFETCH(int, type);
+
+ QImage sourceImage = createImage(type, size).convertToFormat(sourceFormat);
+ QImage targetImage(size, targetFormat);
+
+ QPainter p(&targetImage);
+ QBENCHMARK {
+ p.drawImage(0, 0, sourceImage);
+ }
+}
+
+
+void tst_QPainter::compositionModes_data()
+{
+ QTest::addColumn<QPainter::CompositionMode>("mode");
+ QTest::addColumn<QSize>("size");
+ QTest::addColumn<QColor>("color");
+
+ const int n = QPainter::RasterOp_SourceAndNotDestination;
+ for (int i = 0; i <= n; ++i) {
+ QString title("%1:%2");
+ QTest::newRow(qPrintable(title.arg(i).arg("10x10:opaque")))
+ << (QPainter::CompositionMode)(i)
+ << QSize(10, 10) << QColor(255, 0, 0);
+ QTest::newRow(qPrintable(title.arg(i).arg("10x10:!opaque")))
+ << (QPainter::CompositionMode)(i)
+ << QSize(10, 10) << QColor(127, 127, 127, 127);
+ QTest::newRow(qPrintable(title.arg(i).arg("300x300:opaque")))
+ << (QPainter::CompositionMode)(i)
+ << QSize(300, 300) << QColor(255, 0, 0);
+ QTest::newRow(qPrintable(title.arg(i).arg("300x300:!opaque")))
+ << (QPainter::CompositionMode)(i)
+ << QSize(300, 300) << QColor(127, 127, 127, 127);
+ }
+}
+
+void tst_QPainter::compositionModes()
+{
+ QFETCH(QPainter::CompositionMode, mode);
+ QFETCH(QSize, size);
+ QFETCH(QColor, color);
+
+ QPixmap src = rasterPixmap(size);
+ src.fill(color);
+
+ QPixmap dest = rasterPixmap(size);
+ if (mode < QPainter::RasterOp_SourceOrDestination)
+ color.setAlpha(127); // porter-duff needs an alpha channel
+ dest.fill(color);
+
+ QPainter p(&dest);
+ p.setCompositionMode(mode);
+
+ QBENCHMARK {
+ p.drawPixmap(0, 0, src);
+ }
+}
+
+void tst_QPainter::drawTiledPixmap_data()
+{
+ QTest::addColumn<QSize>("srcSize");
+ QTest::addColumn<QSize>("dstSize");
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<QColor>("color");
+ QTest::addColumn<QPainter::RenderHint>("renderHint");
+
+ QTest::newRow("10x10=>20x20")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform())
+ << QColor(Qt::black) << QPainter::RenderHint(0);
+ QTest::newRow("10x10=>20x20, smooth")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform())
+ << QColor(Qt::black) << QPainter::SmoothPixmapTransform;
+ QTest::newRow("10x10=>20x20, !opaque")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform())
+ << QColor(127, 127, 127, 127) << QPainter::RenderHint(0);
+ QTest::newRow("10x10=>20x20, !opaque, smooth")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform())
+ << QColor(127, 127, 127, 127) << QPainter::SmoothPixmapTransform;
+
+ QTest::newRow("10x10=>20x20, rotate(30)")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform().rotate(30))
+ << QColor(Qt::black) << QPainter::RenderHint(0);
+ QTest::newRow("10x10=>20x20, rotate(30), smooth")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform().rotate(30))
+ << QColor(Qt::black) << QPainter::SmoothPixmapTransform;
+ QTest::newRow("10x10=>20x20, rotate(30), !opaque")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform().rotate(30))
+ << QColor(127, 127, 127, 127) << QPainter::RenderHint(0);
+ QTest::newRow("10x10=>20x20, rotate(30), !opaque, smooth")
+ << QSize(10, 10) << QSize(20, 20) << (QTransform().rotate(30))
+ << QColor(127, 127, 127, 127) << QPainter::SmoothPixmapTransform;
+
+ QTest::newRow("100x100=>200x200")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform())
+ << QColor(Qt::black) << QPainter::RenderHint(0);
+ QTest::newRow("100x100=>200x200, smooth")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform())
+ << QColor(Qt::black) << QPainter::SmoothPixmapTransform;
+ QTest::newRow("100x100=>200x200, !opaque")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform())
+ << QColor(127, 127, 127, 127) << QPainter::RenderHint(0);
+ QTest::newRow("100x100=>200x200, !opaque, smooth")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform())
+ << QColor(127, 127, 127, 127) << QPainter::SmoothPixmapTransform;
+
+ QTest::newRow("100x100=>200x200, rotate(30)")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform().rotate(30))
+ << QColor(Qt::black) << QPainter::RenderHint(0);
+ QTest::newRow("100x100=>200x200, rotate(30), smooth")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform().rotate(30))
+ << QColor(Qt::black) << QPainter::SmoothPixmapTransform;
+ QTest::newRow("100x100=>200x200, rotate(30), !opaque")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform().rotate(30))
+ << QColor(127, 127, 127, 127) << QPainter::RenderHint(0);
+ QTest::newRow("100x100=>200x200, rotate(30), !opaque, smooth")
+ << QSize(100, 100) << QSize(200, 200) << (QTransform().rotate(30))
+ << QColor(127, 127, 127, 127) << QPainter::SmoothPixmapTransform;
+}
+
+void tst_QPainter::drawTiledPixmap()
+{
+ QFETCH(QSize, srcSize);
+ QFETCH(QSize, dstSize);
+ QFETCH(QTransform, transform);
+ QFETCH(QColor, color);
+ QFETCH(QPainter::RenderHint, renderHint);
+
+ QPixmap src = rasterPixmap(srcSize);
+ src.fill(color);
+
+ const QRect dstRect = transform.mapRect(QRect(QPoint(), dstSize));
+ QPixmap dst = rasterPixmap(dstRect.right() + 5, dstRect.bottom() + 5);
+ QPainter p(&dst);
+ p.setTransform(transform);
+ p.setRenderHint(renderHint);
+
+ QBENCHMARK {
+ p.drawTiledPixmap(QRect(QPoint(), dstSize), src);
+ }
+}
+
+void tst_QPainter::fillPrimitives_helper(QPainter *p, PrimitiveType type, PrimitiveSet *s)
+{
+ p->paintEngine()->syncState();
+
+ switch (type) {
+ case Primitive_Int_DiagLine: QBENCHMARK { p->drawLine(s->i_line_diag); } break;
+ case Primitive_Int_VerLine: QBENCHMARK { p->drawLine(s->i_line_ver); } break;
+ case Primitive_Int_HorLine: QBENCHMARK { p->drawLine(s->i_line_hor); } break;
+ case Primitive_Int_Rect: QBENCHMARK { p->drawRect(s->i_rect); } break;
+ case Primitive_Int_Ellipse: QBENCHMARK { p->drawEllipse(s->i_rect); } break;
+ case Primitive_Int_Pie: QBENCHMARK { p->drawPie(s->i_rect, 45*16, 270*16); } break;
+ case Primitive_Int_Arc: QBENCHMARK { p->drawArc(s->i_rect, 45*16, 270*16); } break;
+ case Primitive_Int_Chord: QBENCHMARK { p->drawChord(s->i_rect, 45*16, 270*16); } break;
+ case Primitive_Int_TriPoly: QBENCHMARK { p->drawPolygon(s->i_poly_tri); } break;
+ case Primitive_Int_RectPoly: QBENCHMARK { p->drawPolygon(s->i_poly_rect); } break;
+ case Primitive_Int_2RectPoly: QBENCHMARK { p->drawPolygon(s->i_poly_2rects); } break;
+
+ case Primitive_Float_DiagLine: QBENCHMARK { p->drawLine(s->f_line_diag); } break;
+ case Primitive_Float_VerLine: QBENCHMARK { p->drawLine(s->f_line_ver); } break;
+ case Primitive_Float_HorLine: QBENCHMARK { p->drawLine(s->f_line_hor); } break;
+ case Primitive_Float_Rect: QBENCHMARK { p->drawRect(s->f_rect); } break;
+ case Primitive_Float_Ellipse: QBENCHMARK { p->drawEllipse(s->f_rect); } break;
+ case Primitive_Float_Pie: QBENCHMARK { p->drawPie(s->f_rect, 45*16, 270*16); } break;
+ case Primitive_Float_Arc: QBENCHMARK { p->drawArc(s->f_rect, 45*16, 270*16); } break;
+ case Primitive_Float_Chord: QBENCHMARK { p->drawChord(s->f_rect, 45*16, 270*16); } break;
+ case Primitive_Float_TriPoly: QBENCHMARK { p->drawPolygon(s->f_poly_tri); } break;
+ case Primitive_Float_RectPoly: QBENCHMARK { p->drawPolygon(s->f_poly_rect); } break;
+ case Primitive_Float_2RectPoly: QBENCHMARK { p->drawPolygon(s->f_poly_2rects); } break;
+
+ case Primitive_Float_TriPath: QBENCHMARK { p->drawPath(s->f_path_tri); } break;
+ case Primitive_Float_RectPath: QBENCHMARK { p->drawPath(s->f_path_rect); } break;
+ case Primitive_Float_2RectPath: QBENCHMARK { p->drawPath(s->f_path_2rects); } break;
+ case Primitive_Float_EllipsePath: QBENCHMARK { p->drawPath(s->f_path_ellipse); } break;
+ }
+}
+
+void tst_QPainter::drawPrimitives_data_helper(bool fancypens)
+{
+ QTest::addColumn<int>("type");
+ QTest::addColumn<bool>("aa");
+ QTest::addColumn<bool>("dash");
+ QTest::addColumn<int>("width");
+
+ const char * const names[] = {
+ "IDLine",
+ "IVLine",
+ "IHLine",
+ "IRect",
+ "IElli",
+ "IPie",
+ "IArc",
+ "IChord",
+ "ITriPol",
+ "IRectPol",
+ "I2RectPol",
+ "FDLine",
+ "FVLine",
+ "FHLine",
+ "FRect",
+ "FElli",
+ "FPie",
+ "FArc",
+ "FChord",
+ "FTriPol",
+ "FRectPol",
+ "F2RectPol",
+ "FTriPa",
+ "FRectPa",
+ "F2RectPa",
+ "FElliPa"
+ };
+
+ if (fancypens) {
+ for (int dash=0; dash<2; ++dash) {
+ for (int width=0; width<=4; width+=4) {
+ for (int aa=0; aa<2; ++aa) {
+ for (int type=0; type<Primitive_Last_Primitive; ++type) {
+ QString name = QString::fromLatin1(names[type]);
+
+ if (aa) name += " aa";
+ if (dash) name += " dotted";
+ if (width) name += QString::fromLatin1(" width=%1").arg(width);
+
+ QTest::newRow(name.toLatin1()) << type << (bool) aa << (bool) dash << width;
+ }
+ }
+ }
+ }
+ } else {
+ for (int aa=0; aa<2; ++aa) {
+ for (int type=0; type<Primitive_Last_Primitive; ++type) {
+ QString name = QString::fromLatin1(names[type]);
+ if (aa) name += " aa";
+ QTest::newRow(name.toLatin1()) << type << (bool) aa;
+ }
+ }
+ }
+}
+
+
+void tst_QPainter::fillPrimitives_10()
+{
+ QFETCH(int, type);
+ QFETCH(bool, aa);
+ QPainter p(m_surface);
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::red);
+ p.setRenderHint(QPainter::Antialiasing, aa);
+ fillPrimitives_helper(&p, (PrimitiveType) type, &m_primitives_10);
+}
+
+
+void tst_QPainter::fillPrimitives_100()
+{
+ QFETCH(int, type);
+ QFETCH(bool, aa);
+ QPainter p(m_surface);
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::red);
+ p.setRenderHint(QPainter::Antialiasing, aa);
+ fillPrimitives_helper(&p, (PrimitiveType) type, &m_primitives_100);
+}
+
+
+void tst_QPainter::fillPrimitives_1000()
+{
+ QFETCH(int, type);
+ QFETCH(bool, aa);
+ QPainter p(m_surface);
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::red);
+ p.setRenderHint(QPainter::Antialiasing, aa);
+ fillPrimitives_helper(&p, (PrimitiveType) type, &m_primitives_1000);
+}
+
+void tst_QPainter::strokePrimitives_10()
+{
+ QFETCH(int, type);
+ QFETCH(bool, aa);
+ QFETCH(bool, dash);
+ QFETCH(int, width);
+ QPainter p(m_surface);
+ p.setPen(QPen(Qt::red, width, dash ? Qt::DashLine : Qt::SolidLine));
+ p.setBrush(Qt::NoBrush);
+ p.setRenderHint(QPainter::Antialiasing, aa);
+ fillPrimitives_helper(&p, (PrimitiveType) type, &m_primitives_10);
+}
+
+void tst_QPainter::strokePrimitives_100()
+{
+ QFETCH(int, type);
+ QFETCH(bool, aa);
+ QFETCH(bool, dash);
+ QFETCH(int, width);
+ QPainter p(m_surface);
+ p.setPen(QPen(Qt::red, width, dash ? Qt::DashLine : Qt::SolidLine));
+ p.setBrush(Qt::NoBrush);
+ p.setRenderHint(QPainter::Antialiasing, aa);
+ fillPrimitives_helper(&p, (PrimitiveType) type, &m_primitives_100);
+}
+
+void tst_QPainter::strokePrimitives_1000()
+{
+ QFETCH(int, type);
+ QFETCH(bool, aa);
+ QFETCH(bool, dash);
+ QFETCH(int, width);
+ QPainter p(m_surface);
+ p.setPen(QPen(Qt::red, width, dash ? Qt::DashLine : Qt::SolidLine));
+ p.setBrush(Qt::NoBrush);
+ p.setRenderHint(QPainter::Antialiasing, aa);
+ fillPrimitives_helper(&p, (PrimitiveType) type, &m_primitives_1000);
+}
+
+void tst_QPainter::drawText_data()
+{
+ QTest::addColumn<QString>("text");
+
+ QTest::newRow("a") << QString::fromLatin1("a");
+ QTest::newRow("ab") << QString::fromLatin1("ab");
+ QTest::newRow("abc") << QString::fromLatin1("abc");
+ QTest::newRow("abcd") << QString::fromLatin1("abcd");
+ QTest::newRow("abcde") << QString::fromLatin1("abcde");
+ QTest::newRow("abcdef") << QString::fromLatin1("abcdef");
+ QTest::newRow("abcdefg") << QString::fromLatin1("abcdefg");
+}
+
+void tst_QPainter::drawText()
+{
+ QFETCH(QString, text);
+
+ QPainter p(m_surface);
+
+ QBENCHMARK {
+ p.drawText(QPointF(5, 5), text);
+ }
+}
+
+void tst_QPainter::saveRestore_data()
+{
+ QTest::addColumn<int>("change");
+
+ for (int i=0; i<16; ++i) {
+ QString change = "change=";
+ if (i == 0) change += " none";
+ if (i & ChangePen) change += " pen";
+ if (i & ChangeBrush) change += " brush";
+ if (i & ChangeClip) change += " clip";
+ if (i & ChangeTransform) change += " xform";
+
+ QTest::newRow(change.toLatin1()) << i;
+ }
+}
+
+void tst_QPainter::saveRestore()
+{
+ QFETCH(int, change);
+
+ QPen pen(Qt::blue);
+ QBrush brush(Qt::green);
+ QRect r(100, 100, 100, 20);
+
+ QPainter p(m_surface);
+
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::NoBrush);
+
+ QBENCHMARK {
+ p.save();
+ if (change & ChangePen) { p.setPen(pen); p.setPen(Qt::NoPen); }
+ if (change & ChangeBrush) { p.setBrush(brush); p.setBrush(Qt::NoBrush); }
+ if (change & ChangeClip) p.setClipRect(r);
+ if (change & ChangeTransform) { p.scale(3, 5); p.scale(1/3.0, 1/5.0); }
+ p.drawRect(0, 0, 1, 1);
+ p.restore();
+ };
+}
+
+enum ClipType {
+ RectClipType,
+ RectPathClipType,
+ RectRegionClipType,
+ RegionClipType,
+ PathClipType
+};
+
+void tst_QPainter::clipAndFill_data()
+{
+ QTest::addColumn<int>("type");
+
+ QTest::newRow("rect") << (int) RectClipType;
+ QTest::newRow("rectpath") << (int) RectPathClipType;
+ QTest::newRow("rectregion") << (int) RectRegionClipType;
+ QTest::newRow("ellipseRegion") << (int) RegionClipType;
+ QTest::newRow("ellipsePath") << (int) PathClipType;
+}
+
+
+void tst_QPainter::clipAndFill()
+{
+ QFETCH(int, type);
+
+ QRegion region;
+ QPainterPath path;
+ QRectF rect;
+
+ switch (type) {
+ case RectClipType:
+ rect = QRectF(100, 100, 100, 100);
+ break;
+ case RectPathClipType:
+ path.addRect(100, 100, 100, 100);
+ break;
+ case RectRegionClipType:
+ region = QRegion(100, 100, 100, 100);
+ break;
+ case RegionClipType:
+ region = QRegion(100, 100, 100, 100, QRegion::Ellipse);
+ break;
+ case PathClipType:
+ path.addEllipse(100, 100, 100, 100);
+ break;
+ }
+
+ QPainter p(m_surface);
+
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::red);
+
+ QBENCHMARK {
+ if (type == RectClipType)
+ p.setClipRect(rect);
+ else if (type == RectPathClipType || type == PathClipType)
+ p.setClipPath(path);
+ else
+ p.setClipRegion(region);
+ p.drawRect(110, 110, 10, 10);
+ }
+}
+
+QTransform tst_QPainter::transformForAngle(qreal angle)
+{
+ const qreal inv_dist_to_plane = 1. / 1024.;
+
+ QTransform transform;
+
+ QTransform rotTrans;
+ rotTrans.translate(-40, 0);
+ QTransform rotTrans2;
+ rotTrans2.translate(40, 0);
+
+ qreal rad = angle * 2. * M_PI / 360.;
+ qreal c = ::cos(rad);
+ qreal s = ::sin(rad);
+
+ qreal x = 0;
+ qreal y = 80;
+ qreal z = 0;
+
+ qreal len = x * x + y * y + z * z;
+ if (len != 1.) {
+ len = ::sqrt(len);
+ x /= len;
+ y /= len;
+ z /= len;
+ }
+
+ QTransform rot(x*x*(1-c)+c, x*y*(1-c)-z*s, x*z*(1-c)+y*s*inv_dist_to_plane,
+ y*x*(1-c)+z*s, y*y*(1-c)+c, y*z*(1-c)-x*s*inv_dist_to_plane,
+ 0, 0, 1);
+
+ transform *= rotTrans;
+ transform *= rot;
+ transform *= rotTrans2;
+
+ return transform;
+}
+
+void tst_QPainter::drawRoundedRect()
+{
+ QImage surface(100, 100, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ p.setPen(QPen(Qt::black, 1));
+ p.setBrush(Qt::red);
+
+ QBENCHMARK {
+ p.drawRoundedRect(QRectF(.5, .5, 80, 80), 10, 10);
+ }
+}
+
+void tst_QPainter::drawScaledRoundedRect()
+{
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ p.setPen(QPen(Qt::black, 1));
+ p.setBrush(Qt::red);
+ p.scale(3, 3);
+
+ QBENCHMARK {
+ p.drawRoundedRect(10, 10, 80, 80, 10, 10);
+ }
+}
+
+void tst_QPainter::drawTransformedRoundedRect()
+{
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ p.setPen(QPen(Qt::black, 1));
+ p.setBrush(Qt::red);
+
+ QBENCHMARK {
+ p.setWorldTransform(QTransform(0.956957, 0, 0.000704124, 0, 1, 0, 16.141, 0, 0.735953));
+ p.drawRoundedRect(100, 100, 80, 80, 10, 10);
+ }
+}
+
+void tst_QPainter::drawAntialiasedRoundedRect()
+{
+ QImage surface(100, 100, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ p.setRenderHint(QPainter::Antialiasing, true);
+ p.setPen(QPen(Qt::black, 1));
+ p.setBrush(Qt::red);
+
+ QBENCHMARK {
+ p.drawRoundedRect(QRectF(.5, .5, 80, 80), 10, 10);
+ }
+}
+
+void tst_QPainter::drawScaledAntialiasedRoundedRect_data()
+{
+ QTest::addColumn<float>("scale");
+
+ for (float i = 0; i < 3; i += .1)
+ QTest::newRow(QString(QLatin1String("scale=%1")).arg(i).toLatin1()) << i;
+}
+
+void tst_QPainter::drawScaledAntialiasedRoundedRect()
+{
+ QFETCH(float, scale);
+
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ p.setRenderHint(QPainter::Antialiasing, true);
+ p.setPen(QPen(Qt::black, 1));
+ p.setBrush(Qt::red);
+ p.scale(scale, scale);
+
+ QBENCHMARK {
+ p.drawRoundedRect(10, 10, 80, 80, 10, 10);
+ }
+}
+
+void tst_QPainter::drawTransformedAntialiasedRoundedRect_data()
+{
+ QTest::addColumn<QTransform>("transform");
+
+ for (float angle = 0; angle < 360; angle += 10)
+ QTest::newRow(QString(QLatin1String("angle=%1")).arg(angle).toLatin1()) << transformForAngle(angle);
+}
+
+void tst_QPainter::drawTransformedAntialiasedRoundedRect()
+{
+ QFETCH(QTransform, transform);
+
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ p.setRenderHint(QPainter::Antialiasing, true);
+ p.setPen(QPen(Qt::black, 1));
+ p.setBrush(Qt::red);
+
+ QBENCHMARK {
+ p.setWorldTransform(transform);
+ p.drawRoundedRect(100, 100, 80, 80, 10, 10);
+ }
+}
+
+void tst_QPainter::drawImageRoundedRect()
+{
+ //setup image
+ const int radius = 10;
+ QImage rectImage(81, 81, QImage::Format_ARGB32_Premultiplied);
+ rectImage.fill(0);
+ QPainter rp(&rectImage);
+ rp.setRenderHint(QPainter::Antialiasing);
+ rp.setPen(Qt::black);
+ rp.setBrush(Qt::red);
+ rp.drawRoundedRect(QRectF(.5, .5, 80, 80), radius, radius);
+
+ //setup surface
+ QImage surface(100, 100, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ p.drawImage(0,0, rectImage);
+ }
+}
+
+void tst_QPainter::drawScaledImageRoundedRect_data()
+{
+ QTest::addColumn<int>("imageType");
+
+ QTest::newRow("imagetype=ARGB32_Pre") << (int)QImage::Format_ARGB32_Premultiplied;
+ QTest::newRow("imagetype=ARGB8565_Pre") << (int)QImage::Format_ARGB8565_Premultiplied;
+}
+
+void tst_QPainter::drawScaledImageRoundedRect()
+{
+ QFETCH(int, imageType);
+
+ //setup image
+ const int radius = 10;
+ QImage rectImage(81, 81, (QImage::Format)imageType);
+ rectImage.fill(0);
+ QPainter rp(&rectImage);
+ rp.setRenderHint(QPainter::Antialiasing);
+ rp.setPen(Qt::black);
+ rp.setBrush(Qt::red);
+ rp.drawRoundedRect(QRectF(.5, .5, 80, 80), radius, radius);
+
+ //setup surface
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+ p.scale(3, 3);
+
+ QBENCHMARK {
+ p.drawImage(0,0, rectImage);
+ }
+}
+
+void tst_QPainter::drawTransformedImageRoundedRect_data()
+{
+ QTest::addColumn<int>("imageType");
+
+ QTest::newRow("imagetype=ARGB32_Pre") << (int)QImage::Format_ARGB32_Premultiplied;
+ QTest::newRow("imagetype=ARGB8565_Pre") << (int)QImage::Format_ARGB8565_Premultiplied;
+}
+
+void tst_QPainter::drawTransformedImageRoundedRect()
+{
+ QFETCH(int, imageType);
+
+ //setup image
+ const int radius = 10;
+ QImage rectImage(81, 81, (QImage::Format)imageType);
+ rectImage.fill(0);
+ QPainter rp(&rectImage);
+ rp.setRenderHint(QPainter::Antialiasing);
+ rp.setPen(Qt::black);
+ rp.setBrush(Qt::red);
+ rp.drawRoundedRect(QRectF(.5, .5, 80, 80), radius, radius);
+
+ //setup surface
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ p.setWorldTransform(QTransform(0.956957, 0, 0.000704124, 0, 1, 0, 16.141, 0, 0.735953));
+ p.drawImage(100,100, rectImage);
+ }
+}
+
+//code from QDeclarativeRectangle for drawing rounded rects
+void tst_QPainter::drawBorderPixmapRoundedRect()
+{
+ //setup image
+ const int pw = 1;
+ const int radius = 10;
+ QImage rectImage(radius*2 + 3 + pw*2, radius*2 + 3 + pw*2, QImage::Format_ARGB32_Premultiplied);
+ rectImage.fill(0);
+ QPainter rp(&rectImage);
+ rp.setRenderHint(QPainter::Antialiasing);
+ rp.setPen(Qt::black);
+ rp.setBrush(Qt::red);
+ if (pw%2)
+ rp.drawRoundedRect(QRectF(qreal(pw)/2+1, qreal(pw)/2+1, rectImage.width()-(pw+1), rectImage.height()-(pw+1)), radius, radius);
+ else
+ rp.drawRoundedRect(QRectF(qreal(pw)/2, qreal(pw)/2, rectImage.width()-pw, rectImage.height()-pw), radius, radius);
+ QPixmap rectPixmap = rasterPixmap(rectImage);
+
+ //setup surface
+ QImage surface(100, 100, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ const int pw = 2;
+ int width = 80;
+ int height = 80;
+
+ int xOffset = (rectPixmap.width()-1)/2;
+ int yOffset = (rectPixmap.height()-1)/2;
+ Q_ASSERT(rectPixmap.width() == 2*xOffset + 1);
+ Q_ASSERT(rectPixmap.height() == 2*yOffset + 1);
+
+ QMargins margins(xOffset, yOffset, xOffset, yOffset);
+ QTileRules rules(Qt::StretchTile, Qt::StretchTile);
+ //NOTE: even though our item may have qreal-based width and height, qDrawBorderPixmap only supports QRects
+ qDrawBorderPixmap(&p, QRect(-pw/2, -pw/2, width+pw, height+pw), margins, rectPixmap, rectPixmap.rect(), margins, rules);
+ }
+}
+
+void tst_QPainter::drawScaledBorderPixmapRoundedRect_data()
+{
+ QTest::addColumn<float>("scale");
+ QTest::addColumn<int>("imageType");
+
+ for (float i = 0; i < 3; i += .1)
+ QTest::newRow(QString(QLatin1String("scale=%1; imagetype=ARGB32_Pre")).arg(i).toLatin1()) << i << (int)QImage::Format_ARGB32_Premultiplied;
+ //for (float i = 0; i < 3; i += .1)
+ // QTest::newRow(QString(QLatin1String("scale=%1; imagetype=ARGB8565_Pre")).arg(i).toLatin1()) << i << (int)QImage::Format_ARGB8565_Premultiplied;
+}
+
+//code from QDeclarativeRectangle for drawing rounded rects
+void tst_QPainter::drawScaledBorderPixmapRoundedRect()
+{
+ QFETCH(float, scale);
+ QFETCH(int, imageType);
+
+ //setup image
+ const int pw = 1;
+ const int radius = 10;
+ QImage rectImage(radius*2 + 3 + pw*2, radius*2 + 3 + pw*2, (QImage::Format)imageType);
+ rectImage.fill(0);
+ QPainter rp(&rectImage);
+ rp.setRenderHint(QPainter::Antialiasing);
+ rp.setPen(Qt::black);
+ rp.setBrush(Qt::red);
+ if (pw%2)
+ rp.drawRoundedRect(QRectF(qreal(pw)/2+1, qreal(pw)/2+1, rectImage.width()-(pw+1), rectImage.height()-(pw+1)), radius, radius);
+ else
+ rp.drawRoundedRect(QRectF(qreal(pw)/2, qreal(pw)/2, rectImage.width()-pw, rectImage.height()-pw), radius, radius);
+
+ QPixmap rectPixmap = rasterPixmap(rectImage);
+
+ //setup surface
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+ p.scale(scale, scale);
+
+ QBENCHMARK {
+ const int pw = 2;
+ int width = 80;
+ int height = 80;
+
+ int xOffset = (rectPixmap.width()-1)/2;
+ int yOffset = (rectPixmap.height()-1)/2;
+ Q_ASSERT(rectPixmap.width() == 2*xOffset + 1);
+ Q_ASSERT(rectPixmap.height() == 2*yOffset + 1);
+
+ QMargins margins(xOffset, yOffset, xOffset, yOffset);
+ QTileRules rules(Qt::StretchTile, Qt::StretchTile);
+ qDrawBorderPixmap(&p, QRect(-pw/2, -pw/2, width+pw, height+pw), margins, rectPixmap, rectPixmap.rect(), margins, rules);
+ }
+}
+
+void tst_QPainter::drawTransformedBorderPixmapRoundedRect_data()
+{
+ QTest::addColumn<QTransform>("transform");
+ QTest::addColumn<int>("imageType");
+
+ for (float angle = 0; angle < 360; angle += 10)
+ QTest::newRow(QString(QLatin1String("angle=%1; imagetype=ARGB32_Pre")).arg(angle).toLatin1()) << transformForAngle(angle) << (int)QImage::Format_ARGB32_Premultiplied;
+ //for (float angle = 0; angle < 360; angle += 10)
+ // QTest::newRow(QString(QLatin1String("angle=%1; imagetype=ARGB8565_Pre")).arg(angle).toLatin1()) << transformForAngle(angle) << (int)QImage::Format_ARGB8565_Premultiplied;
+
+}
+
+//code from QDeclarativeRectangle for drawing rounded rects
+void tst_QPainter::drawTransformedBorderPixmapRoundedRect()
+{
+ QFETCH(QTransform, transform);
+ QFETCH(int, imageType);
+
+ //setup image
+ const int pw = 1;
+ const int radius = 10;
+ QImage rectImage(radius*2 + 3 + pw*2, radius*2 + 3 + pw*2, (QImage::Format)imageType);
+ rectImage.fill(0);
+ QPainter rp(&rectImage);
+ rp.setRenderHint(QPainter::Antialiasing);
+ rp.setPen(Qt::black);
+ rp.setBrush(Qt::red);
+ if (pw%2)
+ rp.drawRoundedRect(QRectF(qreal(pw)/2+1, qreal(pw)/2+1, rectImage.width()-(pw+1), rectImage.height()-(pw+1)), radius, radius);
+ else
+ rp.drawRoundedRect(QRectF(qreal(pw)/2, qreal(pw)/2, rectImage.width()-pw, rectImage.height()-pw), radius, radius);
+
+ QPixmap rectPixmap = rasterPixmap(rectImage);
+
+ //setup surface
+ QImage surface(400, 400, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ p.setWorldTransform(transform);
+ const int pw = 2;
+ int width = 80;
+ int height = 80;
+
+ int xOffset = (rectPixmap.width()-1)/2;
+ int yOffset = (rectPixmap.height()-1)/2;
+ Q_ASSERT(rectPixmap.width() == 2*xOffset + 1);
+ Q_ASSERT(rectPixmap.height() == 2*yOffset + 1);
+
+ QMargins margins(xOffset, yOffset, xOffset, yOffset);
+ QTileRules rules(Qt::StretchTile, Qt::StretchTile);
+ qDrawBorderPixmap(&p, QRect(-pw/2, -pw/2, width+pw, height+pw), margins, rectPixmap, rectPixmap.rect(), margins, rules);
+ }
+}
+
+void tst_QPainter::drawTransformedTransparentImage_data()
+{
+ QTest::addColumn<int>("imageType");
+
+ QTest::newRow("imagetype=ARGB32_Pre") << (int)QImage::Format_ARGB32_Premultiplied;
+ QTest::newRow("imagetype=ARGB8565_Pre") << (int)QImage::Format_ARGB8565_Premultiplied;
+}
+
+void tst_QPainter::drawTransformedTransparentImage()
+{
+ QFETCH(int, imageType);
+
+ //setup image
+ QImage transImage(200, 200, (QImage::Format)imageType);
+ transImage.fill(0);
+
+ //setup surface
+ QImage surface(200, 200, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ p.setWorldTransform(QTransform(0.956957, 0, 0.000704124, 0, 1, 0, 16.141, 0, 0.735953));
+ p.drawImage(0,0, transImage);
+ }
+}
+
+void tst_QPainter::drawTransformedSemiTransparentImage_data()
+{
+ QTest::addColumn<int>("imageType");
+
+ QTest::newRow("imagetype=ARGB32_Pre") << (int)QImage::Format_ARGB32_Premultiplied;
+ QTest::newRow("imagetype=ARGB8565_Pre") << (int)QImage::Format_ARGB8565_Premultiplied;
+}
+
+void tst_QPainter::drawTransformedSemiTransparentImage()
+{
+ QFETCH(int, imageType);
+
+ //setup image
+ QImage transImage(200, 200, (QImage::Format)imageType);
+ transImage.fill(QColor(0,0,0, 128).rgba());
+
+ //setup surface
+ QImage surface(200, 200, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ p.setWorldTransform(QTransform(0.956957, 0, 0.000704124, 0, 1, 0, 16.141, 0, 0.735953));
+ p.drawImage(0,0, transImage);
+ }
+}
+
+void tst_QPainter::drawTransformedFilledImage_data()
+{
+ QTest::addColumn<int>("imageType");
+
+ QTest::newRow("imagetype=ARGB32_Pre") << (int)QImage::Format_ARGB32_Premultiplied;
+ QTest::newRow("imagetype=ARGB8565_Pre") << (int)QImage::Format_ARGB8565_Premultiplied;
+}
+
+void tst_QPainter::drawTransformedFilledImage()
+{
+ QFETCH(int, imageType);
+
+ //setup image
+ QImage filledImage(200, 200, (QImage::Format)imageType);
+ filledImage.fill(QColor(0,0,0).rgb());
+
+ //setup surface
+ QImage surface(200, 200, QImage::Format_RGB16);
+ surface.fill(QColor(255,255,255).rgb());
+ QPainter p(&surface);
+
+ QBENCHMARK {
+ p.setWorldTransform(QTransform(0.956957, 0, 0.000704124, 0, 1, 0, 16.141, 0, 0.735953));
+ p.drawImage(0,0, filledImage);
+ }
+}
+
+
+QTEST_MAIN(tst_QPainter)
+
+#include "tst_qpainter.moc"
diff --git a/tests/benchmarks/gui/painting/qregion/main.cpp b/tests/benchmarks/gui/painting/qregion/main.cpp
new file mode 100644
index 0000000000..31347bbccc
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qregion/main.cpp
@@ -0,0 +1,139 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+// This file contains benchmarks for QRegion functions.
+
+#include <QDebug>
+#include <qtest.h>
+
+class tst_qregion : public QObject
+{
+ Q_OBJECT
+private slots:
+ void map_data();
+ void map();
+
+ void intersects_data();
+ void intersects();
+};
+
+
+void tst_qregion::map_data()
+{
+ QTest::addColumn<QRegion>("region");
+
+ {
+ QRegion region(0, 0, 100, 100);
+ QTest::newRow("single rect") << region;
+ }
+ {
+ QRegion region;
+ region = region.united(QRect(0, 0, 100, 100));
+ region = region.united(QRect(120, 20, 100, 100));
+
+ QTest::newRow("two rects") << region;
+ }
+ {
+ QRegion region(0, 0, 100, 100, QRegion::Ellipse);
+ QTest::newRow("ellipse") << region;
+ }
+}
+
+void tst_qregion::map()
+{
+ QFETCH(QRegion, region);
+
+ QTransform transform;
+ transform.rotate(30);
+ QBENCHMARK {
+ transform.map(region);
+ }
+}
+
+void tst_qregion::intersects_data()
+{
+ QTest::addColumn<QRegion>("region");
+ QTest::addColumn<QRect>("rect");
+
+ QRegion region(0, 0, 100, 100);
+ QRegion complexRegion;
+ complexRegion = complexRegion.united(QRect(0, 0, 100, 100));
+ complexRegion = complexRegion.united(QRect(120, 20, 100, 100));
+
+ {
+ QRect rect(0, 0, 100, 100);
+ QTest::newRow("same -- simple") << region << rect;
+ }
+ {
+ QRect rect(10, 10, 10, 10);
+ QTest::newRow("inside -- simple") << region << rect;
+ }
+ {
+ QRect rect(110, 110, 10, 10);
+ QTest::newRow("outside -- simple") << region << rect;
+ }
+
+ {
+ QRect rect(0, 0, 100, 100);
+ QTest::newRow("same -- complex") << complexRegion << rect;
+ }
+ {
+ QRect rect(10, 10, 10, 10);
+ QTest::newRow("inside -- complex") << complexRegion << rect;
+ }
+ {
+ QRect rect(110, 110, 10, 10);
+ QTest::newRow("outside -- complex") << complexRegion << rect;
+ }
+}
+
+void tst_qregion::intersects()
+{
+ QFETCH(QRegion, region);
+ QFETCH(QRect, rect);
+
+ QBENCHMARK {
+ region.intersects(rect);
+ }
+}
+
+QTEST_MAIN(tst_qregion)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/painting/qregion/qregion.pro b/tests/benchmarks/gui/painting/qregion/qregion.pro
new file mode 100644
index 0000000000..ec93a62576
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qregion/qregion.pro
@@ -0,0 +1,10 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qregion
+DEPENDPATH += .
+INCLUDEPATH += .
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/painting/qtbench/benchmarktests.h b/tests/benchmarks/gui/painting/qtbench/benchmarktests.h
new file mode 100644
index 0000000000..f5bc717cfb
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtbench/benchmarktests.h
@@ -0,0 +1,841 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef BENCHMARKTESTS_H
+#define BENCHMARKTESTS_H
+
+#include <QApplication>
+#include <QTextDocument>
+#include <QDesktopWidget>
+#include <QTextLayout>
+#include <QFontMetrics>
+#include <QDebug>
+
+#if QT_VERSION >= QT_VERSION_CHECK(4, 7, 0)
+# include <QStaticText>
+#endif
+
+class Benchmark
+{
+public:
+ virtual ~Benchmark() {}
+
+ Benchmark(const QSize &size)
+ : m_size(size)
+ {
+ for (int i=0; i<16; ++i) {
+ m_colors[i] = QColor::fromRgbF((rand() % 4) / 3.0,
+ (rand() % 4) / 3.0,
+ (rand() % 4) / 3.0,
+ 1);
+ }
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int iteration) = 0;
+ virtual QString name() const = 0;
+
+ inline const QSize &size() const
+ {
+ return m_size;
+ }
+ virtual void begin(QPainter *, int iterations = 1) { Q_UNUSED(iterations); }
+ virtual void end(QPainter *) { }
+
+ inline const QColor &randomColor(int i) { return m_colors[i % 16]; }
+
+protected:
+ QColor m_colors[16];
+ QSize m_size;
+};
+
+class PaintingRectAdjuster
+{
+public:
+ PaintingRectAdjuster()
+ : m_benchmark(0),
+ m_bounds(),
+ m_screen_filled(false)
+ {
+ }
+
+ const QRect &newPaintingRect() {
+ m_rect.translate(m_rect.width(), 0);
+
+ if (m_rect.right() > m_bounds.width()) {
+ m_rect.moveLeft(m_bounds.left());
+ m_rect.translate(0,m_rect.height());
+ if (m_rect.bottom() > m_bounds.height()) {
+ m_screen_filled = true;
+ m_rect.moveTo(m_bounds.topLeft());
+ }
+ }
+ return m_rect;
+ }
+
+ inline bool isScreenFilled() const
+ { return m_screen_filled; }
+
+ void reset(const QRect &bounds)
+ {
+ m_bounds = bounds;
+ m_rect.moveTo(m_bounds.topLeft());
+ m_rect = QRect(m_bounds.topLeft(),m_benchmark->size());
+ m_rect.translate(-m_rect.width(),0);
+ m_screen_filled = false;
+ }
+
+ inline void setNewBenchmark( Benchmark *benchmark )
+ {
+ m_benchmark = benchmark;
+ }
+
+protected:
+ Benchmark *m_benchmark;
+ QRect m_rect;
+ QRect m_bounds;
+ bool m_screen_filled;
+};
+
+class FillRectBenchmark : public Benchmark
+{
+public:
+ FillRectBenchmark(int size)
+ : Benchmark(QSize(size, size))
+ {
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int iterationCount) {
+ p->fillRect(rect, randomColor(iterationCount));
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("fillRect(%1)").arg(m_size.width());
+ }
+};
+
+class ImageFillRectBenchmark : public Benchmark
+{
+public:
+ ImageFillRectBenchmark(int size)
+ : Benchmark(QSize(size, size))
+ {
+ int s = rand() % 24 + 8;
+ m_content = QImage(s, s, QImage::Format_ARGB32_Premultiplied);
+ QPainter p(&m_content);
+ p.fillRect(0, 0, s, s, Qt::white);
+ p.fillRect(s/2, 0, s/2, s/2, Qt::gray);
+ p.fillRect(0, s/2, s/2, s/2, Qt::gray);
+ p.end();
+
+ m_brush = QBrush(m_content);
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ p->fillRect(rect, m_brush);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("fillRect with image(%1)").arg(m_size.width());
+ }
+
+private:
+ QImage m_content;
+ QBrush m_brush;
+};
+
+
+class DrawRectBenchmark : public Benchmark
+{
+public:
+ DrawRectBenchmark(int size)
+ : Benchmark(QSize(size, size))
+ {
+ }
+
+ virtual void begin(QPainter *p, int) {
+ p->setPen(Qt::NoPen);
+ p->setBrush(randomColor(m_size.width()));
+ }
+
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ p->drawRect(rect);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("drawRect(%1)").arg(m_size.width());
+ }
+};
+
+
+class DrawRectWithBrushChangeBenchmark : public Benchmark
+{
+public:
+ DrawRectWithBrushChangeBenchmark(int size)
+ : Benchmark(QSize(size, size))
+ {
+ }
+
+ virtual void begin(QPainter *p, int) {
+ p->setPen(Qt::NoPen);
+ }
+
+
+ virtual void draw(QPainter *p, const QRect &rect, int i) {
+ p->setBrush(randomColor(i));
+ p->drawRect(rect);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("drawRect with brushchange(%1)").arg(m_size.width());
+ }
+};
+
+class RoundRectBenchmark : public Benchmark
+{
+public:
+ RoundRectBenchmark(int size)
+ : Benchmark(QSize(size, size))
+ {
+ m_roundness = size / 4.;
+ }
+
+ virtual void begin(QPainter *p, int) {
+ p->setPen(Qt::NoPen);
+ p->setBrush(Qt::red);
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ p->drawRoundedRect(rect, m_roundness, m_roundness);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("drawRoundedRect(%1)").arg(m_size.width());
+ }
+
+ qreal m_roundness;
+};
+
+
+class ArcsBenchmark : public Benchmark
+{
+public:
+ enum Type {
+ Stroked = 0x0001,
+ Filled = 0x0002,
+
+ ArcShape = 0x0010,
+ ChordShape = 0x0020,
+ PieShape = 0x0040,
+ CircleShape = 0x0080,
+ Shapes = 0x00f0
+
+ };
+
+ ArcsBenchmark(int size, uint type)
+ : Benchmark(QSize(size, size)),
+ m_type(type)
+ {
+ }
+
+ virtual void begin(QPainter *p, int) {
+ if (m_type & Stroked)
+ p->setPen(Qt::black);
+ else
+ p->setPen(Qt::NoPen);
+
+ if (m_type & Filled)
+ p->setBrush(Qt::red);
+ else
+ p->setBrush(Qt::NoBrush);
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ switch (m_type & Shapes) {
+ case ArcShape:
+ p->drawArc(rect, 45*16, 120*16);
+ break;
+ case ChordShape:
+ p->drawChord(rect, 45*16, 120*16);
+ break;
+ case PieShape:
+ p->drawPie(rect, 45*16, 120*16);
+ break;
+ case CircleShape:
+ p->drawEllipse(rect);
+ break;
+ }
+ }
+
+ virtual QString name() const {
+ QString fillStroke;
+
+ if ((m_type & (Stroked|Filled)) == (Stroked|Filled)) {
+ fillStroke = QLatin1String("Fill & Outline");
+ } else if (m_type & Stroked) {
+ fillStroke = QLatin1String("Outline");
+ } else if (m_type & Filled) {
+ fillStroke = QLatin1String("Fill");
+ }
+
+ QString shape;
+ if (m_type & PieShape) shape = QLatin1String("drawPie");
+ else if (m_type & ChordShape) shape = QLatin1String("drawChord");
+ else if (m_type & ArcShape) shape = QLatin1String("drawArc");
+ else if (m_type & CircleShape) shape = QLatin1String("drawEllipse");
+
+ return QString::fromLatin1("%1(%2) %3").arg(shape).arg(m_size.width()).arg(fillStroke);
+ }
+
+ uint m_type;
+};
+
+
+class DrawScaledImage : public Benchmark
+{
+public:
+ DrawScaledImage(const QImage &image, qreal scale, bool asPixmap)
+ : Benchmark(QSize(image.width(), image.height())),
+ m_image(image),
+ m_type(m_as_pixmap ? "Pixmap" : "Image"),
+ m_scale(scale),
+ m_as_pixmap(asPixmap)
+ {
+ m_pixmap = QPixmap::fromImage(m_image);
+ }
+ DrawScaledImage(const QString& type, const QPixmap &pixmap, qreal scale)
+ : Benchmark(QSize(pixmap.width(), pixmap.height())),
+ m_type(type),
+ m_scale(scale),
+ m_as_pixmap(true),
+ m_pixmap(pixmap)
+ {
+ }
+
+ virtual void begin(QPainter *p, int) {
+ p->scale(m_scale, m_scale);
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ if (m_as_pixmap)
+ p->drawPixmap(rect.topLeft(), m_pixmap);
+ else
+ p->drawImage(rect.topLeft(), m_image);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("draw%4(%1) at scale=%2, depth=%3")
+ .arg(m_size.width())
+ .arg(m_scale)
+ .arg(m_as_pixmap ? m_pixmap.depth() : m_image.depth())
+ .arg(m_type);
+ }
+
+private:
+ QImage m_image;
+ QString m_type;
+ qreal m_scale;
+ bool m_as_pixmap;
+ QPixmap m_pixmap;
+};
+
+class DrawTransformedImage : public Benchmark
+{
+public:
+ DrawTransformedImage(const QImage &image, bool asPixmap)
+ : Benchmark(QSize(image.width(), image.height())),
+ m_image(image),
+ m_type(m_as_pixmap ? "Pixmap" : "Image"),
+ m_as_pixmap(asPixmap)
+ {
+ m_pixmap = QPixmap::fromImage(m_image);
+ }
+ DrawTransformedImage(const QString& type, const QPixmap &pixmap)
+ : Benchmark(QSize(pixmap.width(), pixmap.height())),
+ m_type(type),
+ m_as_pixmap(true),
+ m_pixmap(pixmap)
+ {
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ QTransform oldTransform = p->transform();
+ p->translate(0.5 * rect.width() + rect.left(), 0.5 * rect.height() + rect.top());
+ p->shear(0.25, 0.0);
+ p->rotate(5.0);
+ if (m_as_pixmap)
+ p->drawPixmap(-0.5 * rect.width(), -0.5 * rect.height(), m_pixmap);
+ else
+ p->drawImage(-0.5 * rect.width(), -0.5 * rect.height(), m_image);
+ p->setTransform(oldTransform);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("draw%3(%1) w/transform, depth=%2")
+ .arg(m_size.width())
+ .arg(m_as_pixmap ? m_pixmap.depth() : m_image.depth())
+ .arg(m_type);
+ }
+
+private:
+ QImage m_image;
+ QString m_type;
+ bool m_as_pixmap;
+ QPixmap m_pixmap;
+};
+
+
+class DrawImage : public Benchmark
+{
+public:
+ DrawImage(const QImage &image, bool asPixmap)
+ : Benchmark(QSize(image.width(), image.height())),
+ m_image(image),
+ m_type(m_as_pixmap ? "Pixmap" : "Image"),
+ m_as_pixmap(asPixmap)
+ {
+ m_pixmap = QPixmap::fromImage(image);
+ }
+ DrawImage(const QString& type, const QPixmap &pixmap)
+ : Benchmark(QSize(pixmap.width(), pixmap.height())),
+ m_type(type),
+ m_as_pixmap(true),
+ m_pixmap(pixmap)
+ {
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ if (m_as_pixmap)
+ p->drawPixmap(rect.topLeft(), m_pixmap);
+ else
+ p->drawImage(rect.topLeft(), m_image);
+ }
+
+ virtual QString name() const {
+ return QString::fromLatin1("draw%2(%1), depth=%3")
+ .arg(m_size.width())
+ .arg(m_type)
+ .arg(m_as_pixmap ? m_pixmap.depth() : m_image.depth());
+ }
+
+private:
+ QImage m_image;
+ QString m_type;
+ bool m_as_pixmap;
+ QPixmap m_pixmap;
+};
+
+
+class DrawText : public Benchmark
+{
+public:
+ enum Mode {
+ PainterMode,
+ PainterQPointMode,
+ LayoutMode,
+ DocumentMode,
+ PixmapMode
+
+#if QT_VERSION >= 0x040700
+ , StaticTextMode,
+ StaticTextWithMaximumSizeMode,
+ StaticTextBackendOptimizations
+#endif
+ };
+
+ DrawText(const QString &text, Mode mode)
+ : Benchmark(QSize()), m_mode(mode), m_text(text), m_document(text), m_layout(text)
+ {
+ }
+
+ virtual void begin(QPainter *p, int iterations) {
+#if QT_VERSION >= 0x040700
+ m_staticTexts.clear();
+ m_currentStaticText = 0;
+#else
+ Q_UNUSED(iterations);
+#endif
+ m_pixmaps.clear();
+ m_currentPixmap = 0;
+ QRect m_bounds = QRect(0,0,p->device()->width(), p->device()->height());
+ switch (m_mode) {
+ case PainterMode:
+ m_size = (p->boundingRect(m_bounds, 0, m_text)).size();
+// m_rect = m_rect.translated(-m_rect.topLeft());
+ break;
+ case DocumentMode:
+ m_size = QSize(m_document.size().toSize());
+ break;
+ case PixmapMode:
+ for (int i=0; i<4; ++i) {
+ m_size = (p->boundingRect(m_bounds, 0, m_text)).size();
+ QPixmap pixmap = QPixmap(m_size);
+ pixmap.fill(Qt::transparent);
+ {
+ QPainter p(&pixmap);
+ p.drawText(pixmap.rect(), m_text);
+ }
+ m_pixmaps.append(pixmap);
+ }
+ break;
+
+ case LayoutMode: {
+ QRect r = p->boundingRect(m_bounds, 0, m_text);
+ QStringList lines = m_text.split('\n');
+ int height = 0;
+ int leading = p->fontMetrics().leading();
+ m_layout.beginLayout();
+ for (int i=0; i<lines.size(); ++i) {
+ QTextLine textLine = m_layout.createLine();
+ if (textLine.isValid()) {
+ textLine.setLineWidth(r.width());
+ textLine.setPosition(QPointF(0, height));
+ height += leading + textLine.height();
+ }
+ }
+ m_layout.endLayout();
+ m_layout.setCacheEnabled(true);
+ m_size = m_layout.boundingRect().toRect().size();
+ break; }
+
+#if QT_VERSION >= 0x040700
+ case StaticTextWithMaximumSizeMode: {
+ QStaticText staticText;
+ m_size = (p->boundingRect(m_bounds, 0, m_text)).size();
+ staticText.setTextWidth(m_size.width() + 10);
+ staticText.setText(m_text);
+ staticText.prepare(p->transform(), p->font());
+ m_staticTexts.append(staticText);
+ break;
+ }
+ case StaticTextBackendOptimizations: {
+ m_size = (p->boundingRect(m_bounds, 0, m_text)).size();
+ for (int i=0; i<iterations; ++i) {
+ QStaticText staticText;
+ staticText.setPerformanceHint(QStaticText::AggressiveCaching);
+ staticText.setTextWidth(m_size.width() + 10);
+ staticText.setText(m_text);
+ staticText.prepare(p->transform(), p->font());
+ m_staticTexts.append(staticText);
+ }
+
+ break;
+ }
+ case StaticTextMode: {
+ QStaticText staticText;
+ staticText.setText(m_text);
+ staticText.prepare(p->transform(), p->font());
+ m_staticTexts.append(staticText);
+
+ QFontMetrics fm(p->font());
+ m_size = QSize(fm.width(m_text, m_text.length()), fm.height());
+
+ break;
+ }
+#endif
+
+ case PainterQPointMode: {
+ QFontMetrics fm(p->font());
+ m_size = QSize(fm.width(m_text, m_text.length()), fm.height());
+ break;
+ }
+
+ }
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int)
+ {
+ switch (m_mode) {
+ case PainterMode:
+ p->drawText(rect, 0, m_text);
+ break;
+ case PainterQPointMode:
+ p->drawText(rect.topLeft(), m_text);
+ break;
+ case PixmapMode:
+ p->drawPixmap(rect.topLeft(), m_pixmaps.at(m_currentPixmap));
+ m_currentPixmap = (m_currentPixmap + 1) % m_pixmaps.size();
+ break;
+ case DocumentMode:
+ p->translate(rect.topLeft());
+ m_document.drawContents(p);
+ p->translate(-rect.topLeft());
+ break;
+ case LayoutMode:
+ m_layout.draw(p, rect.topLeft());
+ break;
+
+#if QT_VERSION >= 0x040700
+ case StaticTextWithMaximumSizeMode:
+ case StaticTextMode:
+ p->drawStaticText(rect.topLeft(), m_staticTexts.at(0));
+ break;
+ case StaticTextBackendOptimizations:
+ p->drawStaticText(rect.topLeft(), m_staticTexts.at(m_currentStaticText));
+ m_currentStaticText = (m_currentStaticText + 1) % m_staticTexts.size();
+ break;
+#endif
+ }
+ }
+
+ virtual QString name() const {
+ int letters = m_text.length();
+ int lines = m_text.count('\n');
+ if (lines == 0)
+ lines = 1;
+ QString type;
+ switch (m_mode) {
+ case PainterMode: type = "drawText(rect)"; break;
+ case PainterQPointMode: type = "drawText(point)"; break;
+ case LayoutMode: type = "layout.draw()"; break;
+ case DocumentMode: type = "doc.drawContents()"; break;
+ case PixmapMode: type = "pixmap cached text"; break;
+
+#if QT_VERSION >= 0x040700
+ case StaticTextMode: type = "drawStaticText()"; break;
+ case StaticTextWithMaximumSizeMode: type = "drawStaticText() w/ maxsize"; break;
+ case StaticTextBackendOptimizations: type = "drawStaticText() w/ backend optimizations"; break;
+#endif
+ }
+
+ return QString::fromLatin1("%3, len=%1, lines=%2")
+ .arg(letters)
+ .arg(lines)
+ .arg(type);
+ }
+
+private:
+ Mode m_mode;
+ QString m_text;
+ QTextDocument m_document;
+ QTextLayout m_layout;
+
+ QList<QPixmap> m_pixmaps;
+ int m_currentPixmap;
+
+#if QT_VERSION >= 0x040700
+ int m_currentStaticText;
+ QList<QStaticText> m_staticTexts;
+#endif
+};
+
+
+
+
+class ClippedDrawRectBenchmark : public Benchmark
+{
+public:
+ enum ClipType {
+ RectClip,
+ TwoRectRegionClip,
+ EllipseRegionClip,
+ TwoRectPathClip,
+ EllipsePathClip,
+ AAEllipsePathClip,
+ EllipseRegionThenRectClip,
+ EllipsePathThenRectClip
+ };
+
+ ClippedDrawRectBenchmark(int size, ClipType type)
+ : Benchmark(QSize(size, size)), m_type(type)
+ {
+ }
+
+ virtual void begin(QPainter *p, int) {
+ QRect m_bounds = QRect(0,0,p->device()->width(), p->device()->height());
+ p->setPen(Qt::NoPen);
+ p->setBrush(Qt::red);
+
+ switch (m_type) {
+ case RectClip:
+ p->setClipRect(m_bounds.adjusted(1, 1, -1, -1));
+ break;
+ case TwoRectRegionClip:
+ p->setClipRegion(QRegion(m_bounds.adjusted(0, 0, -1, -1))
+ | QRegion(m_bounds.adjusted(1, 1, 0, 0)));
+ break;
+ case EllipseRegionClip:
+ p->setClipRegion(QRegion(m_bounds, QRegion::Ellipse));
+ break;
+ case TwoRectPathClip:
+ {
+ QPainterPath path;
+ path.addRect(m_bounds.adjusted(0, 0, -1, -1));
+ path.addRect(m_bounds.adjusted(1, 1, 0, 0));
+ path.setFillRule(Qt::WindingFill);
+ p->setClipPath(path);
+ }
+ break;
+ case EllipsePathClip:
+ {
+ QPainterPath path;
+ path.addEllipse(m_bounds);
+ p->setClipPath(path);
+ }
+ break;
+ case AAEllipsePathClip:
+ {
+ QPainterPath path;
+ path.addEllipse(m_bounds);
+ p->setRenderHint(QPainter::Antialiasing);
+ p->setClipPath(path);
+ p->setRenderHint(QPainter::Antialiasing, false);
+ }
+ break;
+ case EllipseRegionThenRectClip:
+ p->setClipRegion(QRegion(m_bounds, QRegion::Ellipse));
+ p->setClipRegion(QRegion(m_bounds.width() / 4,
+ m_bounds.height() / 4,
+ m_bounds.width() / 2,
+ m_bounds.height() / 2), Qt::IntersectClip);
+ break;
+ case EllipsePathThenRectClip:
+ {
+ QPainterPath path;
+ path.addEllipse(m_bounds);
+ p->setClipPath(path);
+ p->setClipRegion(QRegion(m_bounds.width() / 4,
+ m_bounds.height() / 4,
+ m_bounds.width() / 2,
+ m_bounds.height() / 2), Qt::IntersectClip);
+ }
+ break;
+ }
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ p->drawRect(rect);
+ }
+
+ virtual QString name() const {
+ QString namedType;
+ switch (m_type) {
+ case RectClip:
+ namedType = "rect";
+ break;
+ case TwoRectRegionClip:
+ namedType = "two-rect-region";
+ break;
+ case EllipseRegionClip:
+ namedType = "ellipse-region";
+ break;
+ case TwoRectPathClip:
+ namedType = "two-rect-path";
+ break;
+ case EllipsePathClip:
+ namedType = "ellipse-path";
+ break;
+ case AAEllipsePathClip:
+ namedType = "aa-ellipse-path";
+ break;
+ case EllipseRegionThenRectClip:
+ namedType = "ellipseregion&rect";
+ break;
+ case EllipsePathThenRectClip:
+ namedType = "ellipsepath&rect";
+ break;
+ }
+ return QString::fromLatin1("%1-clipped-drawRect(%2)").arg(namedType).arg(m_size.width());
+ }
+
+ ClipType m_type;
+};
+
+class LinesBenchmark : public Benchmark
+{
+public:
+ enum LineType {
+ Horizontal_Integer,
+ Diagonal_Integer,
+ Vertical_Integer,
+ Horizontal_Float,
+ Diagonal_Float,
+ Vertical_Float
+ };
+
+ LinesBenchmark(int length, LineType type)
+ : Benchmark(QSize(qAbs(length), qAbs(length))),
+ m_type(type),
+ m_length(length)
+ {
+
+ }
+
+ virtual void draw(QPainter *p, const QRect &rect, int) {
+ switch (m_type) {
+ case Horizontal_Integer:
+ p->drawLine(QLine(rect.x(), rect.y(), rect.x() + m_length, rect.y()));
+ break;
+ case Diagonal_Integer:
+ p->drawLine(QLine(rect.x(), rect.y(), rect.x() + m_length, rect.y() + m_length));
+ break;
+ case Vertical_Integer:
+ p->drawLine(QLine(rect.x() + 4, rect.y(), rect.x() + 4, rect.y() + m_length));
+ break;
+ case Horizontal_Float:
+ p->drawLine(QLineF(rect.x(), rect.y(), rect.x() + m_length, rect.y()));
+ break;
+ case Diagonal_Float:
+ p->drawLine(QLineF(rect.x(), rect.y(), rect.x() + m_length, rect.y() + m_length));
+ break;
+ case Vertical_Float:
+ p->drawLine(QLineF(rect.x() + 4, rect.y(), rect.x() + 4, rect.y() + m_length));
+ break;
+ }
+ }
+
+ virtual QString name() const {
+ const char *names[] = {
+ "Hor_I",
+ "Diag_I",
+ "Ver_I",
+ "Hor_F",
+ "Diag_F",
+ "Ver_F"
+ };
+ return QString::fromLatin1("drawLine(size=%1,type=%2)").arg(m_length).arg(names[m_type]);
+ }
+
+ LineType m_type;
+ int m_length;
+};
+
+#endif // BENCHMARKTESTS_H
diff --git a/tests/benchmarks/gui/painting/qtbench/qtbench.pro b/tests/benchmarks/gui/painting/qtbench/qtbench.pro
new file mode 100644
index 0000000000..91f416de79
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtbench/qtbench.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_qtbench
+
+SOURCES += tst_qtbench.cpp
+
diff --git a/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp b/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp
new file mode 100644
index 0000000000..d8082cc2e0
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtbench/tst_qtbench.cpp
@@ -0,0 +1,254 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+
+#include <QtGui>
+
+#include "benchmarktests.h"
+
+//TESTED_FILES=
+
+class BenchWidget : public QWidget
+{
+public:
+ BenchWidget(Benchmark *benchmark);
+
+ void paintEvent(QPaintEvent *event);
+
+ bool done() const { return m_done; }
+ qreal result() const { return m_result; }
+
+public:
+ QTime timer;
+
+ Benchmark *m_benchmark;
+
+ bool m_done;
+ qreal m_result;
+
+ uint m_total;
+ uint m_iteration;
+
+ QVector<uint> iterationTimes;
+};
+
+void BenchWidget::paintEvent(QPaintEvent *)
+{
+ if (m_done)
+ return;
+
+ QPainter p(this);
+
+ m_benchmark->begin(&p, 100);
+
+ PaintingRectAdjuster adjuster;
+ adjuster.setNewBenchmark(m_benchmark);
+ adjuster.reset(rect());
+
+ for (int i = 0; i < 100; ++i)
+ m_benchmark->draw(&p, adjuster.newPaintingRect(), i);
+
+ m_benchmark->end(&p);
+
+ ++m_iteration;
+
+ uint currentElapsed = timer.isNull() ? 0 : timer.elapsed();
+ timer.restart();
+
+ m_total += currentElapsed;
+
+ // warm up for at most 5 iterations or half a second
+ if (m_iteration >= 5 || m_total >= 500) {
+ iterationTimes << currentElapsed;
+
+ if (iterationTimes.size() >= 5) {
+ qreal mean = 0;
+ qreal stddev = 0;
+ uint min = INT_MAX;
+
+ for (int i = 0; i < iterationTimes.size(); ++i) {
+ mean += iterationTimes.at(i);
+ min = qMin(min, iterationTimes.at(i));
+ }
+
+ mean /= qreal(iterationTimes.size());
+
+ for (int i = 0; i < iterationTimes.size(); ++i) {
+ qreal delta = iterationTimes.at(i) - mean;
+ stddev += delta * delta;
+ }
+
+ stddev = qSqrt(stddev / iterationTimes.size());
+
+ stddev = 100 * stddev / mean;
+ // do 50 iterations, break earlier if we spend more than 5 seconds or have a low std deviation after 2 seconds
+ if (iterationTimes.size() >= 50 || m_total >= 5000 || (m_total >= 2000 && stddev < 4)) {
+ m_result = min;
+ m_done = true;
+ return;
+ }
+ }
+ }
+}
+
+BenchWidget::BenchWidget(Benchmark *benchmark)
+ : m_benchmark(benchmark)
+ , m_done(false)
+ , m_result(0)
+ , m_total(0)
+ , m_iteration(0)
+{
+ setWindowTitle(benchmark->name());
+ resize(640, 480);
+}
+
+class tst_QtBench : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void qtBench();
+ void qtBench_data();
+};
+
+QString makeString(int length)
+{
+ const char chars[] = "abcd efgh ijkl mnop qrst uvwx yz!$. ABCD 1234";
+ int len = strlen(chars);
+
+ QString ret;
+ for (int j = 0; j < length; j++) {
+ ret += QChar(chars[(j * 97) % len]);
+ }
+
+ return ret;
+}
+
+void tst_QtBench::qtBench_data()
+{
+ QTest::addColumn<void *>("benchmark");
+
+ QString shortString = makeString(5);
+ QString middleString = makeString(50);
+ QString longString = makeString(35) + "\n"
+ + makeString(45) + "\n"
+ + makeString(75);
+ QString superLongString = "Lorem ipsum dolor sit am\n"
+ "et, consectetur adipisci\n"
+ "ng elit. Integer mi leo,\n"
+ "interdum ut congue at, p\n"
+ "ulvinar et tellus. Quisq\n"
+ "ue pretium eleifend laci\n"
+ "nia. Ut semper gravida l\n"
+ "ectus in commodo. Vestib\n"
+ "ulum pharetra arcu in en\n"
+ "im ultrices hendrerit. P\n"
+ "ellentesque habitant mor\n"
+ "bi tristique senectus et\n"
+ "netus et malesuada fames\n"
+ "ac turpis egestas. Ut er\n"
+ "os sem, feugiat in eleme\n"
+ "ntum in, porta sit amet \n"
+ "neque. Fusce mi tellus, \n"
+ "congue non dapibus eget,\n"
+ "pharetra quis quam. Duis\n"
+ "dui massa, pulvinar ac s\n"
+ "odales pharetra, dictum \n"
+ "in enim. Phasellus a nis\n"
+ "i erat, sed pellentesque\n"
+ "mi. Curabitur sed.";
+
+ QList<Benchmark *> benchmarks;
+ benchmarks << (new DrawText(shortString, DrawText::PainterMode));
+ benchmarks << (new DrawText(middleString, DrawText::PainterMode));
+ benchmarks << (new DrawText(longString, DrawText::PainterMode));
+ benchmarks << (new DrawText(superLongString, DrawText::PainterMode));
+
+ benchmarks << (new DrawText(shortString, DrawText::PainterQPointMode));
+ benchmarks << (new DrawText(middleString, DrawText::PainterQPointMode));
+ benchmarks << (new DrawText(longString, DrawText::PainterQPointMode));
+ benchmarks << (new DrawText(superLongString, DrawText::PainterQPointMode));
+
+ benchmarks << (new DrawText(shortString, DrawText::PixmapMode));
+ benchmarks << (new DrawText(middleString, DrawText::PixmapMode));
+ benchmarks << (new DrawText(longString, DrawText::PixmapMode));
+ benchmarks << (new DrawText(superLongString, DrawText::PixmapMode));
+
+#if QT_VERSION >= 0x040700
+ benchmarks << (new DrawText(shortString, DrawText::StaticTextMode));
+ benchmarks << (new DrawText(middleString, DrawText::StaticTextMode));
+ benchmarks << (new DrawText(longString, DrawText::StaticTextMode));
+ benchmarks << (new DrawText(superLongString, DrawText::StaticTextMode));
+
+ benchmarks << (new DrawText(shortString, DrawText::StaticTextWithMaximumSizeMode));
+ benchmarks << (new DrawText(middleString, DrawText::StaticTextWithMaximumSizeMode));
+ benchmarks << (new DrawText(longString, DrawText::StaticTextWithMaximumSizeMode));
+ benchmarks << (new DrawText(superLongString, DrawText::StaticTextWithMaximumSizeMode));
+
+ benchmarks << (new DrawText(shortString, DrawText::StaticTextBackendOptimizations));
+ benchmarks << (new DrawText(middleString, DrawText::StaticTextBackendOptimizations));
+ benchmarks << (new DrawText(longString, DrawText::StaticTextBackendOptimizations));
+ benchmarks << (new DrawText(superLongString, DrawText::StaticTextBackendOptimizations));
+#endif
+
+ foreach (Benchmark *benchmark, benchmarks)
+ QTest::newRow(qPrintable(benchmark->name())) << reinterpret_cast<void *>(benchmark);
+}
+
+void tst_QtBench::qtBench()
+{
+ QFETCH(void *, benchmark);
+
+ BenchWidget widget(reinterpret_cast<Benchmark *>(benchmark));
+ widget.show();
+ QTest::qWaitForWindowShown(&widget);
+
+ while (!widget.done()) {
+ widget.update();
+ QApplication::processEvents();
+ }
+
+ QTest::setBenchmarkResult(widget.result(), QTest::WalltimeMilliseconds);
+}
+
+QTEST_MAIN(tst_QtBench)
+#include "tst_qtbench.moc"
diff --git a/tests/benchmarks/gui/painting/qtracebench/qtracebench.pro b/tests/benchmarks/gui/painting/qtracebench/qtracebench.pro
new file mode 100644
index 0000000000..56ec8bbe4e
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/qtracebench.pro
@@ -0,0 +1,10 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_qtracebench
+
+INCLUDEPATH += . $$QT_SOURCE_TREE/src/3rdparty/harfbuzz/src
+
+RESOURCES += qtracebench.qrc
+
+SOURCES += tst_qtracebench.cpp
+
diff --git a/tests/benchmarks/gui/painting/qtracebench/qtracebench.qrc b/tests/benchmarks/gui/painting/qtracebench/qtracebench.qrc
new file mode 100644
index 0000000000..5569550bc5
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/qtracebench.qrc
@@ -0,0 +1,10 @@
+<RCC>
+ <qresource>
+ <file>traces/basicdrawing.trace</file>
+ <file>traces/webkit.trace</file>
+ <file>traces/textedit.trace</file>
+ <file>traces/creator.trace</file>
+ <file>traces/qmlphoneconcept.trace</file>
+ <file>traces/qmlsamegame.trace</file>
+ </qresource>
+</RCC>
diff --git a/tests/benchmarks/gui/painting/qtracebench/traces/basicdrawing.trace b/tests/benchmarks/gui/painting/qtracebench/traces/basicdrawing.trace
new file mode 100644
index 0000000000..0241d08a97
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/traces/basicdrawing.trace
Binary files differ
diff --git a/tests/benchmarks/gui/painting/qtracebench/traces/creator.trace b/tests/benchmarks/gui/painting/qtracebench/traces/creator.trace
new file mode 100644
index 0000000000..55ee9e183e
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/traces/creator.trace
Binary files differ
diff --git a/tests/benchmarks/gui/painting/qtracebench/traces/qmlphoneconcept.trace b/tests/benchmarks/gui/painting/qtracebench/traces/qmlphoneconcept.trace
new file mode 100644
index 0000000000..835ebfa8fb
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/traces/qmlphoneconcept.trace
Binary files differ
diff --git a/tests/benchmarks/gui/painting/qtracebench/traces/qmlsamegame.trace b/tests/benchmarks/gui/painting/qtracebench/traces/qmlsamegame.trace
new file mode 100644
index 0000000000..1d76195443
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/traces/qmlsamegame.trace
Binary files differ
diff --git a/tests/benchmarks/gui/painting/qtracebench/traces/textedit.trace b/tests/benchmarks/gui/painting/qtracebench/traces/textedit.trace
new file mode 100644
index 0000000000..998716d6c1
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/traces/textedit.trace
Binary files differ
diff --git a/tests/benchmarks/gui/painting/qtracebench/traces/webkit.trace b/tests/benchmarks/gui/painting/qtracebench/traces/webkit.trace
new file mode 100644
index 0000000000..43e752d193
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/traces/webkit.trace
Binary files differ
diff --git a/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp b/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp
new file mode 100644
index 0000000000..e71cfc6413
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtracebench/tst_qtracebench.cpp
@@ -0,0 +1,262 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+
+#include <QtGui>
+
+#include <private/qpaintengineex_p.h>
+#include <private/qpaintbuffer_p.h>
+
+//TESTED_FILES=
+
+class ReplayWidget : public QWidget
+{
+ Q_OBJECT
+public:
+ ReplayWidget(const QString &filename);
+
+ void paintEvent(QPaintEvent *event);
+ void resizeEvent(QResizeEvent *event);
+
+ bool done() const { return m_done; }
+ qreal result() const { return m_result; }
+
+public slots:
+ void updateRect();
+
+public:
+ QList<QRegion> updates;
+ QPaintBuffer buffer;
+
+ int currentFrame;
+ int currentIteration;
+ QTime timer;
+
+ QList<uint> visibleUpdates;
+ QList<uint> iterationTimes;
+ QString filename;
+
+ bool m_done;
+ qreal m_result;
+
+ uint m_total;
+};
+
+void ReplayWidget::updateRect()
+{
+ if (!visibleUpdates.isEmpty())
+ update(updates.at(visibleUpdates.at(currentFrame)));
+}
+
+void ReplayWidget::paintEvent(QPaintEvent *)
+{
+ if (m_done)
+ return;
+
+ QPainter p(this);
+
+ // if partial updates don't work
+ // p.setClipRegion(frames.at(currentFrame).updateRegion);
+
+ buffer.draw(&p, visibleUpdates.at(currentFrame));
+
+ ++currentFrame;
+ if (currentFrame >= visibleUpdates.size()) {
+ currentFrame = 0;
+ ++currentIteration;
+
+ uint currentElapsed = timer.isNull() ? 0 : timer.elapsed();
+ timer.restart();
+
+ m_total += currentElapsed;
+
+ // warm up for at most 5 iterations or half a second
+ if (currentIteration >= 5 || m_total >= 500) {
+ iterationTimes << currentElapsed;
+
+ if (iterationTimes.size() >= 5) {
+ qreal mean = 0;
+ qreal stddev = 0;
+ uint min = INT_MAX;
+
+ for (int i = 0; i < iterationTimes.size(); ++i) {
+ mean += iterationTimes.at(i);
+ min = qMin(min, iterationTimes.at(i));
+ }
+
+ mean /= qreal(iterationTimes.size());
+
+ for (int i = 0; i < iterationTimes.size(); ++i) {
+ qreal delta = iterationTimes.at(i) - mean;
+ stddev += delta * delta;
+ }
+
+ stddev = qSqrt(stddev / iterationTimes.size());
+
+ qSort(iterationTimes.begin(), iterationTimes.end());
+ uint median = iterationTimes.at(iterationTimes.size() / 2);
+
+ stddev = 100 * stddev / mean;
+ // do 100 iterations, break earlier if we spend more than 5 seconds or have a low std deviation after 2 seconds
+ if (iterationTimes.size() >= 100 || m_total >= 5000 || (m_total >= 2000 && stddev < 4)) {
+ printf("%s, iterations: %d, frames: %d, min(ms): %d, median(ms): %d, stddev: %f %%, max(fps): %f\n", qPrintable(filename),
+ iterationTimes.size(), visibleUpdates.size(), min, median, stddev, 1000. * visibleUpdates.size() / min);
+ m_result = min;
+ m_done = true;
+ return;
+ }
+ }
+ }
+ }
+}
+
+void ReplayWidget::resizeEvent(QResizeEvent *event)
+{
+ visibleUpdates.clear();
+
+ QRect bounds = rect();
+ for (int i = 0; i < updates.size(); ++i) {
+ if (updates.at(i).intersects(bounds))
+ visibleUpdates << i;
+ }
+
+ if (visibleUpdates.size() != updates.size())
+ printf("Warning: skipped %d frames due to limited resolution\n", updates.size() - visibleUpdates.size());
+
+}
+
+ReplayWidget::ReplayWidget(const QString &filename_)
+ : currentFrame(0)
+ , currentIteration(0)
+ , filename(filename_)
+ , m_done(false)
+ , m_result(0)
+ , m_total(0)
+{
+ setWindowTitle(filename);
+ QFile file(filename);
+
+ if (!file.open(QIODevice::ReadOnly)) {
+ printf("Failed to load input file '%s'\n", qPrintable(filename_));
+ return;
+ }
+
+ QDataStream in(&file);
+
+ char *data;
+ uint size;
+ in.readBytes(data, size);
+ bool isTraceFile = size >= 7 && qstrncmp(data, "qttrace", 7) == 0;
+ uint version = 0;
+ if (size == 9 && qstrncmp(data, "qttraceV2", 9) == 0) {
+ in.setFloatingPointPrecision(QDataStream::SinglePrecision);
+ in >> version;
+ }
+
+ delete [] data;
+ if (!isTraceFile) {
+ printf("File '%s' is not a trace file\n", qPrintable(filename_));
+ return;
+ }
+
+ in >> buffer >> updates;
+
+ resize(buffer.boundingRect().size().toSize());
+
+ setAutoFillBackground(false);
+ setAttribute(Qt::WA_NoSystemBackground);
+}
+
+
+class tst_QTraceBench : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void trace();
+ void trace_data();
+};
+
+static const QLatin1String prefix(":/traces/");
+
+void tst_QTraceBench::trace_data()
+{
+ QTest::addColumn<QString>("filename");
+
+ QTest::newRow("basicdrawing") << (prefix + "basicdrawing.trace");
+ QTest::newRow("webkit") << (prefix + "webkit.trace");
+ QTest::newRow("creator") << (prefix + "creator.trace");
+ QTest::newRow("textedit") << (prefix + "textedit.trace");
+ QTest::newRow("qmlphoneconcept") << (prefix + "qmlphoneconcept.trace");
+ QTest::newRow("qmlsamegame") << (prefix + "qmlsamegame.trace");
+}
+
+void tst_QTraceBench::trace()
+{
+ QFETCH(QString, filename);
+
+ QFile file(filename);
+ if (!file.exists()) {
+ qWarning() << "Missing file" << filename;
+ return;
+ }
+
+ ReplayWidget widget(filename);
+
+ if (widget.updates.isEmpty()) {
+ qWarning() << "No trace updates" << filename;
+ return;
+ }
+
+ widget.show();
+ QTest::qWaitForWindowShown(&widget);
+
+ while (!widget.done()) {
+ widget.updateRect();
+ QApplication::processEvents();
+ }
+
+ QTest::setBenchmarkResult(widget.result(), QTest::WalltimeMilliseconds);
+}
+
+QTEST_MAIN(tst_QTraceBench)
+#include "tst_qtracebench.moc"
diff --git a/tests/benchmarks/gui/painting/qtransform/qtransform.pro b/tests/benchmarks/gui/painting/qtransform/qtransform.pro
new file mode 100644
index 0000000000..dc60407252
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtransform/qtransform.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qtransform
+
+SOURCES += tst_qtransform.cpp
+
diff --git a/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp b/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp
new file mode 100644
index 0000000000..d9498d941a
--- /dev/null
+++ b/tests/benchmarks/gui/painting/qtransform/tst_qtransform.cpp
@@ -0,0 +1,592 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qtest.h>
+#include <QTransform>
+
+//TESTED_FILES=
+
+class tst_QTransform : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QTransform();
+ virtual ~tst_QTransform();
+
+public slots:
+ void init();
+ void cleanup();
+
+private slots:
+ void construct();
+ void translate_data();
+ void translate();
+ void scale_data();
+ void scale();
+ void shear_data();
+ void shear();
+ void rotate_data();
+ void rotate();
+ void rotateXYZ_data();
+ void rotateXYZ();
+ void operatorAssign_data();
+ void operatorAssign();
+ void operatorEqual_data();
+ void operatorEqual();
+ void operatorNotEqual_data();
+ void operatorNotEqual();
+ void operatorMultiply_data();
+ void operatorMultiply();
+ void operatorPlusEqualScalar_data();
+ void operatorPlusEqualScalar();
+ void operatorMinusEqualScalar_data();
+ void operatorMinusEqualScalar();
+ void operatorMultiplyEqual_data();
+ void operatorMultiplyEqual();
+ void operatorMultiplyEqualScalar_data();
+ void operatorMultiplyEqualScalar();
+ void operatorDivideEqualScalar_data();
+ void operatorDivideEqualScalar();
+ void mapQPoint_data();
+ void mapQPoint();
+ void mapQPointF_data();
+ void mapQPointF();
+ void mapRect_data();
+ void mapRect();
+ void mapRectF_data();
+ void mapRectF();
+ void mapQPolygon_data();
+ void mapQPolygon();
+ void mapQPolygonF_data();
+ void mapQPolygonF();
+ void mapQRegion_data();
+ void mapQRegion();
+ void mapToPolygon_data();
+ void mapToPolygon();
+ void mapQPainterPath_data();
+ void mapQPainterPath();
+ void isIdentity_data();
+ void isIdentity();
+ void isAffine_data();
+ void isAffine();
+ void isInvertible_data();
+ void isInvertible();
+ void isRotating_data();
+ void isRotating();
+ void isScaling_data();
+ void isScaling();
+ void isTranslating_data();
+ void isTranslating();
+ void type_data();
+ void type();
+ void determinant_data();
+ void determinant();
+ void adjoint_data();
+ void adjoint();
+ void transposed_data();
+ void transposed();
+ void inverted_data();
+ void inverted();
+
+private:
+ QMap<const char *, QTransform> generateTransforms() const;
+};
+
+tst_QTransform::tst_QTransform()
+{
+}
+
+tst_QTransform::~tst_QTransform()
+{
+}
+
+void tst_QTransform::init()
+{
+}
+
+void tst_QTransform::cleanup()
+{
+}
+
+QMap<const char *, QTransform> tst_QTransform::generateTransforms() const
+{
+ QMap<const char *, QTransform> x;
+ x["0: identity"] = QTransform();
+ x["1: translate"] = QTransform().translate(10, 10);
+ x["2: translate"] = QTransform().translate(-10, -10);
+ x["3: rotate45"] = QTransform().rotate(45);
+ x["4: rotate90"] = QTransform().rotate(90);
+ x["5: rotate180"] = QTransform().rotate(180);
+ x["6: shear2,2"] = QTransform().shear(2, 2);
+ x["7: shear-2,-2"] = QTransform().shear(-2, -2);
+ x["8: scaleUp2,2"] = QTransform().scale(2, 2);
+ x["9: scaleUp2,3"] = QTransform().scale(2, 3);
+ x["10: scaleDown0.5,0.5"] = QTransform().scale(0.5, 0.5);
+ x["11: scaleDown0.5,0.25"] = QTransform().scale(0.5, 0.25);
+ x["12: rotateX"] = QTransform().rotate(45, Qt::XAxis);
+ x["13: rotateY"] = QTransform().rotate(45, Qt::YAxis);
+ x["14: rotateXY"] = QTransform().rotate(45, Qt::XAxis).rotate(45, Qt::YAxis);
+ x["15: rotateYZ"] = QTransform().rotate(45, Qt::YAxis).rotate(45, Qt::ZAxis);
+ x["16: full"] = QTransform().translate(10, 10).rotate(45).shear(2, 2).scale(2, 2).rotate(45, Qt::YAxis).rotate(45, Qt::XAxis).rotate(45, Qt::ZAxis);
+ return x;
+}
+
+void tst_QTransform::construct()
+{
+ QBENCHMARK {
+ QTransform x;
+ }
+}
+
+#define SINGLE_DATA_IMPLEMENTATION(func) \
+void tst_QTransform::func##_data() \
+{ \
+ QTest::addColumn<QTransform>("transform"); \
+ QMap<const char *, QTransform> x = generateTransforms(); \
+ QMapIterator<const char *, QTransform> it(x); \
+ while (it.hasNext()) { \
+ it.next(); \
+ QTest::newRow(it.key()) << it.value(); \
+ } \
+}
+
+#define DOUBLE_DATA_IMPLEMENTATION(func) \
+void tst_QTransform::func##_data() \
+{ \
+ QTest::addColumn<QTransform>("x1"); \
+ QTest::addColumn<QTransform>("x2"); \
+ QMap<const char *, QTransform> x = generateTransforms(); \
+ QMapIterator<const char *, QTransform> it(x); \
+ while (it.hasNext()) { \
+ it.next(); \
+ const char *key1 = it.key(); \
+ QTransform x1 = it.value(); \
+ QMapIterator<const char *, QTransform> it2(x); \
+ while (it2.hasNext()) { \
+ it2.next(); \
+ QTest::newRow(QString("%1 + %2").arg(key1).arg(it2.key()).toLatin1().constData()) \
+ << x1 << it2.value(); \
+ } \
+ } \
+}
+
+SINGLE_DATA_IMPLEMENTATION(translate)
+
+void tst_QTransform::translate()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.translate(10, 10);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(scale)
+
+void tst_QTransform::scale()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.scale(2, 2);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(shear)
+
+void tst_QTransform::shear()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.shear(2, 2);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(rotate)
+
+void tst_QTransform::rotate()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.rotate(45);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(rotateXYZ)
+
+void tst_QTransform::rotateXYZ()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.rotate(45, Qt::XAxis);
+ x.rotate(45, Qt::YAxis);
+ x.rotate(45, Qt::ZAxis);
+ }
+}
+
+DOUBLE_DATA_IMPLEMENTATION(operatorAssign)
+
+void tst_QTransform::operatorAssign()
+{
+ QFETCH(QTransform, x1);
+ QFETCH(QTransform, x2);
+ QTransform x = x1;
+ QBENCHMARK {
+ x = x2;
+ }
+}
+
+DOUBLE_DATA_IMPLEMENTATION(operatorEqual)
+
+void tst_QTransform::operatorEqual()
+{
+ QFETCH(QTransform, x1);
+ QFETCH(QTransform, x2);
+ QTransform x = x1;
+ QBENCHMARK {
+ x == x2;
+ }
+}
+
+DOUBLE_DATA_IMPLEMENTATION(operatorNotEqual)
+
+void tst_QTransform::operatorNotEqual()
+{
+ QFETCH(QTransform, x1);
+ QFETCH(QTransform, x2);
+ QTransform x = x1;
+ QBENCHMARK {
+ x != x2;
+ }
+}
+
+DOUBLE_DATA_IMPLEMENTATION(operatorMultiply)
+
+void tst_QTransform::operatorMultiply()
+{
+ QFETCH(QTransform, x1);
+ QFETCH(QTransform, x2);
+ QTransform x = x1;
+ QBENCHMARK {
+ x * x2;
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(operatorPlusEqualScalar)
+
+void tst_QTransform::operatorPlusEqualScalar()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x += 3.14;
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(operatorMinusEqualScalar)
+
+void tst_QTransform::operatorMinusEqualScalar()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x -= 3.14;
+ }
+}
+
+DOUBLE_DATA_IMPLEMENTATION(operatorMultiplyEqual)
+
+void tst_QTransform::operatorMultiplyEqual()
+{
+ QFETCH(QTransform, x1);
+ QFETCH(QTransform, x2);
+ QTransform x = x1;
+ QBENCHMARK {
+ x *= x2;
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(operatorMultiplyEqualScalar)
+
+void tst_QTransform::operatorMultiplyEqualScalar()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x * 3;
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(operatorDivideEqualScalar)
+
+void tst_QTransform::operatorDivideEqualScalar()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x /= 3;
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapQPoint)
+
+void tst_QTransform::mapQPoint()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.map(QPoint(3, 3));
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapQPointF)
+
+void tst_QTransform::mapQPointF()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.map(QPointF(3, 3));
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapRect)
+
+void tst_QTransform::mapRect()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.mapRect(QRect(0, 0, 100, 100));
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapRectF)
+
+void tst_QTransform::mapRectF()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.mapRect(QRectF(0, 0, 100, 100));
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapQPolygon)
+
+void tst_QTransform::mapQPolygon()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QPolygon poly = QPolygon(QRect(0, 0, 100, 100));
+ QBENCHMARK {
+ x.map(poly);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapQPolygonF)
+
+void tst_QTransform::mapQPolygonF()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QPolygonF poly = QPolygonF(QRectF(0, 0, 100, 100));
+ QBENCHMARK {
+ x.map(poly);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapQRegion)
+
+void tst_QTransform::mapQRegion()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QRegion region;
+ for (int i = 0; i < 10; ++i)
+ region += QRect(i * 10, i * 10, 100, 100);
+ QBENCHMARK {
+ x.map(region);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(mapToPolygon)
+
+void tst_QTransform::mapToPolygon()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QBENCHMARK {
+ x.mapToPolygon(QRect(0, 0, 100, 100));
+ }
+}
+
+
+SINGLE_DATA_IMPLEMENTATION(mapQPainterPath)
+
+void tst_QTransform::mapQPainterPath()
+{
+ QFETCH(QTransform, transform);
+ QTransform x = transform;
+ QPainterPath path;
+ for (int i = 0; i < 10; ++i)
+ path.addEllipse(i * 10, i * 10, 100, 100);
+ QBENCHMARK {
+ x.map(path);
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(isIdentity)
+
+void tst_QTransform::isIdentity()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.isIdentity();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(isAffine)
+
+void tst_QTransform::isAffine()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.isAffine();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(isInvertible)
+
+void tst_QTransform::isInvertible()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.isInvertible();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(isRotating)
+
+void tst_QTransform::isRotating()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.isRotating();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(isScaling)
+
+void tst_QTransform::isScaling()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.isScaling();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(isTranslating)
+
+void tst_QTransform::isTranslating()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.isTranslating();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(type)
+
+void tst_QTransform::type()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.type();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(determinant)
+
+void tst_QTransform::determinant()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.determinant();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(adjoint)
+
+void tst_QTransform::adjoint()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.adjoint();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(transposed)
+
+void tst_QTransform::transposed()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.transposed();
+ }
+}
+
+SINGLE_DATA_IMPLEMENTATION(inverted)
+
+void tst_QTransform::inverted()
+{
+ QFETCH(QTransform, transform);
+ QBENCHMARK {
+ transform.inverted();
+ }
+}
+
+QTEST_MAIN(tst_QTransform)
+#include "tst_qtransform.moc"
diff --git a/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp b/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp
new file mode 100644
index 0000000000..759e930204
--- /dev/null
+++ b/tests/benchmarks/gui/styles/qstylesheetstyle/main.cpp
@@ -0,0 +1,201 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+// This file contains benchmarks for QRect/QRectF functions.
+
+#include <QtGui>
+#include <qtest.h>
+
+class tst_qstylesheetstyle : public QObject
+{
+ Q_OBJECT
+private slots:
+ void empty();
+ void empty_events();
+
+ void simple();
+ void simple_events();
+
+ void grid_data();
+ void grid();
+
+private:
+ QWidget *buildSimpleWidgets();
+
+};
+
+
+QWidget *tst_qstylesheetstyle::buildSimpleWidgets()
+{
+ QWidget *w = new QWidget();
+ QGridLayout *layout = new QGridLayout(w);
+ w->setLayout(layout);
+ layout->addWidget(new QPushButton("pushButton") ,0,0);
+ layout->addWidget(new QComboBox() ,0,1);
+ layout->addWidget(new QCheckBox("checkBox") ,0,2);
+ layout->addWidget(new QRadioButton("radioButton") ,0,3);
+ layout->addWidget(new QLineEdit() ,1,0);
+ layout->addWidget(new QLabel("label") ,1,1);
+ layout->addWidget(new QSpinBox() ,1,2);
+ layout->addWidget(new QProgressBar() ,1,3);
+ return w;
+}
+
+void tst_qstylesheetstyle::empty()
+{
+ QWidget *w = buildSimpleWidgets();
+ w->setStyleSheet("/* */");
+ QApplication::processEvents();
+ int i = 0;
+ QBENCHMARK {
+ w->setStyleSheet("/*" + QString::number(i) + "*/");
+ i++; // we want a different string in case we have severals iterations
+ }
+ delete w;
+}
+
+void tst_qstylesheetstyle::empty_events()
+{
+ QWidget *w = buildSimpleWidgets();
+ w->setStyleSheet("/* */");
+ QApplication::processEvents();
+ int i = 0;
+ QBENCHMARK {
+ w->setStyleSheet("/*" + QString::number(i) + "*/");
+ i++; // we want a different string in case we have severals iterations
+ qApp->processEvents();
+ }
+ delete w;
+}
+
+static const char *simple_css =
+ " QLineEdit { background: red; } QPushButton { border: 1px solid yellow; color: pink; } \n"
+ " QCheckBox { margin: 3px 5px; background-color:red; } QAbstractButton { background-color: #456; } \n"
+ " QFrame { padding: 3px; } QLabel { color: black } QSpinBox:hover { background-color:blue; } ";
+
+void tst_qstylesheetstyle::simple()
+{
+ QWidget *w = buildSimpleWidgets();
+ w->setStyleSheet("/* */");
+ QApplication::processEvents();
+ int i = 0;
+ QBENCHMARK {
+ w->setStyleSheet(QString(simple_css) + "/*" + QString::number(i) + "*/");
+ i++; // we want a different string in case we have severals iterations
+ }
+ delete w;
+}
+
+void tst_qstylesheetstyle::simple_events()
+{
+ QWidget *w = buildSimpleWidgets();
+ w->setStyleSheet("/* */");
+ QApplication::processEvents();
+ int i = 0;
+ QBENCHMARK {
+ w->setStyleSheet(QString(simple_css) + "/*" + QString::number(i) + "*/");
+ i++; // we want a different string in case we have severals iterations
+ qApp->processEvents();
+ }
+ delete w;
+}
+
+void tst_qstylesheetstyle::grid_data()
+{
+ QTest::addColumn<bool>("events");
+ QTest::addColumn<bool>("show");
+ QTest::addColumn<int>("N");
+ for (int n = 5; n <= 25; n += 5) {
+ const QByteArray nString = QByteArray::number(n*n);
+ QTest::newRow(("simple--" + nString).constData()) << false << false << n;
+ QTest::newRow(("events--" + nString).constData()) << true << false << n;
+ QTest::newRow(("show--" + nString).constData()) << true << true << n;
+ }
+}
+
+
+void tst_qstylesheetstyle::grid()
+{
+ QFETCH(bool, events);
+ QFETCH(bool, show);
+ QFETCH(int, N);
+
+#ifdef Q_OS_SYMBIAN
+ // Symbian has limited stack (max 80k), which will run out when N >= 20 due to
+ // QWidget::show() using recursion among grid labels somewhere down the line.
+ if (show && N >= 20)
+ QSKIP("Grid too big for device to show", SkipSingle);
+#endif
+
+ QWidget *w = new QWidget();
+ QGridLayout *layout = new QGridLayout(w);
+ w->setLayout(layout);
+ QString stylesheet;
+ for(int x=0; x<N ;x++)
+ for(int y=0; y<N ;y++) {
+ QLabel *label = new QLabel(QString::number(y * N + x));
+ layout->addWidget(label ,x,y);
+ label->setObjectName(QString("label%1").arg(y * N + x));
+ stylesheet += QString("#label%1 { background-color: rgb(0,%2,%3); color: rgb(%2,%3,255); } ").arg(y*N+x).arg(y*255/N).arg(x*255/N);
+ }
+
+ w->setStyleSheet("/* */");
+ if(show) {
+ w->show();
+ QTest::qWaitForWindowShown(w);
+ QApplication::flush();
+ QApplication::processEvents();
+ QTest::qWait(30);
+ QApplication::processEvents();
+ }
+ QApplication::processEvents();
+ int i = 0;
+ QBENCHMARK {
+ w->setStyleSheet(stylesheet + "/*" + QString::number(i) + "*/");
+ i++; // we want a different string in case we have severals iterations
+ if(events)
+ qApp->processEvents();
+ }
+ delete w;
+}
+
+QTEST_MAIN(tst_qstylesheetstyle)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/styles/qstylesheetstyle/qstylesheetstyle.pro b/tests/benchmarks/gui/styles/qstylesheetstyle/qstylesheetstyle.pro
new file mode 100644
index 0000000000..f4bf9abad5
--- /dev/null
+++ b/tests/benchmarks/gui/styles/qstylesheetstyle/qstylesheetstyle.pro
@@ -0,0 +1,11 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qstylesheetstyle
+DEPENDPATH += .
+INCLUDEPATH += .
+
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/styles/styles.pro b/tests/benchmarks/gui/styles/styles.pro
new file mode 100644
index 0000000000..7c1d0697b7
--- /dev/null
+++ b/tests/benchmarks/gui/styles/styles.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qstylesheetstyle
diff --git a/tests/benchmarks/gui/text/qfontmetrics/main.cpp b/tests/benchmarks/gui/text/qfontmetrics/main.cpp
new file mode 100644
index 0000000000..fa5932d1f8
--- /dev/null
+++ b/tests/benchmarks/gui/text/qfontmetrics/main.cpp
@@ -0,0 +1,112 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QObject>
+#include <QFont>
+#include <QFontMetrics>
+
+#include <qtest.h>
+
+//this test benchmarks the once-off (per font configuration) cost
+//associated with using QFontMetrics
+class tst_QFontMetrics : public QObject
+{
+ Q_OBJECT
+public:
+ tst_QFontMetrics() {}
+private slots:
+ void fontmetrics_create();
+ void fontmetrics_create_once_loaded();
+
+ void fontmetrics_height();
+ void fontmetrics_height_once_loaded();
+
+private:
+ void testQFontMetrics(const QFontMetrics &fm);
+};
+
+void tst_QFontMetrics::testQFontMetrics( const QFontMetrics &fm )
+{
+ int fontHeight = fm.height();
+}
+
+void tst_QFontMetrics::fontmetrics_create()
+{
+ QBENCHMARK {
+ QFont boldfont = QApplication::font();
+ boldfont.setBold( true );
+ boldfont.setPointSize(boldfont.pointSize() * 1.5 );
+ QFontMetrics bfm( boldfont );
+ }
+}
+
+void tst_QFontMetrics::fontmetrics_create_once_loaded()
+{
+ QBENCHMARK {
+ QFont boldfont = QApplication::font();
+ boldfont.setBold( true );
+ boldfont.setPointSize(boldfont.pointSize() * 1.5 );
+ QFontMetrics bfm( boldfont );
+ }
+}
+
+void tst_QFontMetrics::fontmetrics_height()
+{
+ QFont boldfont = QApplication::font();
+ boldfont.setBold( true );
+ boldfont.setPointSize(boldfont.pointSize() * 1.5 );
+ QFontMetrics bfm( boldfont );
+
+ QBENCHMARK { testQFontMetrics(bfm); }
+}
+
+void tst_QFontMetrics::fontmetrics_height_once_loaded()
+{
+ QFont boldfont = QApplication::font();
+ boldfont.setBold( true );
+ boldfont.setPointSize(boldfont.pointSize() * 1.5 );
+ QFontMetrics bfm( boldfont );
+ QBENCHMARK { testQFontMetrics(bfm); }
+}
+
+QTEST_MAIN(tst_QFontMetrics)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/text/qfontmetrics/qfontmetrics.pro b/tests/benchmarks/gui/text/qfontmetrics/qfontmetrics.pro
new file mode 100644
index 0000000000..973f881a33
--- /dev/null
+++ b/tests/benchmarks/gui/text/qfontmetrics/qfontmetrics.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_QFontMetrics
+
+SOURCES += main.cpp
diff --git a/tests/benchmarks/gui/text/qtext/bidi.txt b/tests/benchmarks/gui/text/qtext/bidi.txt
new file mode 100644
index 0000000000..7c74cb4b06
--- /dev/null
+++ b/tests/benchmarks/gui/text/qtext/bidi.txt
@@ -0,0 +1,4 @@
+chinese
+欧洲,软件+互è”网 
 ç”¨ç»Ÿä¸€ç  (Unicode) èµ°é世界
将于1997å¹´ 3 月10æ—¥ï¼12日在德国 Mainz 市举行的第å届统一ç å›½é™…研讨会现在开始注册。 本次会议将汇集å„æ–¹é¢çš„专家。 涉åŠçš„领域包括: 国际互è”ç½‘å’Œç»Ÿä¸€ç  ï¼Œå›½é™…åŒ–å’Œæœ¬åœ°åŒ– ,统一ç åœ¨æ“作系统和应用软件中的实现 ,字型 ,文本格å¼ä»¥åŠå¤šæ–‡ç§è®¡ç®—等。 
当世界需è¦æ²Ÿé€šæ—¶ï¼Œè¯·ç”¨Unicodeï¼
+hebrew-bidi
+×ײר×ָפּע: פּר×ָגר×ַמװ×ַרג ×ון די װעלטנעץ: ×וניק×ָד ×יבער דער ×’×ָרער װעלט פֿ×ַרשרײַבט זיך שױן ××±×£ דער צענטער ×ינטערנ×ַצי×ָנ×ַלער ×וניק×ָד-ק×ָנפֿערענץ, ×°×ָס װעט פֿ×ָרקומען ×“×¢× 10טן ביזן 12טן מ×ַרץ, 1997, ×ין מײַנץ, דײַטשל×ַנד. די ק×ָנפֿערענץ װעט צוז×ַמענברענגן ×ž×‘Ö¿×™× ×™× ×¤Ö¿×•×Ÿ װעלטנעץ, ×וניק×ָד, ××™ ×ַלװעלטלעכן ××™ סבֿיבֿהדיקן פּר×ָגר×ַמװ×ַרג, ×ַרײַנשטעלן ×וניק×ָד ×ין ×ָפּעריר-סיסטעמען ×ון ×ָנװענדונגען, שריפֿטן, טעקסט-×ױסשטעל, ×ון מערשפּר×ַכיקע ק×ָמפּיוטערײַ.
diff --git a/tests/benchmarks/gui/text/qtext/main.cpp b/tests/benchmarks/gui/text/qtext/main.cpp
new file mode 100644
index 0000000000..01e8c46bd8
--- /dev/null
+++ b/tests/benchmarks/gui/text/qtext/main.cpp
@@ -0,0 +1,500 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <QTextDocument>
+#include <QTextDocumentWriter>
+#include <QTextLayout>
+#include <QTextCursor>
+#include <private/qtextcontrol_p.h>
+#include <qmath.h>
+#include <QFile>
+#include <QPainter>
+#include <QBuffer>
+#include <qtest.h>
+
+#ifdef Q_OS_SYMBIAN
+// In Symbian OS test data is located in applications private dir
+// Application private dir is default serach path for files, so SRCDIR can be set to empty
+#define SRCDIR ""
+#endif
+
+Q_DECLARE_METATYPE(QTextDocument*)
+
+class tst_QText: public QObject
+{
+ Q_OBJECT
+public:
+ tst_QText() {
+ m_lorem = QString::fromLatin1("Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.");
+ m_shortLorem = QString::fromLatin1("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.");
+ }
+
+private slots:
+ void loadHtml_data();
+ void loadHtml();
+
+ void shaping_data();
+ void shaping();
+
+ void odfWriting_empty();
+ void odfWriting_text();
+ void odfWriting_images();
+
+ void constructControl();
+ void constructDocument();
+
+ void newLineReplacement();
+ void formatManipulation();
+ void fontResolution();
+
+ void layout_data();
+ void layout();
+ void formattedLayout();
+ void paintLayoutToPixmap();
+ void paintLayoutToPixmap_painterFill();
+
+ void document();
+ void paintDocToPixmap();
+ void paintDocToPixmap_painterFill();
+
+ void control();
+ void paintControlToPixmap();
+ void paintControlToPixmap_painterFill();
+
+private:
+ QSize setupTextLayout(QTextLayout *layout, bool wrap = true, int wrapWidth = 100);
+
+ QString m_lorem;
+ QString m_shortLorem;
+};
+
+void tst_QText::loadHtml_data()
+{
+ QTest::addColumn<QString>("source");
+ QTest::newRow("empty") << QString();
+ QTest::newRow("simple") << QString::fromLatin1("<html><b>Foo</b></html>");
+ QTest::newRow("simple2") << QString::fromLatin1("<b>Foo</b>");
+
+ QString parag = QString::fromLatin1("<p>%1</p>").arg(m_lorem);
+ QString header = QString::fromLatin1("<html><head><title>test</title></head><body>");
+ QTest::newRow("long") << QString::fromLatin1("<html><head><title>test</title></head><body>") + parag + parag + parag
+ + parag + parag + parag + parag + parag + parag + parag + parag + parag + parag + parag + parag + parag + parag
+ + QString::fromLatin1("</html>");
+ QTest::newRow("table") << header + QLatin1String("<table border=\"1\"1><tr><td>xx</td></tr><tr><td colspan=\"2\">")
+ + parag + QLatin1String("</td></tr></table></html");
+ QTest::newRow("crappy") << header + QLatin1String("<table border=\"1\"1><tr><td>xx</td></tr><tr><td colspan=\"2\">")
+ + parag;
+}
+
+void tst_QText::loadHtml()
+{
+ QFETCH(QString, source);
+ QTextDocument doc;
+ QBENCHMARK {
+ doc.setHtml(source);
+ }
+}
+
+void tst_QText::shaping_data()
+{
+ QTest::addColumn<QString>("parag");
+ QTest::newRow("empty") << QString();
+ QTest::newRow("lorem") << m_lorem;
+ QTest::newRow("short") << QString::fromLatin1("Lorem ipsum dolor sit amet");
+
+#if !defined(Q_OS_SYMBIAN)
+ QFile file(QString::fromLatin1(SRCDIR) + QLatin1String("/bidi.txt"));
+#else
+ QFile file( SRCDIR "bidi.txt" );
+#endif
+ QVERIFY(file.open(QFile::ReadOnly));
+ QByteArray data = file.readAll();
+ QVERIFY(data.count() > 1000);
+ QStringList list = QString::fromUtf8(data.data()).split(QLatin1Char('\n'), QString::SkipEmptyParts);
+ QVERIFY(list.count() %2 == 0); // even amount as we have title and then content.
+ for (int i=0; i < list.count(); i+=2) {
+ QTest::newRow(list.at(i).toLatin1()) << list.at(i+1);
+ }
+}
+
+void tst_QText::shaping()
+{
+ QFETCH(QString, parag);
+
+ QTextLayout lay(parag);
+ lay.setCacheEnabled(false);
+
+ // do one run to make sure any fonts are loaded.
+ lay.beginLayout();
+ lay.createLine();
+ lay.endLayout();
+
+ QBENCHMARK {
+ lay.beginLayout();
+ lay.createLine();
+ lay.endLayout();
+ }
+}
+
+void tst_QText::odfWriting_empty()
+{
+ QVERIFY(QTextDocumentWriter::supportedDocumentFormats().contains("ODF")); // odf compiled in
+ QTextDocument *doc = new QTextDocument();
+ // write it
+ QBENCHMARK {
+ QBuffer buffer;
+ buffer.open(QIODevice::WriteOnly);
+ QTextDocumentWriter writer(&buffer, "ODF");
+ writer.write(doc);
+ }
+ delete doc;
+}
+
+void tst_QText::odfWriting_text()
+{
+ QTextDocument *doc = new QTextDocument();
+ QTextCursor cursor(doc);
+ QTextBlockFormat bf;
+ bf.setIndent(2);
+ cursor.insertBlock(bf);
+ cursor.insertText(m_lorem);
+ bf.setTopMargin(10);
+ cursor.insertBlock(bf);
+ cursor.insertText(m_lorem);
+ bf.setRightMargin(30);
+ cursor.insertBlock(bf);
+ cursor.insertText(m_lorem);
+
+ // write it
+ QBENCHMARK {
+ QBuffer buffer;
+ buffer.open(QIODevice::WriteOnly);
+ QTextDocumentWriter writer(&buffer, "ODF");
+ writer.write(doc);
+ }
+ delete doc;
+}
+
+void tst_QText::odfWriting_images()
+{
+ QTextDocument *doc = new QTextDocument();
+ QTextCursor cursor(doc);
+ cursor.insertText(m_lorem);
+ QImage image(400, 200, QImage::Format_ARGB32_Premultiplied);
+ cursor.insertImage(image);
+ cursor.insertText(m_lorem);
+
+ // write it
+ QBENCHMARK {
+ QBuffer buffer;
+ buffer.open(QIODevice::WriteOnly);
+ QTextDocumentWriter writer(&buffer, "ODF");
+ writer.write(doc);
+ }
+ delete doc;
+}
+
+QSize tst_QText::setupTextLayout(QTextLayout *layout, bool wrap, int wrapWidth)
+{
+ layout->setCacheEnabled(true);
+
+ int height = 0;
+ qreal widthUsed = 0;
+ qreal lineWidth = 0;
+
+ //set manual width
+ if (wrap)
+ lineWidth = wrapWidth;
+
+ layout->beginLayout();
+ while (1) {
+ QTextLine line = layout->createLine();
+ if (!line.isValid())
+ break;
+
+ if (wrap)
+ line.setLineWidth(lineWidth);
+ }
+ layout->endLayout();
+
+ for (int i = 0; i < layout->lineCount(); ++i) {
+ QTextLine line = layout->lineAt(i);
+ widthUsed = qMax(widthUsed, line.naturalTextWidth());
+ line.setPosition(QPointF(0, height));
+ height += int(line.height());
+ }
+ return QSize(qCeil(widthUsed), height);
+}
+
+void tst_QText::constructControl()
+{
+ QTextControl *control = new QTextControl;
+ delete control;
+
+ QBENCHMARK {
+ QTextControl *control = new QTextControl;
+ delete control;
+ }
+}
+
+void tst_QText::constructDocument()
+{
+ QTextDocument *doc = new QTextDocument;
+ delete doc;
+
+ QBENCHMARK {
+ QTextDocument *doc = new QTextDocument;
+ delete doc;
+ }
+}
+
+//this step is needed before giving the string to a QTextLayout
+void tst_QText::newLineReplacement()
+{
+ QString text = QString::fromLatin1("H\ne\nl\nl\no\n\nW\no\nr\nl\nd");
+
+ QBENCHMARK {
+ QString tmp = text;
+ tmp.replace(QLatin1Char('\n'), QChar::LineSeparator);
+ }
+}
+
+void tst_QText::formatManipulation()
+{
+ QFont font;
+
+ QBENCHMARK {
+ QTextCharFormat format;
+ format.setFont(font);
+ }
+}
+
+void tst_QText::fontResolution()
+{
+ QFont font;
+ QFont font2;
+ font.setFamily("DejaVu");
+ font2.setBold(true);
+
+ QBENCHMARK {
+ QFont res = font.resolve(font2);
+ }
+}
+
+void tst_QText::layout_data()
+{
+ QTest::addColumn<bool>("wrap");
+ QTest::newRow("wrap") << true;
+ QTest::newRow("nowrap") << false;
+}
+
+void tst_QText::layout()
+{
+ QFETCH(bool,wrap);
+ QTextLayout layout(m_shortLorem);
+ setupTextLayout(&layout, wrap);
+
+ QBENCHMARK {
+ QTextLayout layout(m_shortLorem);
+ setupTextLayout(&layout, wrap);
+ }
+}
+
+//### requires tst_QText to be a friend of QTextLayout
+/*void tst_QText::stackTextLayout()
+{
+ QStackTextEngine engine(m_shortLorem, qApp->font());
+ QTextLayout layout(&engine);
+ setupTextLayout(&layout);
+
+ QBENCHMARK {
+ QStackTextEngine engine(m_shortLorem, qApp->font());
+ QTextLayout layout(&engine);
+ setupTextLayout(&layout);
+ }
+}*/
+
+void tst_QText::formattedLayout()
+{
+ //set up formatting
+ QList<QTextLayout::FormatRange> ranges;
+ {
+ QTextCharFormat format;
+ format.setForeground(QColor("steelblue"));
+
+ QTextLayout::FormatRange formatRange;
+ formatRange.format = format;
+ formatRange.start = 0;
+ formatRange.length = 50;
+
+ ranges.append(formatRange);
+ }
+
+ QTextLayout layout(m_shortLorem);
+ layout.setAdditionalFormats(ranges);
+ setupTextLayout(&layout);
+
+ QBENCHMARK {
+ QTextLayout layout(m_shortLorem);
+ layout.setAdditionalFormats(ranges);
+ setupTextLayout(&layout);
+ }
+}
+
+void tst_QText::paintLayoutToPixmap()
+{
+ QTextLayout layout(m_shortLorem);
+ QSize size = setupTextLayout(&layout);
+
+ QBENCHMARK {
+ QPixmap img(size);
+ img.fill(Qt::transparent);
+ QPainter p(&img);
+ layout.draw(&p, QPointF(0, 0));
+ }
+}
+
+void tst_QText::paintLayoutToPixmap_painterFill()
+{
+ QTextLayout layout(m_shortLorem);
+ QSize size = setupTextLayout(&layout);
+
+ QBENCHMARK {
+ QPixmap img(size);
+ QPainter p(&img);
+ p.setCompositionMode(QPainter::CompositionMode_Source);
+ p.fillRect(0, 0, img.width(), img.height(), Qt::transparent);
+ p.setCompositionMode(QPainter::CompositionMode_SourceOver);
+ layout.draw(&p, QPointF(0, 0));
+ }
+}
+
+void tst_QText::document()
+{
+ QTextDocument *doc = new QTextDocument;
+
+ QBENCHMARK {
+ QTextDocument *doc = new QTextDocument;
+ doc->setHtml(m_shortLorem);
+ }
+}
+
+void tst_QText::paintDocToPixmap()
+{
+ QTextDocument *doc = new QTextDocument;
+ doc->setHtml(m_shortLorem);
+ doc->setTextWidth(300);
+ QSize size = doc->size().toSize();
+
+ QBENCHMARK {
+ QPixmap img(size);
+ img.fill(Qt::transparent);
+ QPainter p(&img);
+ doc->drawContents(&p);
+ }
+}
+
+void tst_QText::paintDocToPixmap_painterFill()
+{
+ QTextDocument *doc = new QTextDocument;
+ doc->setHtml(m_shortLorem);
+ doc->setTextWidth(300);
+ QSize size = doc->size().toSize();
+
+ QBENCHMARK {
+ QPixmap img(size);
+ QPainter p(&img);
+ p.setCompositionMode(QPainter::CompositionMode_Source);
+ p.fillRect(0, 0, img.width(), img.height(), Qt::transparent);
+ p.setCompositionMode(QPainter::CompositionMode_SourceOver);
+ doc->drawContents(&p);
+ }
+}
+
+void tst_QText::control()
+{
+ QTextControl *control = new QTextControl(m_shortLorem);
+
+ QBENCHMARK {
+ QTextControl *control = new QTextControl;
+ QTextDocument *doc = control->document();
+ doc->setHtml(m_shortLorem);
+ }
+}
+
+void tst_QText::paintControlToPixmap()
+{
+ QTextControl *control = new QTextControl;
+ QTextDocument *doc = control->document();
+ doc->setHtml(m_shortLorem);
+ doc->setTextWidth(300);
+ QSize size = doc->size().toSize();
+
+ QBENCHMARK {
+ QPixmap img(size);
+ img.fill(Qt::transparent);
+ QPainter p(&img);
+ control->drawContents(&p, QRectF(QPointF(0, 0), QSizeF(size)));
+ }
+}
+
+void tst_QText::paintControlToPixmap_painterFill()
+{
+ QTextControl *control = new QTextControl;
+ QTextDocument *doc = control->document();
+ doc->setHtml(m_shortLorem);
+ doc->setTextWidth(300);
+ QSize size = doc->size().toSize();
+
+ QBENCHMARK {
+ QPixmap img(size);
+ QPainter p(&img);
+ p.setCompositionMode(QPainter::CompositionMode_Source);
+ p.fillRect(0, 0, img.width(), img.height(), Qt::transparent);
+ p.setCompositionMode(QPainter::CompositionMode_SourceOver);
+ control->drawContents(&p, QRectF(QPointF(0, 0), QSizeF(size)));
+ }
+}
+
+QTEST_MAIN(tst_QText)
+
+#include "main.moc"
diff --git a/tests/benchmarks/gui/text/qtext/qtext.pro b/tests/benchmarks/gui/text/qtext/qtext.pro
new file mode 100644
index 0000000000..1c18302a39
--- /dev/null
+++ b/tests/benchmarks/gui/text/qtext/qtext.pro
@@ -0,0 +1,14 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_QText
+
+SOURCES += main.cpp
+
+symbian* {
+ TARGET.CAPABILITY = ALL -TCB
+ addFiles.files = bidi.txt
+ addFiles.path = .
+ DEPLOYMENT += addFiles
+} else {
+ DEFINES += SRCDIR=\\\"$$PWD/\\\"
+} \ No newline at end of file
diff --git a/tests/benchmarks/gui/text/text.pro b/tests/benchmarks/gui/text/text.pro
new file mode 100644
index 0000000000..34e548b4d3
--- /dev/null
+++ b/tests/benchmarks/gui/text/text.pro
@@ -0,0 +1,4 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qfontmetrics \
+ qtext
diff --git a/tests/benchmarks/network/access/access.pro b/tests/benchmarks/network/access/access.pro
new file mode 100644
index 0000000000..6cbd3671b8
--- /dev/null
+++ b/tests/benchmarks/network/access/access.pro
@@ -0,0 +1,5 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qfile_vs_qnetworkaccessmanager \
+ qnetworkreply \
+ qnetworkdiskcache
diff --git a/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp b/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp
new file mode 100644
index 0000000000..c31e6dcb92
--- /dev/null
+++ b/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/main.cpp
@@ -0,0 +1,196 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QDebug>
+#include <qtest.h>
+#include <QtTest/QtTest>
+#include <QtNetwork/qnetworkreply.h>
+#include <QtNetwork/qnetworkrequest.h>
+#include <QtNetwork/qnetworkaccessmanager.h>
+#include <QtCore/QTemporaryFile>
+#include <QtCore/QFile>
+
+class qfile_vs_qnetworkaccessmanager : public QObject
+{
+ Q_OBJECT
+ // do not use on symbian.. 100 MB is too large..
+ // but.. this is a manual test anyway, so :)
+protected:
+ void qnamFileRead_iteration(QNetworkAccessManager &manager, QNetworkRequest &request);
+ void qnamImmediateFileRead_iteration(QNetworkAccessManager &manager, QNetworkRequest &request);
+ void qfileFileRead_iteration();
+ static const int iterations = 10;
+
+private slots:
+ void qnamFileRead();
+ void qnamImmediateFileRead();
+ void qfileFileRead();
+
+ void initTestCase();
+ void cleanupTestCase();
+
+public:
+ qint64 size;
+ QTemporaryFile testFile;
+
+ qfile_vs_qnetworkaccessmanager() : QObject(), size(0) {};
+};
+
+void qfile_vs_qnetworkaccessmanager::initTestCase()
+{
+ testFile.open();
+ QByteArray qba(1*1024*1024, 'x'); // 1 MB
+#ifdef Q_OS_SYMBIAN
+ for (int i = 0; i < 10; i++) { // for Symbian only 10 MB
+#else
+ for (int i = 0; i < 100; i++) {
+#endif
+ testFile.write(qba);
+ testFile.flush();
+ size += qba.size();
+ } // 100 MB or 10 MB
+ testFile.reset();
+}
+
+void qfile_vs_qnetworkaccessmanager::cleanupTestCase()
+{
+
+}
+
+void qfile_vs_qnetworkaccessmanager::qnamFileRead_iteration(QNetworkAccessManager &manager, QNetworkRequest &request)
+{
+ QNetworkReply* reply = manager.get(request);
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection);
+ QTestEventLoop::instance().enterLoop(10);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ QByteArray qba = reply->readAll();
+ delete reply;
+}
+
+void qfile_vs_qnetworkaccessmanager::qnamFileRead()
+{
+ QNetworkAccessManager manager;
+ QTime t;
+ QNetworkRequest request(QUrl::fromLocalFile(testFile.fileName()));
+
+ // do 3 dry runs for cache warmup
+ qnamFileRead_iteration(manager, request);
+ qnamFileRead_iteration(manager, request);
+ qnamFileRead_iteration(manager, request);
+
+ t.start();
+ // 10 real runs
+ QBENCHMARK_ONCE {
+ for (int i = 0; i < iterations; i++) {
+ qnamFileRead_iteration(manager, request);
+ }
+ }
+
+ qint64 elapsed = t.elapsed();
+ qDebug() << endl << "Finished!";
+ qDebug() << "Bytes:" << size;
+ qDebug() << "Speed:" << (qreal(size*iterations) / 1024.0) / (qreal(elapsed) / 1000.0) << "KB/sec";
+}
+
+void qfile_vs_qnetworkaccessmanager::qnamImmediateFileRead_iteration(QNetworkAccessManager &manager, QNetworkRequest &request)
+{
+ QNetworkReply* reply = manager.get(request);
+ QVERIFY(reply->isFinished()); // should be like that!
+ QByteArray qba = reply->readAll();
+ delete reply;
+}
+
+void qfile_vs_qnetworkaccessmanager::qnamImmediateFileRead()
+{
+ QNetworkAccessManager manager;
+ QTime t;
+ QNetworkRequest request(QUrl::fromLocalFile(testFile.fileName()));
+
+ // do 3 dry runs for cache warmup
+ qnamImmediateFileRead_iteration(manager, request);
+ qnamImmediateFileRead_iteration(manager, request);
+ qnamImmediateFileRead_iteration(manager, request);
+
+ t.start();
+ // 10 real runs
+ QBENCHMARK_ONCE {
+ for (int i = 0; i < iterations; i++) {
+ qnamImmediateFileRead_iteration(manager, request);
+ }
+ }
+
+ qint64 elapsed = t.elapsed();
+ qDebug() << endl << "Finished!";
+ qDebug() << "Bytes:" << size;
+ qDebug() << "Speed:" << (qreal(size*iterations) / 1024.0) / (qreal(elapsed) / 1000.0) << "KB/sec";
+}
+
+void qfile_vs_qnetworkaccessmanager::qfileFileRead_iteration()
+{
+ testFile.reset();
+ QByteArray qba = testFile.readAll();
+}
+
+void qfile_vs_qnetworkaccessmanager::qfileFileRead()
+{
+ QTime t;
+
+ // do 3 dry runs for cache warmup
+ qfileFileRead_iteration();
+ qfileFileRead_iteration();
+ qfileFileRead_iteration();
+
+ t.start();
+ // 10 real runs
+ QBENCHMARK_ONCE {
+ for (int i = 0; i < iterations; i++) {
+ qfileFileRead_iteration();
+ }
+ }
+
+ qint64 elapsed = t.elapsed();
+ qDebug() << endl << "Finished!";
+ qDebug() << "Bytes:" << size;
+ qDebug() << "Speed:" << (qreal(size*iterations) / 1024.0) / (qreal(elapsed) / 1000.0) << "KB/sec";
+}
+
+QTEST_MAIN(qfile_vs_qnetworkaccessmanager)
+
+#include "main.moc"
diff --git a/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/qfile_vs_qnetworkaccessmanager.pro b/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/qfile_vs_qnetworkaccessmanager.pro
new file mode 100644
index 0000000000..0949af790a
--- /dev/null
+++ b/tests/benchmarks/network/access/qfile_vs_qnetworkaccessmanager/qfile_vs_qnetworkaccessmanager.pro
@@ -0,0 +1,13 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qfile_vs_qnetworkaccessmanager
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+QT += network
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/network/access/qnetworkdiskcache/qnetworkdiskcache.pro b/tests/benchmarks/network/access/qnetworkdiskcache/qnetworkdiskcache.pro
new file mode 100644
index 0000000000..7f665b332e
--- /dev/null
+++ b/tests/benchmarks/network/access/qnetworkdiskcache/qnetworkdiskcache.pro
@@ -0,0 +1,15 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qnetworkdiskcache
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT += gui # for QDesktopServices
+QT += network testlib
+
+CONFIG += release
+
+# Input
+SOURCES += tst_qnetworkdiskcache.cpp
+
+
diff --git a/tests/benchmarks/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp b/tests/benchmarks/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp
new file mode 100644
index 0000000000..55cbf55bed
--- /dev/null
+++ b/tests/benchmarks/network/access/qnetworkdiskcache/tst_qnetworkdiskcache.cpp
@@ -0,0 +1,435 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QNetworkDiskCache>
+#include <QNetworkCacheMetaData>
+#include <QDir>
+#include <QBuffer>
+#include <QTextStream>
+#include <QDebug>
+#include <QtTest/QtTest>
+#include <QIODevice>
+#include <QDesktopServices>
+
+
+
+enum Numbers { NumFakeCacheObjects = 200, //entries in pre-populated cache
+ NumInsertions = 100, //insertions to be timed
+ NumRemovals = 100, //removals to be timed
+ NumReadContent = 100, //meta requests to be timed
+ HugeCacheLimit = 50*1024*1024, // max size for a big cache
+ TinyCacheLimit = 1*512*1024}; // max size for a tiny cache
+
+const QString fakeURLbase = "http://127.0.0.1/fake/";
+//fake HTTP body aka payload
+const QByteArray payload("Qt rocks!");
+
+class tst_qnetworkdiskcache : public QObject
+{
+ Q_OBJECT
+private:
+ void injectFakeData();
+ void insertOneItem();
+ bool isUrlCached(quint32 id);
+ void cleanRecursive(QString &path);
+ void cleanupCacheObject();
+ void initCacheObject();
+ QString cacheDir;
+ QNetworkDiskCache *cache;
+
+public slots:
+ void initTestCase();
+ void cleanupTestCase();
+
+private slots:
+
+ void timeInsertion_data();
+ void timeInsertion();
+ void timeRead_data();
+ void timeRead();
+ void timeRemoval_data();
+ void timeRemoval();
+
+ void timeExpiration_data();
+ void timeExpiration();
+};
+
+
+void tst_qnetworkdiskcache::initTestCase()
+{
+ cache = 0;
+}
+
+
+void tst_qnetworkdiskcache::cleanupTestCase()
+{
+ cleanupCacheObject();
+ cleanRecursive(cacheDir);
+}
+
+void tst_qnetworkdiskcache::timeInsertion_data()
+{
+ QTest::addColumn<QString>("cacheRootDirectory");
+
+ QString cacheLoc = QDesktopServices::storageLocation(QDesktopServices::CacheLocation);
+ QTest::newRow("QDesktopServices Cache Location") << cacheLoc;
+#ifdef Q_OS_SYMBIAN
+ if (QDir::drives().contains(QFileInfo("E:\\")))
+ QTest::newRow("Symbian E: drive") << cacheLoc.replace(0, 1, QString("E"));
+#endif
+
+}
+
+//This functions times an insert() operation.
+//You can run it after populating the cache with
+//fake data so that more realistic performance
+//estimates are obtained.
+void tst_qnetworkdiskcache::timeInsertion()
+{
+
+ QFETCH(QString, cacheRootDirectory);
+
+ cacheDir = QString( cacheRootDirectory + QDir::separator() + "man_qndc");
+ QDir d;
+ qDebug() << "Setting cache directory to = " << d.absoluteFilePath(cacheDir);
+
+ //Housekeeping
+ cleanRecursive(cacheDir); // slow op.
+ initCacheObject();
+
+ cache->setCacheDirectory(cacheDir);
+ cache->setMaximumCacheSize(qint64(HugeCacheLimit));
+ cache->clear();
+
+ //populate some fake data to simulate partially full cache
+ injectFakeData(); // SLOW
+
+ //Sanity-check that the first URL that we insert below isn't already in there.
+ QVERIFY(isUrlCached(NumFakeCacheObjects) == false);
+
+ // IMPORTANT: max cache size should be HugeCacheLimit, to avoid evictions below
+ //time insertion of previously-uncached URLs.
+ QBENCHMARK_ONCE {
+ for (quint32 i = NumFakeCacheObjects; i < (NumFakeCacheObjects + NumInsertions); i++) {
+ //prepare metata for url
+ QNetworkCacheMetaData meta;
+ QString fakeURL;
+ QTextStream stream(&fakeURL);
+ stream << fakeURLbase << i;
+ QUrl url(fakeURL);
+ meta.setUrl(url);
+ meta.setSaveToDisk(true);
+
+ //commit payload and metadata to disk
+ QIODevice *device = cache->prepare(meta);
+ device->write(payload);
+ cache->insert(device);
+ }
+ }
+
+ //SLOW cleanup
+ cleanupCacheObject();
+ cleanRecursive(cacheDir);
+
+}
+
+void tst_qnetworkdiskcache::timeRead_data()
+{
+ QTest::addColumn<QString>("cacheRootDirectory");
+
+ QString cacheLoc = QDesktopServices::storageLocation(QDesktopServices::CacheLocation);
+ QTest::newRow("QDesktopServices Cache Location") << cacheLoc;
+#ifdef Q_OS_SYMBIAN
+ if (QDir::drives().contains(QFileInfo("E:\\")))
+ QTest::newRow("Symbian E: drive") << cacheLoc.replace(0, 1, QString("E"));
+#endif
+
+}
+
+//Times metadata as well payload lookup
+// i.e metaData(), rawHeaders() and data()
+void tst_qnetworkdiskcache::timeRead()
+{
+
+ QFETCH(QString, cacheRootDirectory);
+
+ cacheDir = QString( cacheRootDirectory + QDir::separator() + "man_qndc");
+ QDir d;
+ qDebug() << "Setting cache directory to = " << d.absoluteFilePath(cacheDir);
+
+ //Housekeeping
+ cleanRecursive(cacheDir); // slow op.
+ initCacheObject();
+ cache->setCacheDirectory(cacheDir);
+ cache->setMaximumCacheSize(qint64(HugeCacheLimit));
+ cache->clear();
+
+ //populate some fake data to simulate partially full cache
+ injectFakeData();
+
+ //Entries in the cache should be > what we try to remove
+ QVERIFY(NumFakeCacheObjects > NumReadContent);
+
+ //time metadata lookup of previously inserted URL.
+ QBENCHMARK_ONCE {
+ for (quint32 i = 0; i < NumReadContent; i++) {
+ QString fakeURL;
+ QTextStream stream(&fakeURL);
+ stream << fakeURLbase << i;
+ QUrl url(fakeURL);
+
+ QNetworkCacheMetaData qndc = cache->metaData(url);
+ QVERIFY(qndc.isValid()); // we must have read the metadata
+
+ QNetworkCacheMetaData::RawHeaderList raw(qndc.rawHeaders());
+ QVERIFY(raw.size()); // we must have parsed the headers from the meta
+
+ QIODevice *iodevice(cache->data(url));
+ QVERIFY(iodevice); //must not be NULL
+ iodevice->close();
+ delete iodevice;
+ }
+ }
+
+ //Cleanup (slow)
+ cleanupCacheObject();
+ cleanRecursive(cacheDir);
+
+}
+
+void tst_qnetworkdiskcache::timeRemoval_data()
+{
+ QTest::addColumn<QString>("cacheRootDirectory");
+
+ QString cacheLoc = QDesktopServices::storageLocation(QDesktopServices::CacheLocation);
+ QTest::newRow("QDesktopServices Cache Location") << cacheLoc;
+#ifdef Q_OS_SYMBIAN
+ if (QDir::drives().contains(QFileInfo("E:\\")))
+ QTest::newRow("Symbian E: drive") << cacheLoc.replace(0, 1, QString("E"));
+#endif
+
+}
+
+void tst_qnetworkdiskcache::timeRemoval()
+{
+
+ QFETCH(QString, cacheRootDirectory);
+
+ cacheDir = QString( cacheRootDirectory + QDir::separator() + "man_qndc");
+ QDir d;
+ qDebug() << "Setting cache directory to = " << d.absoluteFilePath(cacheDir);
+
+ //Housekeeping
+ initCacheObject();
+ cleanRecursive(cacheDir); // slow op.
+ cache->setCacheDirectory(cacheDir);
+ // Make max cache size HUGE, so that evictions don't happen below
+ cache->setMaximumCacheSize(qint64(HugeCacheLimit));
+ cache->clear();
+
+ //populate some fake data to simulate partially full cache
+ injectFakeData();
+
+ //Sanity-check that the URL is already in there somewhere
+ QVERIFY(isUrlCached(NumRemovals-1) == true);
+ //Entries in the cache should be > what we try to remove
+ QVERIFY(NumFakeCacheObjects > NumRemovals);
+
+ //time removal of previously-inserted URL.
+ QBENCHMARK_ONCE {
+ for (quint32 i = 0; i < NumRemovals; i++) {
+ QString fakeURL;
+ QTextStream stream(&fakeURL);
+ stream << fakeURLbase << i;
+ QUrl url(fakeURL);
+ cache->remove(url);
+ }
+ }
+
+ //Cleanup (slow)
+ cleanupCacheObject();
+ cleanRecursive(cacheDir);
+
+}
+
+void tst_qnetworkdiskcache::timeExpiration_data()
+{
+ QTest::addColumn<QString>("cacheRootDirectory");
+
+ QString cacheLoc = QDesktopServices::storageLocation(QDesktopServices::CacheLocation);
+ QTest::newRow("QDesktopServices Cache Location") << cacheLoc;
+#ifdef Q_OS_SYMBIAN
+ if (QDir::drives().contains(QFileInfo("E:\\")))
+ QTest::newRow("Symbian E: drive") << cacheLoc.replace(0, 1, QString("E"));
+#endif
+
+}
+void tst_qnetworkdiskcache::timeExpiration()
+{
+
+ QFETCH(QString, cacheRootDirectory);
+
+ cacheDir = QString( cacheRootDirectory + QDir::separator() + "man_qndc");
+ QDir d;
+ qDebug() << "Setting cache directory to = " << d.absoluteFilePath(cacheDir);
+
+ //Housekeeping
+ initCacheObject();
+ cleanRecursive(cacheDir); // slow op.
+ cache->setCacheDirectory(cacheDir);
+ // Make max cache size HUGE, so that evictions don't happen below
+ cache->setMaximumCacheSize(qint64(HugeCacheLimit));
+ cache->clear();
+
+ //populate some fake data to simulate partially full cache
+ injectFakeData();
+
+ //Sanity-check that the URL is already in there somewhere
+ QVERIFY(isUrlCached(NumRemovals-1) == true);
+ //Entries in the cache should be > what we try to remove
+ QVERIFY(NumFakeCacheObjects > NumRemovals);
+
+
+ //Set cache limit lower, so this force 1 round of eviction
+ cache->setMaximumCacheSize(qint64(TinyCacheLimit));
+
+ //time insertions of additional content, which is likely to internally cause evictions
+ QBENCHMARK_ONCE {
+ for (quint32 i = NumFakeCacheObjects; i < (NumFakeCacheObjects + NumInsertions); i++) {
+ //prepare metata for url
+ QNetworkCacheMetaData meta;
+ QString fakeURL;
+ QTextStream stream(&fakeURL);
+ stream << fakeURLbase << i;//codescanner::leave
+ QUrl url(fakeURL);
+ meta.setUrl(url);
+ meta.setSaveToDisk(true);
+
+ //commit payload and metadata to disk
+ QIODevice *device = cache->prepare(meta);
+ device->write(payload);
+ cache->insert(device); // this should trigger evictions, if TinyCacheLimit is small enough
+ }
+ }
+
+ //Cleanup (slow)
+ cleanupCacheObject();
+ cleanRecursive(cacheDir);
+
+}
+// This function simulates a partially or fully occupied disk cache
+// like a normal user of a cache might encounter is real-life browsing.
+// The point of this is to trigger degradation in file-system and media performance
+// that occur due to the quantity and layout of data.
+void tst_qnetworkdiskcache::injectFakeData()
+{
+
+ QNetworkCacheMetaData::RawHeaderList headers;
+ headers.append(qMakePair(QByteArray("X-TestHeader"),QByteArray("HeaderValue")));
+
+
+ //Prep cache dir with fake data using QNetworkDiskCache APIs
+ for (quint32 i = 0; i < NumFakeCacheObjects; i++) {
+
+ //prepare metata for url
+ QNetworkCacheMetaData meta;
+ QString fakeURL;
+ QTextStream stream(&fakeURL);
+ stream << fakeURLbase << i;
+ QUrl url(fakeURL);
+ meta.setUrl(url);
+ meta.setRawHeaders(headers);
+ meta.setSaveToDisk(true);
+
+ //commit payload and metadata to disk
+ QIODevice *device = cache->prepare(meta);
+ device->write(payload);
+ cache->insert(device);
+ }
+
+}
+
+
+// Checks if the fake URL #id is already cached or not.
+bool tst_qnetworkdiskcache::isUrlCached(quint32 id)
+{
+ QString str;
+ QTextStream stream(&str);
+ stream << fakeURLbase << id;
+ QUrl url(str);
+ QIODevice *iod = cache->data(url);
+ return ((iod == 0) ? false : true) ;
+
+}
+
+
+// Utility function for recursive directory cleanup.
+void tst_qnetworkdiskcache::cleanRecursive(QString &path)
+{
+ QDirIterator it(path, QDir::Files | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
+ while (it.hasNext()) {
+ QFile f(it.next());
+ bool err = f.remove();
+ Q_UNUSED(err);
+ }
+
+ QDirIterator it2(path, QDir::AllDirs | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
+ while (it2.hasNext()) {
+ QString s(it2.next());
+ QDir dir(s);
+ dir.rmdir(s);
+ }
+}
+
+void tst_qnetworkdiskcache::cleanupCacheObject()
+{
+ delete cache;
+ cache = 0;
+}
+
+void tst_qnetworkdiskcache::initCacheObject()
+{
+
+ cache = new QNetworkDiskCache();
+
+}
+QTEST_MAIN(tst_qnetworkdiskcache)
+#include "tst_qnetworkdiskcache.moc"
diff --git a/tests/benchmarks/network/access/qnetworkreply/qnetworkreply.pro b/tests/benchmarks/network/access/qnetworkreply/qnetworkreply.pro
new file mode 100644
index 0000000000..9d96dc7025
--- /dev/null
+++ b/tests/benchmarks/network/access/qnetworkreply/qnetworkreply.pro
@@ -0,0 +1,13 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qnetworkreply
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+QT += network
+
+CONFIG += release
+
+# Input
+SOURCES += tst_qnetworkreply.cpp
diff --git a/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp
new file mode 100644
index 0000000000..9a07aa4940
--- /dev/null
+++ b/tests/benchmarks/network/access/qnetworkreply/tst_qnetworkreply.cpp
@@ -0,0 +1,744 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+// This file contains benchmarks for QNetworkReply functions.
+
+#include <QDebug>
+#include <qtest.h>
+#include <QtTest/QtTest>
+#include <QtNetwork/qnetworkreply.h>
+#include <QtNetwork/qnetworkrequest.h>
+#include <QtNetwork/qnetworkaccessmanager.h>
+#include <QtNetwork/qtcpsocket.h>
+#include <QtNetwork/qtcpserver.h>
+#include "../../../../auto/network-settings.h"
+
+
+Q_DECLARE_METATYPE(QSharedPointer<char>)
+
+class TimedSender: public QThread
+{
+ Q_OBJECT
+ qint64 totalBytes;
+ QSemaphore ready;
+ QByteArray dataToSend;
+ QTcpSocket *client;
+ int timeout;
+ int port;
+public:
+ int transferRate;
+ TimedSender(int ms)
+ : totalBytes(0), timeout(ms), port(-1), transferRate(-1)
+ {
+ dataToSend = QByteArray(16*1024, '@');
+ start();
+ ready.acquire();
+ }
+
+ inline int serverPort() const { return port; }
+
+private slots:
+ void writeMore()
+ {
+ while (client->bytesToWrite() < 128 * 1024) {
+ writePacket(dataToSend);
+ }
+ }
+
+protected:
+ void run()
+ {
+ QTcpServer server;
+ server.listen();
+ port = server.serverPort();
+ ready.release();
+
+ server.waitForNewConnection(-1);
+ client = server.nextPendingConnection();
+
+ writeMore();
+ connect(client, SIGNAL(bytesWritten(qint64)), SLOT(writeMore()), Qt::DirectConnection);
+
+ QEventLoop eventLoop;
+ QTimer::singleShot(timeout, &eventLoop, SLOT(quit()));
+
+ QTime timer;
+ timer.start();
+ eventLoop.exec();
+ disconnect(client, SIGNAL(bytesWritten(qint64)), this, 0);
+
+ // wait for the connection to shut down
+ client->disconnectFromHost();
+ if (!client->waitForDisconnected(10000))
+ return;
+
+ transferRate = totalBytes * 1000 / timer.elapsed();
+ qDebug() << "TimedSender::run" << "receive rate:" << (transferRate / 1024) << "kB/s in"
+ << timer.elapsed() << "ms";
+ }
+
+ void writePacket(const QByteArray &array)
+ {
+ client->write(array);
+ totalBytes += array.size();
+ }
+};
+
+
+class QNetworkReplyPtr: public QSharedPointer<QNetworkReply>
+{
+public:
+ inline QNetworkReplyPtr(QNetworkReply *ptr = 0)
+ : QSharedPointer<QNetworkReply>(ptr)
+ { }
+
+ inline operator QNetworkReply *() const { return data(); }
+};
+
+
+class DataReader: public QObject
+{
+ Q_OBJECT
+public:
+ qint64 totalBytes;
+ QByteArray data;
+ QIODevice *device;
+ bool accumulate;
+ DataReader(QIODevice *dev, bool acc = true) : totalBytes(0), device(dev), accumulate(acc)
+ {
+ connect(device, SIGNAL(readyRead()), SLOT(doRead()));
+ }
+
+public slots:
+ void doRead()
+ {
+ QByteArray buffer;
+ buffer.resize(device->bytesAvailable());
+ qint64 bytesRead = device->read(buffer.data(), device->bytesAvailable());
+ if (bytesRead == -1) {
+ QTestEventLoop::instance().exitLoop();
+ return;
+ }
+ buffer.truncate(bytesRead);
+ totalBytes += bytesRead;
+
+ if (accumulate)
+ data += buffer;
+ }
+};
+
+class ThreadedDataReader: public QThread
+{
+ Q_OBJECT
+ // used to make the constructor only return after the tcp server started listening
+ QSemaphore ready;
+ QTcpSocket *client;
+ int timeout;
+ int port;
+public:
+ qint64 transferRate;
+ ThreadedDataReader()
+ : port(-1), transferRate(-1)
+ {
+ start();
+ ready.acquire();
+ }
+
+ inline int serverPort() const { return port; }
+
+protected:
+ void run()
+ {
+ QTcpServer server;
+ server.listen();
+ port = server.serverPort();
+ ready.release();
+
+ server.waitForNewConnection(-1);
+ client = server.nextPendingConnection();
+
+ QEventLoop eventLoop;
+ DataReader reader(client, false);
+ QObject::connect(client, SIGNAL(disconnected()), &eventLoop, SLOT(quit()));
+
+ QTime timer;
+ timer.start();
+ eventLoop.exec();
+ qint64 elapsed = timer.elapsed();
+
+ transferRate = reader.totalBytes * 1000 / elapsed;
+ qDebug() << "ThreadedDataReader::run" << "send rate:" << (transferRate / 1024) << "kB/s in" << elapsed << "msec";
+ }
+};
+
+class DataGenerator: public QIODevice
+{
+ Q_OBJECT
+ enum { Idle, Started, Stopped } state;
+public:
+ DataGenerator() : state(Idle)
+ { open(ReadOnly); }
+
+ virtual bool isSequential() const { return true; }
+ virtual qint64 bytesAvailable() const { return state == Started ? 1024*1024 : 0; }
+
+public slots:
+ void start() { state = Started; emit readyRead(); }
+ void stop() { state = Stopped; emit readyRead(); }
+
+protected:
+ virtual qint64 readData(char *data, qint64 maxlen)
+ {
+ if (state == Stopped)
+ return -1; // EOF
+
+ // return as many bytes as are wanted
+ memset(data, '@', maxlen);
+ return maxlen;
+ }
+ virtual qint64 writeData(const char *, qint64)
+ { return -1; }
+};
+
+class ThreadedDataReaderHttpServer: public QThread
+{
+ Q_OBJECT
+ // used to make the constructor only return after the tcp server started listening
+ QSemaphore ready;
+ QTcpSocket *client;
+ int timeout;
+ int port;
+public:
+ qint64 transferRate;
+ ThreadedDataReaderHttpServer()
+ : port(-1), transferRate(-1)
+ {
+ start();
+ ready.acquire();
+ }
+
+ inline int serverPort() const { return port; }
+
+protected:
+ void run()
+ {
+ QTcpServer server;
+ server.listen();
+ port = server.serverPort();
+ ready.release();
+
+ QVERIFY(server.waitForNewConnection(10*1000));
+ client = server.nextPendingConnection();
+
+ // read lines until we read the empty line seperating HTTP request from HTTP request body
+ do {
+ if (client->canReadLine()) {
+ QString line = client->readLine();
+ if (line == "\n" || line == "\r\n")
+ break; // empty line
+ }
+ if (!client->waitForReadyRead(10*1000)) {
+ client->close();
+ return;
+ }
+ } while (client->state() == QAbstractSocket::ConnectedState);
+
+ client->write("HTTP/1.0 200 OK\r\n");
+ client->write("Content-length: 0\r\n");
+ client->write("\r\n");
+ client->flush();
+
+ QCoreApplication::processEvents();
+
+ QEventLoop eventLoop;
+ DataReader reader(client, false);
+ QObject::connect(client, SIGNAL(disconnected()), &eventLoop, SLOT(quit()));
+
+ QTime timer;
+ timer.start();
+ eventLoop.exec();
+ qint64 elapsed = timer.elapsed();
+
+ transferRate = reader.totalBytes * 1000 / elapsed;
+ qDebug() << "ThreadedDataReaderHttpServer::run" << "send rate:" << (transferRate / 1024) << "kB/s in" << elapsed << "msec";
+ }
+};
+
+
+class FixedSizeDataGenerator : public QIODevice
+{
+ Q_OBJECT
+ enum { Idle, Started, Stopped } state;
+public:
+ FixedSizeDataGenerator(qint64 size) : state(Idle)
+ { open(ReadOnly | Unbuffered);
+ toBeGeneratedTotalCount = toBeGeneratedCount = size;
+ }
+
+ virtual qint64 bytesAvailable() const
+ {
+ return state == Started ? toBeGeneratedCount + QIODevice::bytesAvailable() : 0;
+ }
+
+ virtual bool isSequential() const{
+ return false;
+ }
+
+ virtual bool reset() const{
+ return false;
+ }
+
+ qint64 size() const {
+ return toBeGeneratedTotalCount;
+ }
+
+public slots:
+ void start() { state = Started; emit readyRead(); }
+
+protected:
+ virtual qint64 readData(char *data, qint64 maxlen)
+ {
+ memset(data, '@', maxlen);
+
+ if (toBeGeneratedCount <= 0) {
+ return -1;
+ }
+
+ qint64 n = qMin(maxlen, toBeGeneratedCount);
+ toBeGeneratedCount -= n;
+
+ if (toBeGeneratedCount <= 0) {
+ // make sure this is a queued connection!
+ emit readChannelFinished();
+ }
+
+ return n;
+ }
+ virtual qint64 writeData(const char *, qint64)
+ { return -1; }
+
+ qint64 toBeGeneratedCount;
+ qint64 toBeGeneratedTotalCount;
+};
+
+class HttpDownloadPerformanceServer : QObject {
+ Q_OBJECT;
+ qint64 dataSize;
+ qint64 dataSent;
+ QTcpServer server;
+ QTcpSocket *client;
+ bool serverSendsContentLength;
+ bool chunkedEncoding;
+
+public:
+ HttpDownloadPerformanceServer (qint64 ds, bool sscl, bool ce) : dataSize(ds), dataSent(0),
+ client(0), serverSendsContentLength(sscl), chunkedEncoding(ce) {
+ server.listen();
+ connect(&server, SIGNAL(newConnection()), this, SLOT(newConnectionSlot()));
+ }
+
+ int serverPort() {
+ return server.serverPort();
+ }
+
+public slots:
+
+ void newConnectionSlot() {
+ client = server.nextPendingConnection();
+ client->setParent(this);
+ connect(client, SIGNAL(readyRead()), this, SLOT(readyReadSlot()));
+ connect(client, SIGNAL(bytesWritten(qint64)), this, SLOT(bytesWrittenSlot(qint64)));
+ }
+
+ void readyReadSlot() {
+ client->readAll();
+ client->write("HTTP/1.0 200 OK\n");
+ if (serverSendsContentLength)
+ client->write(QString("Content-Length: " + QString::number(dataSize) + "\n").toAscii());
+ if (chunkedEncoding)
+ client->write(QString("Transfer-Encoding: chunked\n").toAscii());
+ client->write("Connection: close\n\n");
+ }
+
+ void bytesWrittenSlot(qint64 amount) {
+ Q_UNUSED(amount);
+ if (dataSent == dataSize && client) {
+ // close eventually
+
+ // chunked encoding: we have to send a last "empty" chunk
+ if (chunkedEncoding)
+ client->write(QString("0\r\n\r\n").toAscii());
+
+ client->disconnectFromHost();
+ server.close();
+ client = 0;
+ return;
+ }
+
+ // send data
+ if (client && client->bytesToWrite() < 100*1024 && dataSent < dataSize) {
+ qint64 amount = qMin(qint64(16*1024), dataSize - dataSent);
+ QByteArray data(amount, '@');
+
+ if (chunkedEncoding) {
+ client->write(QString(QString("%1").arg(amount,0,16).toUpper() + "\r\n").toAscii());
+ client->write(data.constData(), amount);
+ client->write(QString("\r\n").toAscii());
+ } else {
+ client->write(data.constData(), amount);
+ }
+
+ dataSent += amount;
+ }
+ }
+};
+
+class HttpDownloadPerformanceClient : QObject {
+ Q_OBJECT;
+ QIODevice *device;
+ public:
+ HttpDownloadPerformanceClient (QIODevice *dev) : device(dev){
+ connect(dev, SIGNAL(readyRead()), this, SLOT(readyReadSlot()));
+ }
+
+ public slots:
+ void readyReadSlot() {
+ device->readAll();
+ }
+
+};
+
+
+
+
+class tst_qnetworkreply : public QObject
+{
+ Q_OBJECT
+
+ QNetworkAccessManager manager;
+private slots:
+ void httpLatency();
+
+#ifndef QT_NO_OPENSSL
+ void echoPerformance_data();
+ void echoPerformance();
+#endif
+
+ void downloadPerformance();
+ void uploadPerformance();
+ void performanceControlRate();
+ void httpUploadPerformance();
+ void httpDownloadPerformance_data();
+ void httpDownloadPerformance();
+ void httpDownloadPerformanceDownloadBuffer_data();
+ void httpDownloadPerformanceDownloadBuffer();
+};
+
+void tst_qnetworkreply::httpLatency()
+{
+ QNetworkAccessManager manager;
+ QBENCHMARK{
+ QNetworkRequest request(QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/"));
+ QNetworkReply* reply = manager.get(request);
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection);
+ QTestEventLoop::instance().enterLoop(5);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ delete reply;
+ }
+}
+
+#ifndef QT_NO_OPENSSL
+void tst_qnetworkreply::echoPerformance_data()
+{
+ QTest::addColumn<bool>("ssl");
+ QTest::newRow("no_ssl") << false;
+ QTest::newRow("ssl") << true;
+}
+
+void tst_qnetworkreply::echoPerformance()
+{
+ QFETCH(bool, ssl);
+ QNetworkAccessManager manager;
+ QNetworkRequest request(QUrl((ssl ? "https://" : "http://") + QtNetworkSettings::serverName() + "/qtest/cgi-bin/echo.cgi"));
+
+ QByteArray data;
+ data.resize(1024*1024*10); // 10 MB
+ // init with garbage. needed so ssl cannot compress it in an efficient way.
+ for (int i = 0; i < data.size() / sizeof(int); i++) {
+ int r = qrand();
+ data.data()[i*sizeof(int)] = r;
+ }
+
+ QBENCHMARK{
+ QNetworkReply* reply = manager.post(request, data);
+ connect(reply, SIGNAL(sslErrors( const QList<QSslError> &)), reply, SLOT(ignoreSslErrors()));
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection);
+ QTestEventLoop::instance().enterLoop(5);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ QVERIFY(reply->error() == QNetworkReply::NoError);
+ delete reply;
+ }
+}
+#endif
+
+void tst_qnetworkreply::downloadPerformance()
+{
+ // unlike the above function, this one tries to send as fast as possible
+ // and measures how fast it was.
+ TimedSender sender(5000);
+ QNetworkRequest request("debugpipe://127.0.0.1:" + QString::number(sender.serverPort()) + "/?bare=1");
+ QNetworkReplyPtr reply = manager.get(request);
+ DataReader reader(reply, false);
+
+ QTime loopTime;
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
+ loopTime.start();
+ QTestEventLoop::instance().enterLoop(40);
+ int elapsedTime = loopTime.elapsed();
+ sender.wait();
+
+ qint64 receivedBytes = reader.totalBytes;
+ qDebug() << "tst_QNetworkReply::downloadPerformance" << "receive rate:" << (receivedBytes * 1000 / elapsedTime / 1024) << "kB/s and"
+ << elapsedTime << "ms";
+}
+
+void tst_qnetworkreply::uploadPerformance()
+{
+ ThreadedDataReader reader;
+ DataGenerator generator;
+
+
+ QNetworkRequest request("debugpipe://127.0.0.1:" + QString::number(reader.serverPort()) + "/?bare=1");
+ QNetworkReplyPtr reply = manager.put(request, &generator);
+ generator.start();
+ connect(&reader, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
+ QTimer::singleShot(5000, &generator, SLOT(stop()));
+
+ QTestEventLoop::instance().enterLoop(30);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+}
+
+void tst_qnetworkreply::httpUploadPerformance()
+{
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_WINCE_WM)
+ // SHow some mercy for non-desktop platform/s
+ enum {UploadSize = 4*1024*1024}; // 4 MB
+#else
+ enum {UploadSize = 128*1024*1024}; // 128 MB
+#endif
+ ThreadedDataReaderHttpServer reader;
+ FixedSizeDataGenerator generator(UploadSize);
+
+ QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(reader.serverPort()) + "/?bare=1"));
+ request.setHeader(QNetworkRequest::ContentLengthHeader,UploadSize);
+
+ QNetworkReplyPtr reply = manager.put(request, &generator);
+
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
+
+ QTime time;
+ generator.start();
+ time.start();
+ QTestEventLoop::instance().enterLoop(40);
+ qint64 elapsed = time.elapsed();
+ reader.exit();
+ reader.wait();
+ QVERIFY(reply->isFinished());
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+
+ qDebug() << "tst_QNetworkReply::httpUploadPerformance" << elapsed << "msec, "
+ << ((UploadSize/1024.0)/(elapsed/1000.0)) << " kB/sec";
+}
+
+
+void tst_qnetworkreply::performanceControlRate()
+{
+ // this is a control comparison for the other two above
+ // it does the same thing, but instead bypasses the QNetworkAccess system
+ qDebug() << "The following are the maximum transfer rates that we can get in this system"
+ " (bypassing QNetworkAccess)";
+
+ TimedSender sender(5000);
+ QTcpSocket sink;
+ sink.connectToHost("127.0.0.1", sender.serverPort());
+ DataReader reader(&sink, false);
+
+ QTime loopTime;
+ connect(&sink, SIGNAL(disconnected()), &QTestEventLoop::instance(), SLOT(exitLoop()));
+ loopTime.start();
+ QTestEventLoop::instance().enterLoop(40);
+ int elapsedTime = loopTime.elapsed();
+ sender.wait();
+
+ qint64 receivedBytes = reader.totalBytes;
+ qDebug() << "tst_QNetworkReply::performanceControlRate" << "receive rate:" << (receivedBytes * 1000 / elapsedTime / 1024) << "kB/s and"
+ << elapsedTime << "ms";
+}
+
+void tst_qnetworkreply::httpDownloadPerformance_data()
+{
+ QTest::addColumn<bool>("serverSendsContentLength");
+ QTest::addColumn<bool>("chunkedEncoding");
+
+ QTest::newRow("Server sends no Content-Length") << false << false;
+ QTest::newRow("Server sends Content-Length") << true << false;
+ QTest::newRow("Server uses chunked encoding") << false << true;
+
+}
+
+void tst_qnetworkreply::httpDownloadPerformance()
+{
+ QFETCH(bool, serverSendsContentLength);
+ QFETCH(bool, chunkedEncoding);
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_WINCE_WM)
+ // Show some mercy to non-desktop platform/s
+ enum {UploadSize = 4*1024*1024}; // 4 MB
+#else
+ enum {UploadSize = 128*1024*1024}; // 128 MB
+#endif
+ HttpDownloadPerformanceServer server(UploadSize, serverSendsContentLength, chunkedEncoding);
+
+ QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(server.serverPort()) + "/?bare=1"));
+ QNetworkReplyPtr reply = manager.get(request);
+
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection);
+ HttpDownloadPerformanceClient client(reply);
+
+ QTime time;
+ time.start();
+ QTestEventLoop::instance().enterLoop(40);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+
+ qint64 elapsed = time.elapsed();
+ qDebug() << "tst_QNetworkReply::httpDownloadPerformance" << elapsed << "msec, "
+ << ((UploadSize/1024.0)/(elapsed/1000.0)) << " kB/sec";
+};
+
+enum HttpDownloadPerformanceDownloadBufferTestType {
+ JustDownloadBuffer,
+ DownloadBufferButUseRead,
+ NoDownloadBuffer
+};
+Q_DECLARE_METATYPE(HttpDownloadPerformanceDownloadBufferTestType)
+
+class HttpDownloadPerformanceClientDownloadBuffer : QObject {
+ Q_OBJECT
+private:
+ HttpDownloadPerformanceDownloadBufferTestType testType;
+ QNetworkReply *reply;
+ qint64 uploadSize;
+ QList<qint64> bytesAvailableList;
+public:
+ HttpDownloadPerformanceClientDownloadBuffer (QNetworkReply *reply, HttpDownloadPerformanceDownloadBufferTestType testType, qint64 uploadSize)
+ : testType(testType), reply(reply), uploadSize(uploadSize)
+ {
+ connect(reply, SIGNAL(finished()), this, SLOT(finishedSlot()));
+ }
+
+ public slots:
+ void finishedSlot() {
+ if (testType == JustDownloadBuffer) {
+ // We have a download buffer and use it. This should be the fastest benchmark result.
+ QVariant downloadBufferAttribute = reply->attribute(QNetworkRequest::DownloadBufferAttribute);
+ QSharedPointer<char> data = downloadBufferAttribute.value<QSharedPointer<char> >();
+ } else if (testType == DownloadBufferButUseRead) {
+ // We had a download buffer but we benchmark here the "legacy" read() way to access it
+ char* replyData = (char*) qMalloc(uploadSize);
+ QVERIFY(reply->read(replyData, uploadSize) == uploadSize);
+ qFree(replyData);
+ } else if (testType == NoDownloadBuffer) {
+ // We did not have a download buffer but we still need to benchmark having the data, e.g. reading it all.
+ // This should be the slowest benchmark result.
+ char* replyData = (char*) qMalloc(uploadSize);
+ QVERIFY(reply->read(replyData, uploadSize) == uploadSize);
+ qFree(replyData);
+ }
+
+ QMetaObject::invokeMethod(&QTestEventLoop::instance(), "exitLoop", Qt::QueuedConnection);
+ }
+};
+
+void tst_qnetworkreply::httpDownloadPerformanceDownloadBuffer_data()
+{
+ QTest::addColumn<HttpDownloadPerformanceDownloadBufferTestType>("testType");
+
+ QTest::newRow("use-download-buffer") << JustDownloadBuffer;
+ QTest::newRow("use-download-buffer-but-use-read") << DownloadBufferButUseRead;
+ QTest::newRow("do-not-use-download-buffer") << NoDownloadBuffer;
+}
+
+// Please note that the whole "zero copy" download buffer API is private right now. Do not use it.
+void tst_qnetworkreply::httpDownloadPerformanceDownloadBuffer()
+{
+ QFETCH(HttpDownloadPerformanceDownloadBufferTestType, testType);
+
+ // On my Linux Desktop the results are already visible with 128 kB, however we use this to have good results.
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_WINCE_WM)
+ // Show some mercy to non-desktop platform/s
+ enum {UploadSize = 4*1024*1024}; // 4 MB
+#else
+ enum {UploadSize = 32*1024*1024}; // 32 MB
+#endif
+
+ HttpDownloadPerformanceServer server(UploadSize, true, false);
+
+ QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(server.serverPort()) + "/?bare=1"));
+ if (testType == JustDownloadBuffer || testType == DownloadBufferButUseRead)
+ request.setAttribute(QNetworkRequest::MaximumDownloadBufferSizeAttribute, 1024*1024*128); // 128 MB is max allowed
+
+ QNetworkAccessManager manager;
+ QNetworkReplyPtr reply = manager.get(request);
+
+ HttpDownloadPerformanceClientDownloadBuffer client(reply, testType, UploadSize);
+
+ QBENCHMARK_ONCE {
+ QTestEventLoop::instance().enterLoop(40);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+ QVERIFY(reply->isFinished());
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ }
+}
+
+QTEST_MAIN(tst_qnetworkreply)
+
+#include "tst_qnetworkreply.moc"
diff --git a/tests/benchmarks/network/kernel/kernel.pro b/tests/benchmarks/network/kernel/kernel.pro
new file mode 100644
index 0000000000..1ec3071f03
--- /dev/null
+++ b/tests/benchmarks/network/kernel/kernel.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qhostinfo
diff --git a/tests/benchmarks/network/kernel/qhostinfo/main.cpp b/tests/benchmarks/network/kernel/qhostinfo/main.cpp
new file mode 100644
index 0000000000..c12ebc3044
--- /dev/null
+++ b/tests/benchmarks/network/kernel/qhostinfo/main.cpp
@@ -0,0 +1,120 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+
+#include <QDebug>
+#include <QHostInfo>
+#include <QStringList>
+#include <QString>
+
+#include <qtest.h>
+#include <qtesteventloop.h>
+
+#include "private/qhostinfo_p.h"
+
+class tst_qhostinfo : public QObject
+{
+ Q_OBJECT
+public slots:
+ void init();
+private slots:
+ void lookupSpeed_data();
+ void lookupSpeed();
+};
+
+class SignalReceiver : public QObject
+{
+ Q_OBJECT
+public:
+ SignalReceiver(int nrc) : receiveCount(0), neededReceiveCount(nrc) {};
+ int receiveCount;
+ int neededReceiveCount;
+public slots:
+ void resultsReady(const QHostInfo) {
+ receiveCount++;
+ if (receiveCount == neededReceiveCount)
+ QTestEventLoop::instance().exitLoop();
+ }
+};
+
+void tst_qhostinfo::init()
+{
+ // delete the cache so inidividual testcase results are independant from each other
+ qt_qhostinfo_clear_cache();
+}
+
+void tst_qhostinfo::lookupSpeed_data()
+{
+ QTest::addColumn<bool>("cache");
+ QTest::newRow("WithCache") << true;
+ QTest::newRow("WithoutCache") << false;
+}
+
+void tst_qhostinfo::lookupSpeed()
+{
+ QFETCH(bool, cache);
+ qt_qhostinfo_enable_cache(cache);
+
+ QStringList hostnameList;
+ hostnameList << "www.ovi.com" << "www.nokia.com" << "qt.nokia.com" << "www.trolltech.com" << "troll.no"
+ << "www.qtcentre.org" << "forum.nokia.com" << "www.forum.nokia.com" << "wiki.forum.nokia.com"
+ << "www.nokia.no" << "nokia.de" << "127.0.0.1" << "----";
+ // also add some duplicates:
+ hostnameList << "www.nokia.com" << "127.0.0.1" << "www.trolltech.com";
+ // and some more
+ hostnameList << hostnameList;
+
+ const int COUNT = hostnameList.size();
+
+ SignalReceiver receiver(COUNT);
+
+ QBENCHMARK {
+ for (int i = 0; i < hostnameList.size(); i++)
+ QHostInfo::lookupHost(hostnameList.at(i), &receiver, SLOT(resultsReady(const QHostInfo)));
+ QTestEventLoop::instance().enterLoop(20);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ }
+}
+
+
+QTEST_MAIN(tst_qhostinfo)
+
+#include "main.moc"
diff --git a/tests/benchmarks/network/kernel/qhostinfo/qhostinfo.pro b/tests/benchmarks/network/kernel/qhostinfo/qhostinfo.pro
new file mode 100755
index 0000000000..e621d50e45
--- /dev/null
+++ b/tests/benchmarks/network/kernel/qhostinfo/qhostinfo.pro
@@ -0,0 +1,13 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qhostinfo
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+QT += network
+
+CONFIG += release
+
+# Input
+SOURCES += main.cpp
diff --git a/tests/benchmarks/network/network.pro b/tests/benchmarks/network/network.pro
new file mode 100644
index 0000000000..692a0a1b7e
--- /dev/null
+++ b/tests/benchmarks/network/network.pro
@@ -0,0 +1,13 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ access \
+ kernel \
+ ssl \
+ socket
+
+TRUSTED_BENCHMARKS += \
+ kernel/qhostinfo \
+ socket/qtcpserver \
+ ssl/qsslsocket
+
+include(../trusted-benchmarks.pri) \ No newline at end of file
diff --git a/tests/benchmarks/network/socket/qtcpserver/qtcpserver.pro b/tests/benchmarks/network/socket/qtcpserver/qtcpserver.pro
new file mode 100644
index 0000000000..e5b9346954
--- /dev/null
+++ b/tests/benchmarks/network/socket/qtcpserver/qtcpserver.pro
@@ -0,0 +1,13 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qtcpserver
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+QT += network
+
+CONFIG += release
+
+# Input
+SOURCES += tst_qtcpserver.cpp
diff --git a/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp b/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp
new file mode 100644
index 0000000000..aaccad0d61
--- /dev/null
+++ b/tests/benchmarks/network/socket/qtcpserver/tst_qtcpserver.cpp
@@ -0,0 +1,280 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+// Just to get Q_OS_SYMBIAN
+#include <qglobal.h>
+
+#include <QtTest/QtTest>
+
+
+#include <qcoreapplication.h>
+#include <qtcpsocket.h>
+#include <qtcpserver.h>
+#include <qhostaddress.h>
+#include <qprocess.h>
+#include <qstringlist.h>
+#include <qplatformdefs.h>
+#include <qhostinfo.h>
+
+#include <QNetworkProxy>
+Q_DECLARE_METATYPE(QNetworkProxy)
+Q_DECLARE_METATYPE(QList<QNetworkProxy>)
+
+#include "../../../../auto/network-settings.h"
+
+//TESTED_CLASS=
+//TESTED_FILES=
+
+class tst_QTcpServer : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QTcpServer();
+ virtual ~tst_QTcpServer();
+
+
+public slots:
+ void initTestCase_data();
+ void init();
+ void cleanup();
+private slots:
+ void ipv4LoopbackPerformanceTest();
+ void ipv6LoopbackPerformanceTest();
+ void ipv4PerformanceTest();
+};
+
+tst_QTcpServer::tst_QTcpServer()
+{
+ Q_SET_DEFAULT_IAP
+}
+
+tst_QTcpServer::~tst_QTcpServer()
+{
+}
+
+void tst_QTcpServer::initTestCase_data()
+{
+ QTest::addColumn<bool>("setProxy");
+ QTest::addColumn<int>("proxyType");
+
+ QTest::newRow("WithoutProxy") << false << 0;
+ QTest::newRow("WithSocks5Proxy") << true << int(QNetworkProxy::Socks5Proxy);
+}
+
+void tst_QTcpServer::init()
+{
+ QFETCH_GLOBAL(bool, setProxy);
+ if (setProxy) {
+ QFETCH_GLOBAL(int, proxyType);
+ if (proxyType == QNetworkProxy::Socks5Proxy) {
+ QNetworkProxy::setApplicationProxy(QNetworkProxy(QNetworkProxy::Socks5Proxy, QtNetworkSettings::serverName(), 1080));
+ }
+ }
+}
+
+void tst_QTcpServer::cleanup()
+{
+ QNetworkProxy::setApplicationProxy(QNetworkProxy::DefaultProxy);
+}
+
+//----------------------------------------------------------------------------------
+void tst_QTcpServer::ipv4LoopbackPerformanceTest()
+{
+ QFETCH_GLOBAL(bool, setProxy);
+ if (setProxy)
+ return;
+
+ QTcpServer server;
+ QVERIFY(server.listen(QHostAddress::LocalHost));
+
+ QVERIFY(server.isListening());
+
+ QTcpSocket clientA;
+ clientA.connectToHost(QHostAddress::LocalHost, server.serverPort());
+ QVERIFY(clientA.waitForConnected(5000));
+ QVERIFY(clientA.state() == QAbstractSocket::ConnectedState);
+
+ QVERIFY(server.waitForNewConnection());
+ QTcpSocket *clientB = server.nextPendingConnection();
+ QVERIFY(clientB);
+
+ QByteArray buffer(16384, '@');
+ QTime stopWatch;
+ stopWatch.start();
+ qlonglong totalWritten = 0;
+ while (stopWatch.elapsed() < 5000) {
+ QVERIFY(clientA.write(buffer.data(), buffer.size()) > 0);
+ clientA.flush();
+ totalWritten += buffer.size();
+ while (clientB->waitForReadyRead(100)) {
+ if (clientB->bytesAvailable() == 16384)
+ break;
+ }
+ clientB->read(buffer.data(), buffer.size());
+ clientB->write(buffer.data(), buffer.size());
+ clientB->flush();
+ totalWritten += buffer.size();
+ while (clientA.waitForReadyRead(100)) {
+ if (clientA.bytesAvailable() == 16384)
+ break;
+ }
+ clientA.read(buffer.data(), buffer.size());
+ }
+
+ qDebug("\t\t%s: %.1fMB/%.1fs: %.1fMB/s",
+ server.serverAddress().toString().toLatin1().constData(),
+ totalWritten / (1024.0 * 1024.0),
+ stopWatch.elapsed() / 1000.0,
+ (totalWritten / (stopWatch.elapsed() / 1000.0)) / (1024 * 1024));
+
+ delete clientB;
+}
+
+//----------------------------------------------------------------------------------
+void tst_QTcpServer::ipv6LoopbackPerformanceTest()
+{
+ QFETCH_GLOBAL(bool, setProxy);
+ if (setProxy)
+ return;
+#if defined(Q_WS_WINCE_WM)
+ QSKIP("WinCE WM: Not yet supported", SkipAll);
+#endif
+
+#if defined(Q_OS_SYMBIAN)
+ QSKIP("Symbian: IPv6 is not yet supported", SkipAll);
+#endif
+ QTcpServer server;
+ if (!server.listen(QHostAddress::LocalHostIPv6, 0)) {
+ QVERIFY(server.serverError() == QAbstractSocket::UnsupportedSocketOperationError);
+ } else {
+ QTcpSocket clientA;
+ clientA.connectToHost(server.serverAddress(), server.serverPort());
+ QVERIFY(clientA.waitForConnected(5000));
+
+ QVERIFY(server.waitForNewConnection(5000));
+ QTcpSocket *clientB = server.nextPendingConnection();
+ QVERIFY(clientB);
+
+ QByteArray buffer(16384, '@');
+ QTime stopWatch;
+ stopWatch.start();
+ qlonglong totalWritten = 0;
+ while (stopWatch.elapsed() < 5000) {
+ clientA.write(buffer.data(), buffer.size());
+ clientA.flush();
+ totalWritten += buffer.size();
+ while (clientB->waitForReadyRead(100)) {
+ if (clientB->bytesAvailable() == 16384)
+ break;
+ }
+ clientB->read(buffer.data(), buffer.size());
+ clientB->write(buffer.data(), buffer.size());
+ clientB->flush();
+ totalWritten += buffer.size();
+ while (clientA.waitForReadyRead(100)) {
+ if (clientA.bytesAvailable() == 16384)
+ break;
+ }
+ clientA.read(buffer.data(), buffer.size());
+ }
+
+ qDebug("\t\t%s: %.1fMB/%.1fs: %.1fMB/s",
+ server.serverAddress().toString().toLatin1().constData(),
+ totalWritten / (1024.0 * 1024.0),
+ stopWatch.elapsed() / 1000.0,
+ (totalWritten / (stopWatch.elapsed() / 1000.0)) / (1024 * 1024));
+ delete clientB;
+ }
+}
+
+//----------------------------------------------------------------------------------
+void tst_QTcpServer::ipv4PerformanceTest()
+{
+ QTcpSocket probeSocket;
+ probeSocket.connectToHost(QtNetworkSettings::serverName(), 143);
+ QVERIFY(probeSocket.waitForConnected(5000));
+
+ QTcpServer server;
+ QVERIFY(server.listen(probeSocket.localAddress(), 0));
+
+ QTcpSocket clientA;
+ clientA.connectToHost(server.serverAddress(), server.serverPort());
+ QVERIFY(clientA.waitForConnected(5000));
+
+ QVERIFY(server.waitForNewConnection(5000));
+ QTcpSocket *clientB = server.nextPendingConnection();
+ QVERIFY(clientB);
+
+ QByteArray buffer(16384, '@');
+ QTime stopWatch;
+ stopWatch.start();
+ qlonglong totalWritten = 0;
+ while (stopWatch.elapsed() < 5000) {
+ qlonglong writtenA = clientA.write(buffer.data(), buffer.size());
+ clientA.flush();
+ totalWritten += buffer.size();
+ while (clientB->waitForReadyRead(100)) {
+ if (clientB->bytesAvailable() == writtenA)
+ break;
+ }
+ clientB->read(buffer.data(), buffer.size());
+ qlonglong writtenB = clientB->write(buffer.data(), buffer.size());
+ clientB->flush();
+ totalWritten += buffer.size();
+ while (clientA.waitForReadyRead(100)) {
+ if (clientA.bytesAvailable() == writtenB)
+ break;
+ }
+ clientA.read(buffer.data(), buffer.size());
+ }
+
+ qDebug("\t\t%s: %.1fMB/%.1fs: %.1fMB/s",
+ probeSocket.localAddress().toString().toLatin1().constData(),
+ totalWritten / (1024.0 * 1024.0),
+ stopWatch.elapsed() / 1000.0,
+ (totalWritten / (stopWatch.elapsed() / 1000.0)) / (1024 * 1024));
+
+ delete clientB;
+}
+
+QTEST_MAIN(tst_QTcpServer)
+#include "tst_qtcpserver.moc"
diff --git a/tests/benchmarks/network/socket/socket.pro b/tests/benchmarks/network/socket/socket.pro
new file mode 100644
index 0000000000..2d676a2c6e
--- /dev/null
+++ b/tests/benchmarks/network/socket/socket.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qtcpserver
diff --git a/tests/benchmarks/network/ssl/qsslsocket/qsslsocket.pro b/tests/benchmarks/network/ssl/qsslsocket/qsslsocket.pro
new file mode 100644
index 0000000000..da34a028d3
--- /dev/null
+++ b/tests/benchmarks/network/ssl/qsslsocket/qsslsocket.pro
@@ -0,0 +1,13 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qsslsocket
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+QT += network
+
+CONFIG += release
+
+# Input
+SOURCES += tst_qsslsocket.cpp
diff --git a/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp b/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp
new file mode 100644
index 0000000000..041b61a50a
--- /dev/null
+++ b/tests/benchmarks/network/ssl/qsslsocket/tst_qsslsocket.cpp
@@ -0,0 +1,114 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtTest/QtTest>
+
+#include <qcoreapplication.h>
+#include <qsslconfiguration.h>
+#include <qsslsocket.h>
+
+
+#include "../../../../auto/network-settings.h"
+
+//TESTED_CLASS=
+//TESTED_FILES=
+
+class tst_QSslSocket : public QObject
+{
+ Q_OBJECT
+
+public:
+ tst_QSslSocket();
+ virtual ~tst_QSslSocket();
+
+
+public slots:
+ void initTestCase_data();
+ void init();
+ void cleanup();
+private slots:
+ void rootCertLoading();
+ void systemCaCertificates();
+};
+
+tst_QSslSocket::tst_QSslSocket()
+{
+}
+
+tst_QSslSocket::~tst_QSslSocket()
+{
+}
+
+void tst_QSslSocket::initTestCase_data()
+{
+}
+
+void tst_QSslSocket::init()
+{
+}
+
+void tst_QSslSocket::cleanup()
+{
+}
+
+//----------------------------------------------------------------------------------
+
+void tst_QSslSocket::rootCertLoading()
+{
+ QBENCHMARK_ONCE {
+ QSslSocket socket;
+ socket.connectToHostEncrypted(QtNetworkSettings::serverName(), 443);
+ socket.waitForEncrypted();
+ }
+}
+
+void tst_QSslSocket::systemCaCertificates()
+{
+ // The results of this test change if the benchmarking system changes too much.
+ // Therefore this benchmark is only good for manual regression checking between
+ // Qt versions.
+ QBENCHMARK_ONCE {
+ QList<QSslCertificate> list = QSslSocket::systemCaCertificates();
+ }
+}
+
+QTEST_MAIN(tst_QSslSocket)
+#include "tst_qsslsocket.moc"
diff --git a/tests/benchmarks/network/ssl/ssl.pro b/tests/benchmarks/network/ssl/ssl.pro
new file mode 100644
index 0000000000..0c8529d2f7
--- /dev/null
+++ b/tests/benchmarks/network/ssl/ssl.pro
@@ -0,0 +1,3 @@
+TEMPLATE = subdirs
+SUBDIRS = \
+ qsslsocket
diff --git a/tests/benchmarks/opengl/main.cpp b/tests/benchmarks/opengl/main.cpp
new file mode 100644
index 0000000000..6e97b2d9c2
--- /dev/null
+++ b/tests/benchmarks/opengl/main.cpp
@@ -0,0 +1,430 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtGui>
+#include <QtOpenGL>
+
+#include <qtest.h>
+
+#include <private/qpaintengine_opengl_p.h>
+
+class OpenGLBench : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void initTestCase();
+ void cleanupTestCase();
+
+ void imageDrawing_data();
+ void imageDrawing();
+
+ void pathDrawing_data();
+ void pathDrawing();
+
+ void painterOverhead();
+
+ void startupCost_data();
+ void startupCost();
+
+ void lineDrawing();
+
+ void textDrawing_data();
+ void textDrawing();
+
+ void clippedPainting_data();
+ void clippedPainting();
+
+ void gradients_data();
+ void gradients();
+
+ void textureUpload_data();
+ void textureUpload();
+
+
+private:
+ QGLPixelBuffer *pb;
+};
+
+void OpenGLBench::initTestCase()
+{
+ pb = new QGLPixelBuffer(512, 512);
+
+ QPainter p(pb);
+ p.setRenderHint(QPainter::Antialiasing);
+ p.setRenderHint(QPainter::HighQualityAntialiasing);
+
+ p.drawImage(0, 0, QImage(256, 256, QImage::Format_ARGB32_Premultiplied));
+}
+
+void OpenGLBench::cleanupTestCase()
+{
+ delete pb;
+}
+
+void OpenGLBench::imageDrawing_data()
+{
+ QTest::addColumn<bool>("smoothPixmapTransform");
+ QTest::addColumn<bool>("highQualityAntialiasing");
+ QTest::addColumn<bool>("pixmap");
+
+ for (int i = 0; i < (1 << 3); ++i) {
+ bool smoothPixmapTransform = i & 1;
+ bool highQualityAntialiasing = i & 2;
+ bool pixmap = i & 4;
+
+ QTest::newRow(QString("pixmap=%1 highQualityAntialiasing=%2 smoothPixmapTransform=%3")
+ .arg(pixmap).arg(highQualityAntialiasing).arg(smoothPixmapTransform).toAscii().data())
+ << pixmap << highQualityAntialiasing << smoothPixmapTransform;
+ }
+}
+
+void OpenGLBench::imageDrawing()
+{
+ QFETCH(bool, smoothPixmapTransform);
+ QFETCH(bool, highQualityAntialiasing);
+ QFETCH(bool, pixmap);
+
+ QImage img;
+ QPixmap pm;
+
+ if (pixmap)
+ pm = QPixmap(800, 800);
+ else
+ img = QImage(800, 800, QImage::Format_ARGB32_Premultiplied);
+
+ QPainter p(pb);
+ p.setRenderHint(QPainter::SmoothPixmapTransform, smoothPixmapTransform);
+ p.setRenderHint(QPainter::Antialiasing, highQualityAntialiasing);
+ p.setRenderHint(QPainter::HighQualityAntialiasing, highQualityAntialiasing);
+
+ QBENCHMARK {
+ if (pixmap) {
+ pm.detach();
+ p.drawPixmap(0, 0, pm);
+ } else {
+ img.detach();
+ p.drawImage(0, 0, img);
+ }
+ }
+}
+
+Q_DECLARE_METATYPE(QPainterPath)
+
+void OpenGLBench::pathDrawing_data()
+{
+ QTest::addColumn<QPainterPath>("path");
+ QTest::addColumn<bool>("highQualityAntialiasing");
+
+ QList<QPair<QPainterPath, QLatin1String> > paths;
+
+ {
+ QPainterPath path;
+ path.addRect(-100, -100, 200, 200);
+ paths << qMakePair(path, QLatin1String("plain rect"));
+ }
+
+ {
+ QPainterPath path;
+ path.addRoundedRect(-100, -100, 200, 200, 50, 50);
+ paths << qMakePair(path, QLatin1String("rounded rect"));
+ }
+
+ {
+ QPainterPath path;
+ path.addEllipse(-100, -100, 200, 200);
+ paths << qMakePair(path, QLatin1String("ellipse"));
+ }
+
+ for (int j = 0; j < (1 << 1); ++j) {
+ bool highQualityAntialiasing = j & 1;
+
+ for (int i = 0; i < paths.size(); ++i) {
+ QTest::newRow(QString("path=%1 highQualityAntialiasing=%2")
+ .arg(paths[i].second).arg(highQualityAntialiasing).toAscii().data())
+ << paths[i].first << highQualityAntialiasing;
+ }
+ }
+}
+
+void OpenGLBench::pathDrawing()
+{
+ QFETCH(QPainterPath, path);
+ QFETCH(bool, highQualityAntialiasing);
+
+ // warm-up
+ {
+ QPainterPath dummy;
+ dummy.addRect(-1, -1, 2, 2);
+ QPainter p(pb);
+ p.setRenderHint(QPainter::Antialiasing, highQualityAntialiasing);
+ p.setRenderHint(QPainter::HighQualityAntialiasing, highQualityAntialiasing);
+ p.translate(pb->width() / 2, pb->height() / 2);
+ p.rotate(30);
+ p.drawPath(dummy);
+ p.end();
+ }
+
+ QPainter p(pb);
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::black);
+ p.translate(pb->width() / 2, pb->height() / 2);
+
+ QBENCHMARK {
+ p.setRenderHint(QPainter::Antialiasing, highQualityAntialiasing);
+ p.setRenderHint(QPainter::HighQualityAntialiasing, highQualityAntialiasing);
+
+ p.rotate(0.01);
+ p.drawPath(path);
+ }
+}
+
+void OpenGLBench::painterOverhead()
+{
+ QBENCHMARK {
+ QPainter p(pb);
+ }
+}
+
+void OpenGLBench::startupCost_data()
+{
+ QTest::addColumn<bool>("highQualityAntialiasing");
+
+ QTest::newRow("highQualityAntialiasing=0") << false;
+ QTest::newRow("highQualityAntialiasing=1") << true;
+}
+
+void OpenGLBench::startupCost()
+{
+ QFETCH(bool, highQualityAntialiasing);
+ QPainterPath path;
+ path.addRoundedRect(-100, -100, 200, 200, 20, 20);
+ QBENCHMARK {
+ QGLPixelBuffer buffer(512, 512);
+ QPainter p(&buffer);
+ p.setRenderHint(QPainter::Antialiasing, highQualityAntialiasing);
+ p.setRenderHint(QPainter::HighQualityAntialiasing, highQualityAntialiasing);
+
+ p.translate(buffer.width() / 2, buffer.height() / 2);
+ p.drawPath(path);
+ }
+}
+
+void OpenGLBench::lineDrawing()
+{
+ QPainter p(pb);
+
+ QBENCHMARK {
+ p.drawLine(10, 10, 500, 500);
+ }
+}
+
+void OpenGLBench::textDrawing_data()
+{
+ QTest::addColumn<int>("lines");
+
+ int lines[] = { 1, 2, 4, 8, 16, 32, 64, 128 };
+
+ QTest::newRow("text lines=1 (warmup run)") << 1;
+ for (unsigned int i = 0; i < sizeof(lines) / sizeof(int); ++i)
+ QTest::newRow(QString("text lines=%0").arg(lines[i]).toAscii().data()) << lines[i];
+}
+
+void OpenGLBench::textDrawing()
+{
+ QPainter p(pb);
+
+ QFETCH(int, lines);
+
+ p.translate(0, 16);
+ QBENCHMARK {
+ for (int i = 0; i < lines; ++i)
+ p.drawText(0, i, "Hello World!");
+ }
+}
+
+void OpenGLBench::clippedPainting_data()
+{
+ QTest::addColumn<QPainterPath>("path");
+
+ QRectF rect = QRectF(0, 0, pb->width(), pb->height()).adjusted(5, 5, -5, -5);
+
+ {
+ QPainterPath path;
+ path.addRect(rect);
+ QTest::newRow("rect path") << path;
+ }
+
+ {
+ QPainterPath path;
+ path.addRoundedRect(rect, 5, 5);
+ QTest::newRow("rounded rect path") << path;
+ }
+
+ {
+ QPainterPath path;
+ path.addEllipse(rect);
+ QTest::newRow("ellipse path") << path;
+ }
+}
+
+void OpenGLBench::clippedPainting()
+{
+ QFETCH(QPainterPath, path);
+
+ QBENCHMARK {
+ QPainter p(pb);
+ p.setPen(Qt::NoPen);
+ p.setBrush(Qt::black);
+
+ p.setClipPath(path);
+ p.drawRect(0, 0, pb->width(), pb->height());
+ }
+}
+
+Q_DECLARE_METATYPE(QGradient::Type)
+
+void OpenGLBench::gradients_data()
+{
+ QTest::addColumn<QGradient::Type>("gradientType");
+ QTest::addColumn<bool>("objectBoundingMode");
+
+ QTest::newRow("warmup run") << QGradient::LinearGradient << false;
+
+ QTest::newRow("linear gradient") << QGradient::LinearGradient << false;
+ QTest::newRow("radial gradient") << QGradient::RadialGradient << false;
+ QTest::newRow("conical gradient") << QGradient::ConicalGradient << false;
+
+ QTest::newRow("linear gradient, object bounding mode") << QGradient::LinearGradient << true;
+ QTest::newRow("radial gradient, object bounding mode") << QGradient::RadialGradient << true;
+ QTest::newRow("conical gradient, object bounding mode") << QGradient::ConicalGradient << true;
+}
+
+void OpenGLBench::gradients()
+{
+ QFETCH(QGradient::Type, gradientType);
+ QFETCH(bool, objectBoundingMode);
+
+ QPointF a;
+ QPointF b = objectBoundingMode ? QPointF(1, 1) : QPointF(pb->width(), pb->height());
+
+ QGradient gradient;
+ switch (gradientType) {
+ case QGradient::LinearGradient:
+ gradient = QLinearGradient(a, b);
+ break;
+ case QGradient::RadialGradient:
+ gradient = QRadialGradient(a, b.x() / 2, b);
+ break;
+ case QGradient::ConicalGradient:
+ gradient = QConicalGradient((a + b)/2, 0);
+ break;
+ default:
+ break;
+ }
+
+ if (objectBoundingMode)
+ gradient.setCoordinateMode(QGradient::ObjectBoundingMode);
+
+ gradient.setColorAt(0, Qt::red);
+ gradient.setColorAt(0.2, Qt::blue);
+ gradient.setColorAt(0.4, Qt::transparent);
+ gradient.setColorAt(0.6, Qt::green);
+ gradient.setColorAt(0.8, Qt::black);
+ gradient.setColorAt(1, Qt::white);
+
+ QPainter p(pb);
+
+ QBENCHMARK {
+ p.fillRect(0, 0, pb->width(), pb->height(), gradient);
+ glFinish();
+ }
+}
+
+void OpenGLBench::textureUpload_data()
+{
+ QTest::addColumn<int>("size");
+ QTest::addColumn<int>("flags");
+ QTest::addColumn<int>("format");
+
+ int sizes[] = { 8, 10, 16, 20, 32, 50, 64, 100, 128, 200, 256, 500, 512, 1000, 1024, 2000, 2048, -1 };
+ int flags[] = { QGLContext::InternalBindOption,
+ QGLContext::DefaultBindOption,
+ -1 };
+ int formats[] = { GL_RGB, GL_RGBA, -1 };
+
+ for (int s = 0; sizes[s] != -1; ++s) {
+ for (int f = 0; flags[f] != -1; ++f) {
+ for (int a = 0; formats[a] != -1; ++a) {
+ QByteArray name;
+ name.append("size=").append(QByteArray::number(sizes[s]));
+ name.append(", flags=").append(f == 0 ? "internal" : "default");
+ name.append(", format=").append(a == 0 ? "RGB" : "RGBA");
+ QTest::newRow(name.constData()) << sizes[s] << flags[f] << formats[a];
+ }
+ }
+ }
+}
+
+void OpenGLBench::textureUpload()
+{
+ QFETCH(int, size);
+ QFETCH(int, flags);
+ QFETCH(int, format);
+
+ QPixmap pixmap(size, size);
+
+ if (format == GL_RGB)
+ pixmap.fill(Qt::red);
+ else
+ pixmap.fill(Qt::transparent);
+
+ pb->makeCurrent();
+ QGLContext *context = const_cast<QGLContext *>(QGLContext::currentContext());
+ QTime time;
+
+ time.start();
+ context->bindTexture(pixmap, GL_TEXTURE_2D, format, (QGLContext::BindOptions) flags);
+ QTest::setBenchmarkResult(time.elapsed(), QTest::WalltimeMilliseconds);
+}
+
+QTEST_MAIN(OpenGLBench)
+
+#include "main.moc"
diff --git a/tests/benchmarks/opengl/opengl.pro b/tests/benchmarks/opengl/opengl.pro
new file mode 100644
index 0000000000..b510c2bb06
--- /dev/null
+++ b/tests/benchmarks/opengl/opengl.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_opengl
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT += opengl
+
+# Input
+SOURCES += main.cpp
+
+include(../trusted-benchmarks.pri) \ No newline at end of file
diff --git a/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp b/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp
new file mode 100644
index 0000000000..d5375cc8e5
--- /dev/null
+++ b/tests/benchmarks/plugins/imageformats/jpeg/jpeg.cpp
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QDebug>
+#include <qtest.h>
+#include <QtTest/QtTest>
+#include <QFile>
+#include <QByteArray>
+#include <QBuffer>
+#include <QImageReader>
+#include <QSize>
+
+#if defined(Q_OS_SYMBIAN)
+# define SRCDIR ""
+#endif
+
+class tst_jpeg : public QObject
+{
+ Q_OBJECT
+private slots:
+ void jpegDecodingQtWebkitStyle();
+};
+
+void tst_jpeg::jpegDecodingQtWebkitStyle()
+{
+ // QtWebkit currently calls size() to get the image size for layouting purposes.
+ // Then when it is in the viewport (we assume that here) it actually gets decoded.
+ QFile inputJpeg(SRCDIR "n900.jpeg");
+ QVERIFY(inputJpeg.exists());
+ inputJpeg.open(QIODevice::ReadOnly);
+ QByteArray imageData = inputJpeg.readAll();
+ QBuffer buffer;
+ buffer.setData(imageData);
+ buffer.open(QBuffer::ReadOnly);
+ QCOMPARE(buffer.size(), qint64(19016));
+
+
+ QBENCHMARK{
+ for (int i = 0; i < 50; i++) {
+ QImageReader reader(&buffer, "jpeg");
+ QSize size = reader.size();
+ QVERIFY(!size.isNull());
+ QByteArray format = reader.format();
+ QVERIFY(!format.isEmpty());
+ QImage img = reader.read();
+ QVERIFY(!img.isNull());
+ buffer.reset();
+ }
+ }
+}
+
+QTEST_MAIN(tst_jpeg)
+
+#include "jpeg.moc"
diff --git a/tests/benchmarks/plugins/imageformats/jpeg/jpeg.pro b/tests/benchmarks/plugins/imageformats/jpeg/jpeg.pro
new file mode 100644
index 0000000000..e106f3e1b3
--- /dev/null
+++ b/tests/benchmarks/plugins/imageformats/jpeg/jpeg.pro
@@ -0,0 +1,18 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = jpeg
+DEPENDPATH += .
+INCLUDEPATH += .
+
+CONFIG += release
+
+wince*: {
+ DEFINES += SRCDIR=\\\"\\\"
+} else:symbian {
+ # SRCDIR and SVGFILE defined in code in symbian
+}else {
+ DEFINES += SRCDIR=\\\"$$PWD/\\\"
+}
+
+# Input
+SOURCES += jpeg.cpp
diff --git a/tests/benchmarks/plugins/imageformats/jpeg/n900.jpeg b/tests/benchmarks/plugins/imageformats/jpeg/n900.jpeg
new file mode 100644
index 0000000000..681989aca1
--- /dev/null
+++ b/tests/benchmarks/plugins/imageformats/jpeg/n900.jpeg
Binary files differ
diff --git a/tests/benchmarks/trusted-benchmarks.pri b/tests/benchmarks/trusted-benchmarks.pri
new file mode 100644
index 0000000000..a835cbdf1e
--- /dev/null
+++ b/tests/benchmarks/trusted-benchmarks.pri
@@ -0,0 +1,11 @@
+# Edit the list of trusted benchmarks in each of the sub-targets
+
+# command terminating newline in Makefile
+NL=$$escape_expand(\\n\\t)
+
+check-trusted.depends = qmake
+for(benchmark, TRUSTED_BENCHMARKS) {
+ check-trusted.commands += -cd $$benchmark && $(MAKE) -f $(MAKEFILE) check$${NL}
+}
+
+QMAKE_EXTRA_TARGETS += check-trusted