diff options
author | Eduard Roccatello <eduard@roccatello.it> | 2004-06-21 19:02:04 +0000 |
---|---|---|
committer | Eduard Roccatello <eduard@roccatello.it> | 2004-06-21 19:02:04 +0000 |
commit | f1926319745f5970a3749c0177eb453f62ba8e06 (patch) | |
tree | 485dab7be02e297cd9b08f656a86c36c3750239f | |
parent | 6d4decfd31cc301d4bba5697bd0059d6cd44e615 (diff) | |
download | xfce4-appfinder-f1926319745f5970a3749c0177eb453f62ba8e06.tar.gz |
It doesn't flicker anymore.
Code clean.
Icon added.
Some bug fixed (segfaults ;-)
(Old svn revision: 2127)
-rw-r--r-- | BUGS | 21 | ||||
-rw-r--r-- | TODO | 22 | ||||
-rw-r--r-- | src/inline-icon.h | 817 | ||||
-rwxr-xr-x | src/main.c | 117 | ||||
-rw-r--r-- | src/xfce4-appfinder.png | bin | 2812 -> 4554 bytes |
5 files changed, 464 insertions, 513 deletions
@@ -1,22 +1 @@ -22:39 <+ofourdan> woops -22:39 <+ofourdan> (xfce4-appfinder:15633): Gtk-WARNING **: Ignoring the separator setting -22:39 <+ofourdan> -22:39 <+ofourdan> ** (xfce4-appfinder:15633): WARNING **: Invalid UTF8 string passed to pango_layout_set_text() -22:39 <+ofourdan> -22:39 <+ofourdan> (xfce4-appfinder:15633): GLib-GObject-CRITICAL **: file gvalue.c: line 175 (g_value_peek_pointer): - assertion `G_IS_VALUE (value)' failed -22:39 <+ofourdan> Segmentation fault - -22:43 <+perldude> hmm. I never experienced this flickering in Filer... just as an example :) -22:46 <+perldude> master^shadow: I used to create a new empty liststore and set the liststore after its finished. currently - I use clear the liststore - -22:43 <+kelnos|work> hmm -22:43 <+kelnos|work> in the "All" list, i have a blank item on the bottom, and when i dbl click on it, i get -22:43 <+kelnos|work> Could not run command: ?H -22:44 <+kelnos|work> and to console: -22:44 <+kelnos|work> (xfce4-appfinder:3514): Gtk-WARNING **: Ignoring the separator setting -22:44 <+kelnos|work> -22:44 <+kelnos|work> ** (xfce4-appfinder:3514): WARNING **: Invalid UTF8 string passed to pango_layout_set_text() -22:44 <+kelnos|work> free(): invalid pointer 0xbfffed20! @@ -1,14 +1,12 @@ TODO ==== - -FOR v0.2 --------- - o Code cleanup - o Tooltips for applications entry - - -FOR v?.? --------- - o Drag and Drop to panel - o Exporting xfdesktop menu - o Most Used apps + o Drag and Drop to panel - DONE (miss panel support) + o Exporting xfdesktop menu - DONE + o Most Used apps - DONE + o Avoid flickering - DONE + o No item message on the apps treeview + o Recursive directory analysis + o Menu on right click on apps treeview + o Custom paths + o About box + o Support for legacy apps diff --git a/src/inline-icon.h b/src/inline-icon.h index 40008a1..a6e37ba 100644 --- a/src/inline-icon.h +++ b/src/inline-icon.h @@ -22,386 +22,441 @@ static const guint8 default_icon_data_48_48[] = /* height (48) */ "\0\0\0""0" /* pixel_data: */ - "\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\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\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\30\2\2\0\206\5\5\0\311\4\4\0\311\3\2\0s\0\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\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\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\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\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\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\5\1" - "\1\0v\21\16\1\357<4\0\3762+\0\376\15\13\0\352\0\0\0W\0\0\0\2\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\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\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\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\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" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0)\10\7\1\3032,\0\373\266" - "\234\0\377\247\217\0\377!\34\0\373\4\4\0\263\0\0\0\30\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\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\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\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\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\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\7\2\1\1r\23\20\0\355rb\0\376\353\312\0" - "\377\350\307\0\377]P\0\376\16\14\0\351\0\0\0Y\0\0\0\2\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\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\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\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\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\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0&\10\7\0\2733+\0\372\266\234\0\377\373\327\0\377" - "\375\331\0\377\246\216\0\377#\36\0\371\6\4\0\252\0\0\0\30\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\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\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\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\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\0\0" - "\0\0\0\0\0\0\0\0\0\5\0\0\0h\21\17\0\350l]\0\376\343\302\0\377\376\332" - "\0\377\377\333\0\377\336\276\0\377[N\0\376\14\12\0\342\0\0\0R\0\0\0\2" - "\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\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\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\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\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\0\0\0\0\0\0\0#\11\7\0\2632*\0\371\254\224\0\377\367\324\0\377" - "\377\333\0\377\377\333\0\377\367\324\0\377\235\206\0\377!\34\0\366\6" - "\4\0\242\0\0\0\27\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\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\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\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\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\0\0\0\4\0\0\0[\16\14\0\341dU\0\376\333\274\0" - "\377\376\332\0\377\377\333\0\377\377\333\0\377\375\331\0\377\325\266" - "\0\377UI\0\375\13\11\0\333\0\0\0L\0\0\0\2\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\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\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\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\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\34\11\10\1\246-&\0\370" - "\241\212\0\377\364\321\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\362\317\0\377\224\177\0\377\36\32\0\364\4\3\0\227\0\0" - "\0\24\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\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\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\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\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\4\0\0\0P\14\12\0\335YL\0\376\324\265\0\377\376\332\0\377\377\333\0" - "\377\377\333\0\377\377\333\0\377\377\333\0\377\374\331\0\377\315\260" - "\0\377NC\0\375\12\11\0\325\0\0\0B\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\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\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\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\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\26\11\7\1\227(\"\0\367\230\202\0\377\363" - "\320\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\355\313\0\377\207t\0\377\32\27\0\361\3\2\0\206" - "\0\0\0\16\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\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\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\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\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\1\1\0B\13" - "\12\0\326OD\0\376\314\256\0\377\375\331\0\377\377\333\0\377\377\333\0" - "\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\373\330" - "\0\377\303\247\0\377H=\0\375\13\11\0\313\0\0\0""9\0\0\0\2\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\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\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\2\0\0\0\2\0\0\0\4\0\0\0\7\0\0\0\13\0\0\0\16\0\0\0" - "\22\0\0\0\30\0\0\0\36\0\0\0%\1\1\0;\10\7\1\235%\40\1\365\212w\0\377\356" - "\315\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\350\307\0\377}l" - "\0\377\33\27\1\357\5\4\0\221\1\0\0""9\0\0\0%\0\0\0\34\0\0\0\27\0\0\0" - "\22\0\0\0\16\0\0\0\13\0\0\0\7\0\0\0\4\0\0\0\2\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\0\0\0\0\0\0\0\2\0\0\0\32\0\0\0""0\0" - "\0\0;\0\0\0J\0\0\0W\5\5\0g\12\10\0{\13\11\1\213\12\11\0\230\12\10\0\253" - "\11\10\0\270\15\13\0\303\20\16\0\326\37\33\1\362ZM\0\376\311\254\0\377" - "\375\331\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\372\327\0\377" - "\300\244\0\377SG\0\376\34\30\0\360\17\15\0\326\14\12\0\302\12\11\0\267" - "\12\10\0\251\12\11\0\230\12\11\0\211\11\10\1z\6\5\1e\0\0\0T\0\0\0H\0" - "\0\0""9\0\0\0-\0\0\0\27\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" - "-\10\7\1\237\13\12\0\313\21\17\0\324\25\22\0\337\34\30\0\346&!\0\357" - ".(\0\3667.\1\371>5\0\373D:\0\374KA\0\375XK\0\375bT\0\376\200m\0\377\302" - "\247\0\377\367\324\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\362\317\0\377\273\240\0\377}k\0\377`R\0\376" - "VI\0\375MB\0\375C9\0\374=5\0\3737/\0\371-'\1\365%\40\0\356\34\30\0\345" - "\24\21\0\335\20\16\0\323\13\12\0\306\5\5\0\221\1\1\0&\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\223\31\25\0\367QE\0\376l\\\0\376wf\0\376\205q" - "\0\377\224\177\0\377\237\210\0\377\255\224\0\377\273\240\0\377\305\251" - "\0\377\320\263\0\377\333\273\0\377\342\302\0\377\356\314\0\377\373\330" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\373\327\0\377\355\314\0\377\341\300" - "\0\377\331\273\0\377\320\263\0\377\303\247\0\377\272\240\0\377\256\225" - "\0\377\236\207\0\377\221|\0\377\204q\0\377ud\0\376hY\0\376K@\0\375\26" - "\23\0\362\2\2\0\177\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\277-&\0\376" - "\256\224\0\377\343\302\0\377\352\311\0\377\360\316\0\377\365\322\0\377" - "\370\325\0\377\373\330\0\377\375\331\0\377\376\332\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\375\331\0\377\373\327\0\377\370\325\0\377" - "\364\321\0\377\360\316\0\377\351\310\0\377\336\276\0\377\240\211\0\377" - ")#\0\375\3\3\0\252\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\241\36\32\1" - "\373we\0\377\324\266\0\377\374\330\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\370\325\0\377\313\256\0\377k\\\0\377\34" - "\30\0\367\3\3\0\211\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""9\11\10\0" - "\300#\37\0\371gX\0\377\310\253\0\377\370\325\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\365\322\0\377\276\243\0\377]P\0\376\36\32\0\364\12\10\0\264" - "\2\2\0/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\1\1\0""3\10\7\0\256\33" - "\27\1\364VI\0\376\273\237\0\377\365\322\0\377\377\333\0\377\377\333\0" - "\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\361\317\0\377\256\225" - "\0\377MB\0\376\26\23\0\357\7\6\0\236\2\2\0/\0\0\0\4\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\2\2\1\0%\5\5\0\227\21\17\0\356F<\0\376\253" - "\223\0\377\360\316\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\356" - "\314\0\377\237\210\0\377<3\0\376\16\15\0\351\3\3\0\211\1\1\0\40\0\0\0" - "\2\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\0\0\0\0\0" - "\0\0\26\2\1\0\200\12\10\1\3503,\0\376\232\204\0\377\355\313\0\377\376" - "\332\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\376" - "\332\0\377\350\307\0\377\215x\0\377+&\0\375\12\10\0\341\0\0\0n\0\0\0" - "\20\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\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0i\11\10\0\333+%\0\374\206r\0\377" - "\340\300\0\377\374\331\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\375\331\0\377" - "\335\275\0\377zh\0\377!\34\0\372\11\10\0\325\0\0\0^\0\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\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\13\0\0\0Z\11\10\1\317\40\33\0\370" - "rb\0\376\325\266\0\377\373\327\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\371\326\0\377\316\260\0\377eW" - "\0\376\27\24\0\367\11\7\1\304\0\0\0K\0\0\0\7\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\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\0\0\0\0\0\0\0\7\0\0\0E\11\7\2\273\27\24\0\364aS" - "\0\376\316\261\0\377\376\332\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\371\325\0\377\277\243\0\377RG\0\376\20\16\0\362\6\5\0\256\0\0" - "\0""9\0\0\0\2\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" - "\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\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\2\0\0\0""5\6\5\0\251\22\17\0\365p`\0\377\363\320\0" - "\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\331\272\0\377TI\0\376" - "\14\12\0\357\3\2\0\227\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\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\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\0\0\0\0\0\0""1" - "\6\5\0\325\77""6\0\377\345\304\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\272\237\0\377#\36\0\374\0\0\0\250\0\0\0\30\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\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\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\0\0\0\0\0\0\0\40\7\6\1\323B9\0\377\346\305\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\271\236\0\377\"\35\0\374\0\0\0" - "\223\0\0\0\2\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" - "\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\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\0\0\0\0\0\0\0B\15\14\0\353" - "dU\0\377\362\317\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\315" - "\260\0\3771*\0\376\0\0\0\274\0\0\0\16\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\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\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" - "\0\0\0\0\0\0\0n\20\16\0\366\217z\0\377\374\330\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\346\306\0\377SF\0\377\10\6\0\341\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\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\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\0\0\0\0\0\0\7\0\0\0\233\33\30\0\372\272\237\0" - "\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\366\323" - "\0\377zh\0\377\16\14\0\366\0\0\0R\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\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\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\0\0" - "\0\30\5\5\1\30580\0\375\333\274\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377" - "\333\0\377\377\333\0\377\376\332\0\377\243\214\0\377\22\20\0\374\0\0" - "\0\204\0\0\0\2\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\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\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""9\16\14\0\343\\O\0\376" - "\361\316\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\310\253\0\377\40\34\0\375\0\0\0\256\0\0\0\13\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\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\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\0a\20\16\0\360\204q\0\377\374\330\0\377\377\333\0" - "\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\374\330\0\377\351\310\0\377\274\241\0\377\235\207\0\377\253\222" - "\0\377\331\271\0\377\367\324\0\377\376\332\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333\0\377\344\303" - "\0\377C:\0\377\7\7\0\330\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\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" - "\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\5\0\0\0\216\31\26" - "\0\366\253\222\0\377\377\333\0\377\377\333\0\377\377\333\0\377\377\333" - "\0\377\377\333\0\377\374\331\0\377\357\314\0\377\301\245\0\377sb\0\377" - "+%\0\373\22\20\0\364\31\25\0\367LA\0\376\236\207\0\377\337\277\0\377" - "\370\325\0\377\376\332\0\377\377\333\0\377\377\333\0\377\377\333\0\377" - "\377\333\0\377\366\322\0\377m]\0\377\16\15\1\357\0\0\0J\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\0\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\361\360\356\377\351\347\344\377\351\347\344\377\351\347" - "\344\377\351\347\344\377\337\347\333\377\337\347\333\377\325\335\321" - "\377\203\207\177\377^Z6\377\317\271*\377\370\335*\377\370\335*\377\370" - "\335*\377\370\334*\377\357\326*\377\326\277*\377\240\217,\377h_3\377" - "WUJ\377|{|\377\247\246\252\377\337\336\344\377\337\336\344\377\337\336" - "\344\377\337\336\344\377\337\336\344\377\337\336\344\377\337\336\344" - "\377\337\336\344\377\347\345\344\377\351\347\344\377\351\347\344\377" - "\351\347\344\377\351\347\344\377\351\347\344\377\351\347\344\377\351" - "\347\344\377\351\347\344\377\351\347\344\377\351\347\344\377\351\347" - "\344\377\351\347\344\377\351\347\344\377\351\347\344\377\351\347\344" - "\377\351\347\344\377\206\205\202\377\351\347\344\377\302\277\270\377" - "\332\330\323\377\306\304\275\377\326\323\316\377\273\332\265\377\273" - "\332\265\377\251\305\243\377\\iS\377ki'\377\334\307\"\377\361\332\"\377" - "\361\332\"\377\356\327\"\377\332\306\"\377\256\240#\377ro%\377OM;\377" - "]\\c\377\201\204\226\377\231\234\265\377\245\252\305\377\247\254\307" - "\377\247\254\307\377\247\254\310\377\247\254\307\377\251\256\311\377" - "\250\254\307\377\267\267\322\377\273\272\325\377\334\332\325\377\334" - "\332\325\377\334\332\325\377\334\332\325\377\334\332\325\377\334\332" - "\325\377\334\332\325\377\334\332\325\377\334\332\325\377\334\332\325" - "\377\334\332\325\377\334\332\325\377\334\332\325\377\302\277\270\377" - "\332\330\323\377\306\304\275\377\326\323\316\377ED@\377\351\347\344\377" - "\266\263\254\377\350\347\344\377\266\263\254\377\351\350\346\377\273" - "\332\265\377\273\332\265\377\233\265\226\377PZD\377\206\177#\377\344" - "\316\40\377\360\331!\377\345\317\"\377\300\257\"\377\207~$\377YZ,\377" - "T`G\377wy\202\377\236\237\266\377\216\247\276\377\200\226\261\377{\220" - "\256\377|\220\256\377|\220\256\377|\220\256\377{\220\255\377}\221\256" - "\377s\205\237\377\212\217\246\377\273\272\325\377\334\332\325\377\334" - "\332\325\377\334\332\325\377\334\332\325\377\334\332\325\377\334\332" - "\325\377\334\332\325\377\334\332\325\377\334\332\325\377\334\332\325" - "\377\334\332\325\377\334\332\325\377\334\332\325\377\266\263\254\377" - "\350\347\344\377\266\263\254\377\351\350\346\377ED@\377\351\347\344\377" - "\302\277\270\377\332\330\323\377\306\304\275\377\326\323\316\377\273" - "\332\265\377\271\330\263\377\213\242\206\377IQ7\377\234\216\36\377\350" - "\314$\377\314\264\35\377\227\207\36\377`]%\377QX:\377izb\377\222\252" - "\215\377\257\263\302\377\266\266\322\377\203\231\264\377\246\302\331" - "\377\253\277\322\377\253\276\321\377\237\265\311\377`\203\245\377[}\235" - "\377_y\226\377Zp\212\377\215\217\245\377\273\272\325\377\334\332\325" - "\377\334\332\325\377\332\330\323\377\332\330\323\377\332\330\323\377" - "\332\330\323\377\332\330\323\377\332\330\323\377\332\330\323\377\332" - "\330\323\377\332\330\323\377\334\332\325\377\334\332\325\377\302\277" - "\270\377\332\330\323\377\306\304\275\377\326\323\316\377ED@\377\351\347" - "\344\377\266\263\254\377\350\347\344\377\266\263\254\377\351\350\346" - "\377\273\332\265\377\270\327\262\377\177\223z\377DD4\377\214}\36\377" - "\261\235(\377wm-\377RN3\377IOA\377\206\233\177\377\247\303\242\377\267" - "\325\261\377\273\277\320\377\270\271\324\377\204\231\266\377\242\274" - "\325\377\230\254\277\377\236\261\302\377\237\260\301\377Qn\213\377[r" - "\214\377c{\231\377<>F\377\265\264\317\377\273\272\325\377\334\332\325" - "\377\334\332\325\377pon\377ppo\377\221\220\217\377\217\216\214\377\205" - "\204\202\377\231\230\227\377nnm\377oon\377\206\205\204\377\330\326\322" - "\377\334\332\325\377\266\263\254\377\350\347\344\377\266\263\254\377" - "\351\350\346\377ED@\377\351\347\344\377\302\277\270\377\332\330\323\377" - "\306\304\275\377\326\323\316\377\273\332\265\377\272\331\264\377\217" - "\247\213\377SSL\377XT5\377RM-\377SSH\377\207\207\204\377|\177{\377\250" - "\303\242\377\272\331\264\377\273\332\265\377\273\277\320\377\271\271" - "\324\377\204\232\266\377\203\244\302\377m\211\243\377\213\225\207\377" - "{\211\210\377|z\\\377\205\217\207\377ta7\377\207^E\377\270\270\322\377" - "\273\272\325\377\334\332\325\377\334\332\325\377jjj\377\203\203\203\377" - "\274\273\272\377\235\212q\377\234\226\217\377\310\307\306\377qqp\377" - "\200\200\200\377\222\222\221\377\331\327\322\377\334\332\325\377\302" - "\277\270\377\332\330\323\377\306\304\275\377\326\323\316\377ED@\377\351" - "\347\344\377\266\263\254\377\350\347\344\377\266\263\254\377\351\350" - "\346\377\273\332\265\377\273\331\265\377\235\252\233\377\236\237\235" - "\377\217\217\214\377gsb\377hmf\377\277\300\277\377\232\240\231\377\257" - "\313\251\377\273\332\265\377\273\332\265\377\273\277\320\377\271\271" - "\324\377\204\232\267\377m\224\267\377Vv\223\377m{t\377\231\211V\377\226" - "\207Z\377\220~>\377{W\37\377\210YC\377\270\270\322\377\273\272\325\377" - "\334\332\325\377\334\332\325\377utt\377\205\205\204\377\216\204v\377" - "xbH\377hgf\377\200\177~\377nnn\377\210\210\207\377\230\230\227\377\331" - "\327\322\377\334\332\325\377\266\263\254\377\350\347\344\377\266\263" - "\254\377\351\350\346\377ED@\377\351\347\344\377\302\277\270\377\332\330" - "\323\377\306\304\275\377\326\323\316\377\273\332\265\377\273\331\265" - "\377\234\247\232\377\323\323\322\377\322\323\322\377\215\222\214\377" - "\244\245\244\377\266\267\266\377\233\260\227\377\273\332\265\377\273" - "\332\265\377\273\332\265\377\273\277\320\377\271\271\324\377\204\232" - "\267\377m\224\266\377Uq\210\377vsS\377\216\201W\377wkL\377\200l,\377" - "wM\31\377{N\77\377\270\270\322\377\273\272\325\377\334\332\325\377\334" - "\332\325\377\320\317\312\377\270\253\231\377\270\232m\377VD1\377zws\377" - "\321\317\313\377\322\320\314\377\322\320\314\377\324\322\316\377\334" - "\332\325\377\334\332\325\377\302\277\270\377\332\330\323\377\306\304" - "\275\377\326\323\316\377ED@\377\351\347\344\377\266\263\254\377\350\347" - "\344\377\266\263\254\377\351\350\346\377\273\332\265\377\273\332\265" - "\377\241\272\234\377\225\226\225\377\307\307\307\377\305\305\305\377" - "\254\256\254\377\222\227\222\377\241\267\234\377\273\332\265\377\273" - "\332\265\377\273\332\265\377\273\277\320\377\271\271\324\377\204\232" - "\267\377h\214\257\377\\s\216\377{\207\204\377\215\203_\377\206wL\377" - "PD\35\377z>\27\377\205M\77\377\270\270\322\377\273\272\325\377\334\332" - "\325\377\334\332\325\377\327\324\317\377\322\277\241\377\344\307\226" - "\377\233}R\377je^\377\331\327\322\377\334\332\325\377\334\332\325\377" - "\334\332\325\377\334\332\325\377\334\332\325\377\266\263\254\377\350" - "\347\344\377\266\263\254\377\351\350\346\377ED@\377\351\347\344\377\302" - "\277\270\377\332\330\323\377\306\304\275\377\326\323\316\377\273\332" - "\265\377\273\332\265\377\270\326\262\377\226\246\222\377\206\216\205" - "\377\222\225\222\377\222\237\217\377\260\315\253\377\272\331\264\377" - "\273\332\265\377\273\332\265\377\273\332\265\377\273\277\320\377\271" - "\271\324\377\210\235\274\377m\210\247\377ax\224\377zo<\377\231u)\377" - "wR\32\377\203G\32\377\264O\36\377\210I>\377\270\270\322\377\273\272\325" - "\377\334\332\325\377\334\332\325\377\315\307\275\377\341\310\235\377" - "\317\255y\377\207jE\377\234\227\220\377\333\331\324\377\334\332\325\377" - "\334\332\325\377\334\332\325\377\334\332\325\377\334\332\325\377\302" - "\277\270\377\332\330\323\377\306\304\275\377\326\323\316\377ED@\377\351" - "\347\344\377\266\263\254\377\350\347\344\377\266\263\254\377\351\350" - "\346\377\273\332\265\377\273\332\265\377\273\332\265\377\272\330\264" - "\377\266\324\260\377\247\301\242\377\264\322\257\377\273\332\265\377" - "\273\332\265\377\273\332\265\377\273\332\265\377\273\332\265\377\273" - "\277\320\377\270\270\323\377p\206\242\377Yn\207\377^PH\377\242tB\377" - "\247m@\377\234]:\377\242T8\377\243K5\377y\\b\377\271\270\323\377\273" - "\272\325\377\334\332\325\377\334\332\325\377\322\312\273\377\326\266" - "\200\377\234\210q\377\271\265\257\377\331\327\322\377\334\332\325\377" - "\334\332\325\377\334\332\325\377\334\332\325\377\334\332\325\377\334" - "\332\325\377\266\263\254\377\350\347\344\377\266\263\254\377\351\350" - "\346\377ED@\377\351\347\344\377\335\333\327\377\345\343\340\377\333\331" - "\325\377\347\345\342\377\273\332\265\377\273\332\265\377\273\332\265" - "\377\273\332\265\377\273\332\265\377\273\332\265\377\273\332\265\377" - "\273\332\265\377\273\332\265\377\273\332\265\377\273\332\265\377\273" - "\332\265\377\273\277\320\377\273\272\325\377\245\246\277\377\242\243" - "\273\377\267\265\316\377\265\264\315\377\265\264\315\377\265\264\315" - "\377\265\264\315\377\265\264\315\377\270\267\321\377\273\272\325\377" - "\273\272\325\377\334\332\325\377\334\332\325\377\334\331\324\377\332" - "\325\313\377\332\327\322\377\334\332\325\377\334\332\325\377\334\332" - "\325\377\334\332\325\377\334\332\325\377\334\332\325\377\334\332\325" - "\377\334\332\325\377\335\333\327\377\345\343\340\377\333\331\325\377" - "\347\345\342\377ED@\377\206\205\202\377ED@\377ED@\377ED@\377ED@\377E" - "D@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377" - "ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377" - "ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377" - "ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377ED@\377" - "ED@\377ED@\377ED@\377"}; + "\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\17\377\377\377k\377\377\377" + "5\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377[\377\377\377T\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\33\377\377\377\210\377\377" + "\377!\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377X\377\377\377\377\331\331\331\364\244\244\244F\377" + "\377\377\0\377\377\377#\377\377\377X\377\377\377\15\377\377\377\0\377" + "\377\377g\377\377\377\377\264\264\264\377\14\14\14\224\0\0\0\231\0\0" + "\0\266\0\0\0\301\0\0\0\246\0\0\0\212ZZZ\177\355\355\355\202\377\377\377" + "\6\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\244\377\377\377\377\275\275\275\374\371\371\371\224\377\377\377\27\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377{\304\304\304\377\0" + "\0\0\377\31\31\31\376SSSg\376\376\376\275\373\373\373\377\340\340\340" + "\204\371\371\371a\234\234\234\376!!!\377\0\0\0\377\0\0\0\377\0\0\0\377" + "\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\377\7\7\7\377\26\26\26" + "\334\0\0\0\30\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0" + "\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "{}}}\377\0\0\0\377\27\27\27\377\226\226\226\372\375\375\375\204\377\377" + "\377\17\377\377\377\0\377\377\377\236\232\232\232\375\0\0\0\377\2\2\2" + "\377\3\3\3\377\270\270\270\377xxx\377\0\0\0\377$$$\377\0\0\0\377\0\0" + "\0\377\0\0\0\377\0\0\0\377\0\0\0\377\10\10\10\330!!!\360\27\27\27\377" + "\7\7\7\377\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\372\0\0\0V\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377N\210\210\210\377\0\0\0\377\22\22\17\377" + "\0\0\0\377\30\30\30\377\247\247\247\365\377\377\377u\376\376\376\311" + "sss\377\1\1\1\377\241\241\206\377\6\6\5\377\4\4\4\377\6\6\6\377\0\0\0" + "\377\0\0\0\377\0\0\0\377\2\2\1\377PPB\377\22\22\17\377\0\0\0\377\0\0" + "\0\377\0\0\0\377\3\3\2\377%%\37\377CC9\377))\"\377\0\0\0\377\0\0\0\377" + "\0\0\0\377\0\0\0\245\0\0\0\12\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\"\265\265\265\377\0\0\0\377" + "\237\237\205\377\214\214t\377\27\27\23\377\0\0\0\377\40\40\40\377\273" + "\273\273\377NNN\377\31\31\25\377\347\347\300\377\245\245\211\377\2\2" + "\1\377\0\0\0\377\0\0\0\377\0\0\0\377\3\3\2\377ffU\377\312\312\247\377" + "\253\253\216\377MM@\377zzf\377\257\257\221\377\337\337\271\377\347\347" + "\300\377\347\347\300\377\225\225|\377\0\0\0\377\0\0\0\377\0\0\0\377\0" + "\0\0\377\0\0\0\341\0\0\0\16\377\377\377\0\377\377\377\0\377\377\377\0" + "\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\1\337\337\337\367\0\0\0\377{{f\377\347\347" + "\300\377\340\340\272\377\177\177i\377\17\17\14\377\0\0\0\377\2\2\2\377" + "==3\377\347\347\300\377\303\303\242\377\4\4\4\377\0\0\0\377\36\36\31" + "\377KK>\377\200\200k\377\340\340\272\377\347\347\300\377\357\357\325" + "\377\367\367\354\377\372\372\362\377\367\367\354\377\355\355\320\377" + "\347\347\300\377\347\347\300\377rr_\377\0\0\0\377\0\0\0\377\0\0\0\261" + "\0\0\0\372\0\0\0\377\0\0\0\267\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\376\376\376\313\14\14\14\377SSE\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\332\332\265\377rr_\377\25" + "\25\21\377\222\222y\377\346\346\277\37777-\377\0\0\0\377\23\23\20\377" + "uua\377\300\300\237\377\347\347\300\377\350\350\303\377\370\370\354\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\355\355\322\377\347\347\300\377NNA\377\14\14\13\377\0\0" + "\0\375\0\0\0\11\0\0\0\212\0\0\0\377\0\0\0\376\0\0\0]\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\36\377\377\377z\377\377\377O\377\377\377$\377\377\377\2\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\235888\377++$\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\207\207p\377\0\0\0\377\1" + "\1\1\377ZZJ\377\266\266\230\377\347\347\300\377\347\347\300\377\371\371" + "\357\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\372\372\363\377\347\347\300\377" + "))\"\377\7\7\7\377\1\1\1\347\0\0\0,\227\227\227\24\13\13\13\332\0\0\0" + "\377\13\13\13\364===\30\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\376\376\376\247\373\373\373\377\303\303\303" + "\377\355\355\355\377\376\376\376\370\376\376\376\317\377\377\377\242" + "\377\377\377w\377\377\377\245fff\377\6\6\5\377\344\344\276\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\317\317\254\377\14\14\12\377\0\0\0\37744+\377\220\220w\377\346\346" + "\277\377\347\347\300\377\360\360\330\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\376\376\375\377\347\347\300\377``P\377\0\0\0\377\0\0" + "\0\377\0\0\0\377\0\0\0\377\31\31\31\377\1\1\1\377\0\0\0\377\24\24\24" + "\343\0\0\0\15\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0" + "\377\377\377L\177\177\177\377\0\0\0\377\0\0\0\377\22\22\22\377<<<\377" + "lll\376\232\232\232\377\306\306\306\377\203\203\203\376\0\0\0\377\305" + "\305\243\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377}}h\377\0\0\0\377\16\16\14\377rr_\377\326\326" + "\262\377\347\347\300\377\347\347\300\377\371\371\357\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\375\375\373\377\347\347\300\377\347" + "\347\300\377\331\331\265\377\266\266\227\377\223\223z\377oo\\\377KK>" + "\377\21\21\16\377\0\0\0\377\0\0\0\377\0\0\0\270\0\0\0\10\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\214\214\214\333\0\0\0\377" + "66-\377MM@\377##\35\377\3\3\2\377\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0" + "\377\242\242\207\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\37755,\377\0\0\0\37777-\377\256\256\221" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\376\376\375\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\370\370\354\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\330\330\263\377\1\1\1\377\0\0\0" + "\377\0\0\0\377\0\0\0\201\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\0\362\362\362\77\36\36\36\377\35\35\30\377\342\342\274\377\347" + "\347\300\377\342\342\273\377\275\275\235\377\226\226}\377oo\\\377llZ" + "\377\343\343\275\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\323\323\260\377\0\0\0\377\0\0\0\377\40\40\33\377__O" + "\377\224\224{\377\331\331\264\377\347\347\300\377\374\374\370\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\376\376\376\377\354\354\315\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\345\345\276\377\6\6\5\377\0\0\0\377" + "\0\0\0\377\0\0\0;\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\227\227\227\316\0\0\0\377\211\211r\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\275\275\235\377\40\40\33\377\0\0\0\377\0\0\0\377\10\10\10\377" + "\2\2\2\377\0\0\0\377\5\5\4\377AA6\377\340\340\325\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\362\362\336\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\232\232\200\377\0\0\0\377\0\0\0\377\0\0\0\361\0" + "\0\0\31\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377/)))\377\25\25\21\377\337\337\271\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\346\346\277\377\203\203m\377\6\6\5\377\16" + "\16\16\377\0\0\0\377\5\5\5\377\244\244\244\377\374\374\374\377\301\301" + "\301\377ttt\377\32\32\32\377\20\20\20\377\334\334\331\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\375\375\372\377\357\357\326\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377..&\377\5\5\5\377\0\0\0\377\0\0\0\341\0\0\0%\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\243" + "\243\243\276\0\0\0\377}}h\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\212\212s\377\0\0\0\377@@@\377\242\242\242\377\0\0\0\377\13\13\13" + "\377\262\262\262\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\366\366\366\377\201\201\201\377\12\12\12\377PPN\377\315\315\272\377" + "\356\356\323\377\347\347\301\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\252\252\216\377\0\0\0\377\1" + "\1\1\376\0\0\0\377\0\0\0\341\0\0\0""2\377\377\377\0\377\377\377\0\377" + "\377\377\10\377\377\3775\377\377\377Z\377\377\377\200\377\377\377\274" + "999\377\17\17\14\377\332\332\265\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\320\320\255\377\15\15" + "\13\377999\377\375\375\375\377\313\313\313\377\0\0\0\377\1\1\1\377\263" + "\263\263\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\334\334\334\377%%%\377\6\6\5\377\232\232\200" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377eeT\377\0\0\0\377\0\0\0\376\0\0\0\377\0\0" + "\0\326\0\0\0""4\377\377\377\0\377\377\377\0\376\376\376|\377\377\377" + "\377\377\377\377\377\357\357\357\377\305\305\305\375nnn\377\0\0\0\377" + "uua\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377JJ=\377\4\4\4\377\324\324\324\377\377\377\377\377\343" + "\343\343\377\0\0\0\377\0\0\0\377\226\226\226\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\354\354\354\377777\377\4\4\4\377\262\262\224\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\300" + "\300\240\377**#\377\0\0\0\377\0\0\0\377\13\13\13\341\0\0\0(\377\377\377" + "\0\377\377\377\0\377\377\377f\264\264\264\377\24\24\23\377\0\0\0\377" + "\0\0\0\377\0\0\0\377\1\1\1\377\227\227~\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\236\236\203\377\0\0\0\377zzz\377" + "\377\377\377\377\377\377\377\377\374\374\374\377\16\16\16\377\0\0\0\377" + "aaa\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\355\355\355\377\37\37" + "\37\377\27\27\24\377\322\322\256\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\346\346\277\377\20\20\16" + "\377\0\0\0\377\0\0\0\377\0\0\0{\377\377\377\0\377\377\377\0\377\377\377" + "\0PPP\261\0\0\0\377\30\30\24\377\232\232\200\377\275\275\235\377\337" + "\337\271\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377JJ=\377\26\26\26\377\367\367\367\377\377\377" + "\377\377\377\377\377\377\377\377\377\377TTT\377\0\0\0\377,,,\377\365" + "\365\365\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\315\315\315" + "\377\6\6\6\377LL\77\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\274\274\234\377\0\0\0\377\0\0\0\377\0\0" + "\0\377\0\0\0\377\0\0\0W\377\377\377\0\377\377\377\0\0\0\0\1\37\37\37" + "\325\0\0\0\377ZZK\377\345\345\276\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\35\35" + "\30\377NNN\377\377\377\377\377\377\377\377\377\377\377\377\377\376\376" + "\376\377b``\377\0\0\0\377\1\1\1\377\250\250\250\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377zzz\377\0\0\0\377\264\264\225" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377AA6\377" + "\0\0\0\377\0\0\0\377\5\5\5\377\0\0\0\376\0\0\0W\377\377\377\0\377\377" + "\377\0\377\377\377$\377\377\377\247BBB\377\0\0\0\377TTF\377\345\345\276" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\327\327\263\377\0\0\0\377~~~\377\377\377\377\377\377\377\377\377\376" + "\376\376\377e``\377\32\6\6\377\5\1\1\377\0\0\0\377\32\32\32\377\364\364" + "\364\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\361\361\361\377" + "\24\24\24\377::0\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\216" + "\216v\377\0\0\0\377\0\0\0\377\11\11\11\377\0\0\0\376\0\0\0c\377\377\377" + "\0\377\377\377\0\377\377\377\0\376\376\376y\375\375\375\377\241\241\241" + "\377\5\5\4\377\4\4\3\377\342\342\274\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\252\252\215\377\0\0\0\377\255\255" + "\255\377\377\377\377\377\375\375\375\377b\\\\\377%\11\11\377\34477\377" + "\247CC\377\6\3\3\377\0\0\0\377\\\\\\\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377}}}\377\0\0\0\377\320\320\255\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\321\321\255\377\16\16\14\377\0\0\0\377\0\0\0\377\0\0\0\376\0" + "\0\0`\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377$\201\201\201\315\0\0\0\377\12\12\10\377\224\224{\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\201\201k\377\0\0\0\377\331\331\331\377\375\375\375\377^XX\377'\12\12" + "\377\346::\377\377ii\377\377\222\222\377\252}}\377\6\5\5\377\2\2\2\377" + "\256\256\256\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\314\314" + "\314\377\0\0\0\377\215\215u\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\341\341\273\377EE9\377\0\0\0\377\7\7\6\377\0" + "\0\0\377\0\0\0\377\0\0\0\243\0\0\0\17\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\213\213\213\202\21\21\21\377\0\0\0\37744+\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\227\227}\377\0\0\0\377\277\277\277\377[UU\377*\14\14\377" + "\350==\377\377ll\377\377\225\225\377\377\276\276\377\377\346\346\377" + "\255\241\241\377\6\5\5\377\1\1\1\377~~~\377\375\375\375\377\377\377\377" + "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\376\376\376\377\32\32\32\377KK>\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\300\300\240\377++$\377\0\0\0\377\0\0\0\377\11\11\7\377" + "\0\0\0\377\2\2\1\377\0\0\0\377\0\0\0X\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377b\376\376\376\376\254\254\254\376\2\2\2\377\14" + "\14\12\377\344\344\276\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\303\303\242\377\0\0\0\3774..\377,\13\13\377\352" + "AA\377\377oo\377\377\230\230\377\377\301\301\377\377\352\352\377\377" + "\353\353\377\377\302\302\377\260jj\377\6\3\3\377\0\0\0\377333\377\342" + "\342\342\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\377@@@\37700(\377\347\347\300\377\347\347\300\377" + "\206\206o\377\10\10\6\377\0\0\0\377\2\2\2\37799/\377\2\2\1\377\0\0\0" + "\377\0\0\0\377\0\0\0\264\0\0\0\40\377\377\377\0\377\377\377\0\377\377" + "\377a\376\376\376\376\320\320\320\376\25\25\25\377\15\15\13\377\267\267" + "\230\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\341\341\273\377\12\3\2\377*\10\10\377\354DD\377" + "\377rr\377\377\233\233\377\377\304\304\377\377\355\355\377\377\350\350" + "\377\377\277\277\377\377\226\226\377\377mm\377\26411\377\6\1\1\377\0" + "\0\0\377\12\12\12\377iii\377\301\301\301\377\360\360\360\377\377\377" + "\377\377\377\377\377\377NNN\377\36\36\32\377\206\206p\37722*\377\0\0" + "\0\377\0\0\0\377\22\22\17\377]]M\377\216\216v\377\233\233\201\377\6\6" + "\5\377\3\3\3\377VVVp\377\377\377\0\377\377\377\0\377\377\377\0\376\376" + "\376\177\324\324\324\377\30\30\30\377\17\17\15\377\271\271\232\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\342\342\274\377JC7\377*\7\7\377\355HH\377\377uu\377\377\236" + "\236\377\377\307\307\377\377\360\360\377\377\345\345\377\377\274\274" + "\377\377\223\223\377\377jj\377\377BB\377\377\32\32\377\245\11\11\377" + "\2\0\0\377\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\377\12\12\12\377\26\26" + "\26\377\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\37711(\377qq]\377" + "\260\260\222\377\346\346\277\377\347\347\300\377\254\254\217\377\10\10" + "\7\377\2\2\2\376\0\0\0Q\377\377\377\0\377\377\377\0\377\377\377\13//" + "/\236\0\0\0\377\13\13\11\37744+\377UUG\377uua\377\321\321\256\377\347" + "\347\300\377\341\341\273\377G@5\3773\16\15\377\357KK\377\377xx\377\377" + "\241\241\377\377\312\312\377\377\363\363\377\377\342\342\377\377\271" + "\271\377\377\220\220\377\377gg\377\377\77\77\377\377\27\27\377\354\20" + "\20\377-\15\15\377$\37\37\377%%%\377\40\40\40\377\2\2\2\377\0\0\0\377" + "\0\0\0\377\0\0\0\377\0\0\0\377\0\0\0\377\17\17\15\37744+\377\\\\L\377" + "\207\207p\377\321\321\255\377\305\305\243\377iiW\377GG;\377$$\36\377" + "\3\3\2\377\0\0\0\377\0\0\0\371\0\0\0>\377\377\377\0\377\377\377\0\0\0" + "\0\33\0\0\0\260\0\0\0\377\1\1\1\377\3\3\2\377\0\0\0\377eeT\377\340\340" + "\272\377D<2\3776\17\16\377\360NN\377\377{{\377\377\244\244\377\377\315" + "\315\377\377\366\366\377\377\337\337\377\377\266\266\377\377\215\215" + "\377\377dd\377\377<<\377\377\24\24\377\353\22\22\377+\15\15\3773..\377" + "jjj\377\262\262\262\377\323\323\323\377\242\242\242\377ttt\377___\377" + "(((\377\0\0\0\377KK\77\377\177\177j\377\241\241\206\377\306\306\244\377" + "\344\344\275\377\347\347\300\377MM@\377\0\0\0\377\12\12\11\377\11\11" + "\11\376\2\2\2\376\0\0\0\377\0\0\0\377\0\0\0f\377\377\377\0\377\377\377" + "\0\377\377\377\0\0\0\0\15@@@u\204\204\204\376000\377\0\0\0\377\232\232" + "\200\377A90\3778\17\16\377\362RR\377\377~~\377\377\247\247\377\377\320" + "\320\377\377\371\371\377\377\334\334\377\377\263\263\377\377\212\212" + "\377\377aa\377\37799\377\377\20\20\377\352\25\25\377)\15\15\3774//\377" + "jjj\377\272\272\272\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\310\310\310\377\1\1\1\377OOB\377\345\345\276\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\216\216v\377\0\0\0\377\0\0\0\377\0\0\0\303\0\0\0\224\0\0\0o" + "\0\0\0I\0\0\0\13\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\376\376\376\262\360\360\360\375\20\20\20\377//&\377\77""7-\377;\20" + "\17\377\363UU\377\377\201\201\377\377\252\252\377\377\323\323\377\377" + "\374\374\377\377\331\331\377\377\260\260\377\377\207\207\377\377__\377" + "\37766\377\377\15\15\377\350\30\30\377'\16\16\377511\377kkk\377\276\276" + "\276\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\335\335\335\377(((\377\20\20\16\377\323\323\260\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\344\344\276\377\"\"\35\377\2\2\2\377\0\0\0\202\377\377" + "\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377\0\377\377\3779\377\377\377\377sss\377\0\0\0\377.&" + "\40\377>\21\20\377\364XX\377\377\204\204\377\377\255\255\377\377\326" + "\326\377\377\377\377\377\377\326\326\377\377\255\255\377\377\204\204" + "\377\377\\\\\377\37733\377\377\12\12\377\347\32\32\377&\16\16\377733" + "\377jjj\377\303\303\303\377\377\377\377\377\377\377\377\377\377\377\377" + "\377\377\377\377\377\245\245\245\377\15\15\15\377\13\13\11\377\241\241" + "\206\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\231\231\177\377\0\0\0\377\1\1\1\371\0\0\0\24\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\376\376\376" + "\300\351\351\351\374\12\12\12\377\24\14\12\377A\22\21\377\365[[\377\377" + "\207\207\377\377\260\260\377\377\331\331\377\377\373\373\377\377\323" + "\323\377\377\252\252\377\377\201\201\377\377XX\377\37700\377\377\7\7" + "\377\345\35\35\377\"\14\14\377522\377lll\377\306\306\306\377\377\377" + "\377\377\377\377\377\377\373\373\373\377\317\317\317\377^^^\377\0\0\0" + "\377--&\377\305\305\244\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\346\346\277\377,,%\377\2\2\2\377\0\0" + "\0\221\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377E\377\377\377\377fff\377\10\0\0\377B\22\21\377\366" + "__\377\377\212\212\377\377\263\263\377\377\334\334\377\377\370\370\377" + "\377\320\320\377\377\247\247\377\377~~\377\377UU\377\377--\377\377\4" + "\4\377\344\37\37\377\35\11\11\377\6\3\3\377\0\0\0\377!!!\377ccc\377s" + "ss\377<<<\377\11\11\11\377\0\0\0\377\0\0\0\377ggU\377\341\341\273\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\326\326\262\377\345\345\276\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\245\245\211\377\0\0\0\377\0" + "\0\0\374\0\0\0\34\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\376\376\376\237\331\331\331\377\12\2\2\377B\20\20\377\370bb\377\377" + "\215\215\377\377\266\266\377\377\337\337\377\377\365\365\377\377\315" + "\315\377\377\244\244\377\377{{\377\377RR\377\377**\377\377\1\1\377\342" + "\"\"\377\37\14\13\3771/'\377DD8\377XXI\377;;1\377\13\13\12\377\3\3\3" + "\377++$\377]]M\377\216\216v\377\303\303\242\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\261\261\223\377\6\6\5\377\10\10\7\377..&\377VVH\377~~i\377\246\246" + "\212\377\315\315\252\37755,\377\2\2\2\377\0\0\0\240\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\242\242\242)\24\14\14\365E\21" + "\21\377\371ff\377\377\220\220\377\377\271\271\377\377\342\342\377\377" + "\362\362\377\377\312\312\377\377\241\241\377\377xx\377\377OO\377\377" + "''\377\377\0\0\377\341$$\377\36\14\13\37752*\377ccS\377\275\275\235\377" + "\347\347\300\377\347\347\300\377\345\345\276\377\337\337\271\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\232\232\200\377\0\0\0\377\0\0\0\377\1\1\1\377\3" + "\3\2\377\0\0\0\377\0\0\0\377\0\0\0\377\1\1\1\377\0\0\0\377\0\0\0\375" + "\0\0\0%\377\377\377\0\377\377\377\0\0\0\0\21\13\1\1\324I\23\23\372\371" + "hh\377\377\224\224\377\377\274\274\377\377\345\345\377\377\357\357\377" + "\377\307\307\377\377\236\236\377\377uu\377\377LL\377\377$$\377\377\3" + "\3\377\337&&\377\34\14\13\37763+\377eeT\377\300\300\237\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\302\302\241\377\0\0\0\377\0\0\0\377\0\0\0\244" + "\0\0\0\223\0\0\0\304\1\1\1\362\0\0\0\377\0\0\0\377\1\1\1\377\0\0\0\377" + "\0\0\0\210\377\377\377\0\377\377\377\0\15\1\1\307M\25\25\371\372ll\377" + "\377\227\227\377\377\277\277\377\377\350\350\377\377\354\354\377\377" + "\303\303\377\377\233\233\377\377rr\377\377II\377\377!!\377\377\6\6\377" + "\336))\377\32\14\13\37764,\377ffU\377\302\302\241\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347" + "\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\343\343\275\377\4\4\4\377\0\0\0" + "\377\0\0\0\200\377\377\377\0\377\377\377\0\377\377\377\0\0\0\0\25\0\0" + "\0@\0\0\0l\0\0\0\224\0\0\0\26\377\377\377\0\377\377\377\0\16\3\3\331" + "\247JJ\377\377\232\232\377\377\302\302\377\377\353\353\377\377\351\351" + "\377\377\300\300\377\377\230\230\377\377oo\377\377FF\377\377\36\36\377" + "\377\11\11\377\334++\377\31\14\13\37786-\377hhV\377\273\273\233\377\221" + "\221x\377\331\331\264\377\347\347\300\377\347\347\300\377\347\347\300" + "\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\323\323\257\377\223\223z\377\340\340" + "\272\377\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300" + "\377((!\377\3\3\3\376\0\0\0\253\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\3\1\1\244d>>\375\377\305\305\377\377\356" + "\356\377\377\346\346\377\377\275\275\377\377\225\225\377\377ll\377\377" + "CC\377\377\33\33\377\377\14\14\377\332--\377\27\13\12\37797.\377ffU\377" + "nn[\377\21\21\16\377\0\0\0\377HH<\377\347\347\300\377\347\347\300\377" + "\347\347\300\377\347\347\300\377\347\347\300\377\347\347\300\377\347" + "\347\300\377\347\347\300\377\347\347\300\37722)\377\0\0\0\377\27\27\23" + "\377\214\214t\377\343\343\275\377\347\347\300\377\347\347\300\377QQC" + "\377\7\7\6\377\1\1\1\330\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\0\0\0j$\34\34\372\377\361\361\377\377\343\343" + "\377\377\272\272\377\377\222\222\377\377ii\377\377@@\377\377\30\30\377" + "\377\17\17\377\330//\377\24\11\11\37787.\377AA6\377\24\24\21\377\0\0" + "\0\377\23\23\23\377\1\1\1\377##\35\377\347\347\300\377\342\342\273\377" + "MM@\377DD9\377\317\317\254\37777.\377[[L\377\345\345\276\377\347\347" + "\300\377\17\17\15\377\12\12\12\377\2\2\2\377\0\0\0\377\37\37\32\377\230" + "\230~\377\346\346\277\377xxd\377\0\0\0\377\0\0\0\374\0\0\0\6\377\377" + "\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377\0\377\377\377\0\377\377\377\0\0\0\0(\3\3\3\375\333" + "\300\300\377\377\267\267\377\377\217\217\377\377ff\377\377==\377\377" + "\25\25\377\377\22\22\377\32722\377\20\6\6\377\34\32\26\377\17\17\14\377" + "\0\0\0\377\22\22\22\377\6\6\6\376\0\0\0\377&&&\377\4\4\4\377\340\340" + "\272\377FF:\377\0\0\0\377\0\0\0\377$$\36\377\0\0\0\377\0\0\0\377YYJ\377" + "\324\324\260\377\0\0\0\377\11\11\11\375\0\0\0\301\0\0\0\276\3\3\2\377" + "\0\0\0\377**#\377bbQ\377\0\0\0\377\0\0\0\377\0\0\0-\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\5\5\5\3062##\373" + "\347~~\377\377cc\377\377::\377\377\22\22\377\377\25\25\377\32544\377" + "\21\7\7\376\2\1\1\377\0\0\0\377\10\10\10\377\10\10\10\375\0\0\0\377\0" + "\0\0\272\207\207\207m\227\227\227\377\0\0\0\37777.\377\0\0\0\377\31\31" + "\31\376\1\1\1\377\0\0\0\377\4\4\4\377\0\0\0\377\0\0\0\37777.\377\0\0" + "\0\377\0\0\0\377\0\0\0\210\377\377\377\0\0\0\0,\0\0\0\313\3\3\2\377\0" + "\0\0\377\0\0\0\377\0\0\0\377\0\0\0X\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377\0\377\377\377\0\0\0\0""1\10\4\4\333\12\4\4\374\\\24" + "\24\373\230\11\11\377\323\25\25\377\32155\377\16\6\6\372\2\1\1\314\1" + "\1\0\361\0\0\0\377\0\0\0\377\1\1\1\312\0\0\0A\377\377\377\0\377\377\377" + "\11\204\204\204\213\0\0\0\377\0\0\0\377\16\16\16\377\0\0\0\376\0\0\0" + "\210\3\3\2\333\0\0\0\377\0\0\0\257\36\36\36\317\0\0\0\377\0\0\0\377\0" + "\0\0\377\0\0\0b\377\377\377\0\377\377\377\0\377\377\377\0\0\0\0""9\0" + "\0\0\330\3\3\3\377\0\0\0\377\0\0\0\203\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377" + "\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\0\0\0;\0\0\0\247" + "\1\0\0\302\14\1\1\335\6\2\2\371\0\0\0\377\2\1\1\277\0\0\0\201\0\0\0/" + "\1\1\1\245\0\0\0P\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\0\0\0\22\5\5\5\266\0\0\0\377\0\0\0\377\0\0\0n\377\377\377\0\0\0\0" + "\40\0\0\0y\0\0\0'\377\377\377\0\0\0\0\270\5\5\4\377\0\0\0\377\0\0\0=" + "\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\0\0\0A\0\0\0\237\0\0\0\34\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\0\0\0\30\0" + "\0\0J\0\0\0v\0\0\0\217\0\0\0\235\0\0\0~\0\0\0\25\377\377\377\0\377\377" + "\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377" + "\377\0\377\377\377\0\0\0\0\6\2\2\2z\0\0\0k\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\0\0\0a\2\2\2\177\0\0\0\13\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\0\0\0\5\0\0\0\30\0\0\0\17\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377" + "\0"}; @@ -5,83 +5,8 @@ #include <libxfce4util/libxfce4util.h> #include <libxfcegui4/libxfcegui4.h> -#define APPFINDER_ALL 0 -#define APPFINDER_HISTORY 1 - -enum -{ - APP_ICON = 0, - APP_TEXT, - APP_COLS -}; - -enum -{ - CAT_TEXT = 0, - CAT_COLS -}; - -const char *entriespaths [] = { - "/usr/share/applications/", - "/usr/share/applications/kde/", - "/usr/local/share/applications/", - "/usr/local/share/applications/kde/", - "/opt/kde/share/applications/kde/", - "/usr/X11R6/share/", - "/opt/gnome/share/applications/", - "/opt/gnome2/share/applications/", - NULL -}; - -const char *iconspaths [] = { - "/usr/share/pixmaps/", - "/usr/share/icons/default.kde/32x32/apps/", - "/usr/share/icons/default.kde/32x32/devices/", - "/usr/share/icons/default.kde/32x32/actions/", - "/usr/share/icons/default.kde/32x32/mimetypes/", - "/usr/share/icons/default.kde/32x32/filesystems/", - "/opt/kde/share/icons/default.kde/32x32/apps/", - "/opt/kde/share/icons/default.kde/32x32/devices/", - "/opt/kde/share/icons/default.kde/32x32/actions/", - "/opt/kde/share/icons/default.kde/32x32/mimetypes/", - "/opt/kde/share/icons/default.kde/32x32/filesystems/", - NULL -}; - -const char *keys [] = { - "Name", - "Comment", - "Icon", - "Categories", - "OnlyShowIn", - "Exec", - "Terminal", - NULL -}; - -const char *categories [] = { - "All", - "Recently Used", - "Core", - "Development", - "Office", - "Graphics", - "Network", - "AudioVideo", - "Game", - "Education", - "System", - "Filemanager", - "Utility", - NULL -}; - -GtkTargetEntry gte[] = {{"DESKTOP_PATH_ENTRY", 0, 0}, - {"text/plain", 0, 1}, - {"application/x-desktop", 0, 2}, - {"STRING", 0, 3}, - {"UTF8_STRING", 0, 4} -}; +#include "af-constants.h" +#include "inline-icon.h" typedef struct { GtkWidget *mainwindow; @@ -186,16 +111,11 @@ cb_searchentry (GtkEntry *entry, t_appfinder *af = userdata; gchar *text = g_utf8_strdown(gtk_entry_get_text(entry), -1); gtk_list_store_clear (GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(af->appstree)))); - gtk_widget_hide(af->appstree); - gtk_widget_destroy (af->appstree); - af->appstree = create_apps_treeview(text); - g_signal_connect(af->appstree, "row-activated", (GCallback) cb_appstree, NULL); - gtk_widget_show(af->appstree); - gtk_scrolled_window_add_with_viewport - (GTK_SCROLLED_WINDOW(af->appscroll), af->appstree); + gtk_tree_view_set_model (GTK_TREE_VIEW(af->appstree), GTK_TREE_MODEL(fetch_desktop_resources(showedcat, text))); gtk_tree_selection_unselect_all - (gtk_tree_view_get_selection(GTK_TREE_VIEW(af->categoriestree))); - g_free(text); + (gtk_tree_view_get_selection(GTK_TREE_VIEW(af->categoriestree))); + if (text) + g_free(text); } @@ -363,12 +283,7 @@ cb_categoriestree (GtkTreeSelection *selection, return TRUE; showedcat = next; gtk_list_store_clear (GTK_LIST_STORE(gtk_tree_view_get_model (GTK_TREE_VIEW(af->appstree)))); - gtk_widget_hide(af->appstree); - gtk_widget_destroy (af->appstree); - af->appstree = create_apps_treeview(NULL); - g_signal_connect(af->appstree, "row-activated", (GCallback) cb_appstree, NULL); - gtk_widget_show(af->appstree); - gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(af->appscroll), af->appstree); + gtk_tree_view_set_model (GTK_TREE_VIEW(af->appstree), GTK_TREE_MODEL(fetch_desktop_resources(showedcat, NULL))); return TRUE; /* allow selection state to change */ } @@ -384,9 +299,10 @@ t_appfinder *create_interface(void) showedcat = APPFINDER_ALL; af->mainwindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); - g_signal_connect(af->mainwindow, "delete_event", gtk_main_quit, NULL); + g_signal_connect(af->mainwindow, "delete_event", gtk_main_quit, NULL); gtk_window_set_title(GTK_WINDOW(af->mainwindow), "Xfce4 Appfinder"); - + gtk_window_set_icon(GTK_WINDOW(af->mainwindow),inline_icon_at_size (default_icon_data_48_48, 48, 48)); + af->hpaned = GTK_WIDGET(gtk_hpaned_new ()); gtk_container_add(GTK_CONTAINER(af->mainwindow), af->hpaned); af->categoriestree = create_categories_treeview(); @@ -690,11 +606,14 @@ GtkListStore *fetch_desktop_resources (gint category, gchar *pattern) { if (pattern != NULL) { + if (!xfce_desktop_entry_get_string (dentry, "Comment", FALSE, &comment)) - comment = ""; + comment = NULL; - if (!(g_pattern_match_string (ptrn, g_utf8_strdown(name, -1)) || - g_pattern_match_string (ptrn, g_utf8_strdown(comment, -1)))) + if (!g_pattern_match_string (ptrn, g_utf8_strdown(name, -1)) || + (comment != NULL ? + !g_pattern_match_string (ptrn, g_utf8_strdown(comment, -1)) : + FALSE)) { if (name) g_free(name); @@ -824,7 +743,7 @@ void saveHistory(gchar *path) { gint i = 0; FILE *f; /* We must check if it is already in the history before inserting it ;-) */ - if (history != NULL) { + if (history) { while(history[i] != NULL) { if (strcmp(path, history[i])==0) { return; @@ -836,7 +755,7 @@ void saveHistory(gchar *path) { f = fopen(configfile, "w"); fprintf(f, "%s\n", path); i = 0; - if (history != NULL) { + if (history) { while (history[i] != NULL && i-1<10) { fprintf(f, "%s\n", history[i]); i++; diff --git a/src/xfce4-appfinder.png b/src/xfce4-appfinder.png Binary files differindex 7b3286a..ac2706c 100644 --- a/src/xfce4-appfinder.png +++ b/src/xfce4-appfinder.png |