mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-27 11:52:25 +00:00
65e5f1e6dc
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15970 a592a061-630c-0410-9148-cb99ea01b6c8
416 lines
20 KiB
Plaintext
416 lines
20 KiB
Plaintext
Debugging spree:
|
|
----------------
|
|
|
|
Rules:
|
|
1. Bugs that aim for 1.5.0 should be listed here.
|
|
2. Whoever fixes a bug sign his name before the bug and move it to the end of
|
|
this file, along with a lyx-devel announcement.
|
|
|
|
Prizes (donated by Michael):
|
|
|
|
#1: LyX-labeled Tick Tock Wall Clock
|
|
#2: LyX-labeled Coffee and Tea Mug
|
|
#3: LyX-labeled Mousepad
|
|
|
|
|
|
PENDING FEATURES:
|
|
-----------------
|
|
|
|
|
|
BUGS:
|
|
-----
|
|
|
|
FILE
|
|
|
|
* When I "Save as..." in /tmp, I get a Backup error popup about non writable
|
|
/tmp, which is obviously not true. The file is there, and if I try to Save
|
|
as again, I get the overwrite popup warning twice: once in English, once
|
|
in French. (J. P. Chretien)
|
|
|
|
* Loading de_Userguide.lyx results in two parse errors:
|
|
Paragraph ended in line 21206
|
|
Missing \end_layout.
|
|
Paragraph ended in line 21301
|
|
Missing \end_layout.
|
|
I don't know if that is a lyx2lyx or LyX problem. LyX 1.4 can read the file.
|
|
|
|
|
|
SPELL CHECKING (Joost 4/11/06)
|
|
|
|
* Spell checking cannot be invoked a second time.
|
|
|
|
* The first time the spell checker is started, an empty window shown instead
|
|
of the first misspelled word.
|
|
|
|
* Words with umlauts or accents do not arrive as a whole word in the spell
|
|
checker.
|
|
|
|
|
|
BIBLIOGRAPHY
|
|
|
|
|
|
TABLE OF CONTENTS
|
|
|
|
* In TOC, the buttons "Up", "Down", "Promote", and "Demote" are not
|
|
self-explaining. Why don't we group them in two pairs: Section Up/Down, Level
|
|
Up/Down? The arrangement of the buttons may also give some hint to the user.
|
|
|
|
* The items in the treeview are editable
|
|
|
|
* When content (sections/captions) is changed, the toc/lof/lot is not properly
|
|
updated.
|
|
Abdel 2006-11-17: This one is not as simple as it seems as it involves a
|
|
TocBackend update at each keystroke. Unless we manage to update a specific
|
|
TocItem, this will be a WONTFIX for 1.5.0.
|
|
|
|
DIALOGS
|
|
|
|
* when opening an already opened document (or a document with newer backup),
|
|
the mouse pointer turns into a clock, although it waits for confirmation
|
|
|
|
* If you try to view a document as postscript that cannot be typeset because
|
|
of LaTeX errors and export to LaTeX afterwards you will get the old error
|
|
list again, although the export succeded.
|
|
|
|
|
|
MATH CONTROL PANEL
|
|
|
|
* In the math control panel, "Detach panel" is broken (only 1 button is
|
|
visible in the detached panel).
|
|
|
|
* In the math control panel, switching between different "functions" is broken
|
|
(retry a couple of times).
|
|
|
|
* In the math control panel, there is no icon for "Set Math Font".
|
|
|
|
* In the math control panel, the buttons are too small.
|
|
The reason is probably that qt resizes the icons so that they fit into the
|
|
button, leaving some margin. This leads to different scales for each icon.
|
|
qt3 did not resize the icons. Can this be set in qt4, too?
|
|
|
|
|
|
OTHER PANELS
|
|
|
|
* The visual table size selection on the the "Insert Table" dialog is gone
|
|
(Joost 3/11/06).
|
|
|
|
* The UI for bullet selection in the documents settings looks weird
|
|
(Joost 4/11/06):
|
|
There is a big listbox just to select one of the four levels.
|
|
Isn't this supposed to be a drop-down list or something like that?
|
|
|
|
* The bullet selection widget shows the bullets in 5 columns (instead of 6)
|
|
for me, and hence does not fit into the window.
|
|
(JSpitzm 2006-11-06)
|
|
|
|
|
|
MULTIPLE WINDOWS / DOCUMENTS
|
|
|
|
* There are cursor problems when the same document is opened in two windows
|
|
(Joost 4/11/06).
|
|
|
|
Information from Abdel:
|
|
Yes, this is the famous dEPM bug (delete Empty Paragraph Mechanism).
|
|
There are two ways to fix that:
|
|
1) the correct way: fix the dEPM to not invalidate the cursor.
|
|
2) the easy way: disable the cursor on focus out event and re-enable it at
|
|
focus in event and jump the saved position (at focus out).
|
|
|
|
* There should be a close button on the tabs (Joost 3/11/06).
|
|
There is now a Qt feature request:
|
|
http://www.trolltech.com/developer/task-tracker/index_html?id=137891&method=entry
|
|
|
|
|
|
TOOLBARS & MINIBUFFER
|
|
|
|
* When toolbars are hidden, they pop up again after clicking on the document
|
|
area (Joost 4/11/06).
|
|
|
|
* Icons in the toolbars do not have the correct size, they are stretched a few
|
|
pixels compared to 1.4. This makes the images look jagged and the initial
|
|
window size has also become to small to show the whole toolbar
|
|
(Joost 4/11/06). See also the math panel buttons entry above.
|
|
|
|
* TODO toolbar popup menu, currently disabled (Peter 9/11/06)
|
|
|
|
* Command completion in the minibuffer shows a huge blank area below the proposed
|
|
commands. Clicking in that empty area crashes LyX.
|
|
|
|
|
|
EDITING
|
|
|
|
* edit->text style->capitalize/lower/upper case doesn't work due to the change
|
|
tracking-related changes.
|
|
|
|
* Copy/paste using middle mouse button inserts musical notes.
|
|
|
|
|
|
MENUS
|
|
|
|
|
|
LAYOUT
|
|
|
|
* environments when using czech translation doesnt work: e.g.
|
|
itemize("Polozka") -> ERROR (layoutSelected): layout not found! (P. Sanda)
|
|
|
|
|
|
PAINTING & PERFORMANCE
|
|
|
|
* Selection highlighting is broken. Test case: two paragraphs with "Hello"
|
|
and "World"; move cursor past "Wor", press Shift+Up
|
|
|
|
* Too much painting 1 (Edwin 3/11/2006): when i click in the workarea (to put
|
|
the cursor in another part of the text) the screen is repainted *twice*
|
|
whereas it seems to me that no repainting is necessary at all.
|
|
|
|
* Too much painting 2 (Edwin 3/11/2006): There is also a lot of painting going
|
|
on when selecting text. When selecting a word the whole screen is repainted.
|
|
|
|
* Too much painting 3 (Edwin 3/11/2006): the screen is repainted even when the
|
|
selection does not change (moving the mouse with the left button pushed down
|
|
always triggers a repaint).
|
|
|
|
* The cursor is not L-shaped for foreign languages
|
|
|
|
* Slowness on MAC 1 (Bennett 3/11/06):
|
|
There seems to be a fraction of a second lag between when I press a key and
|
|
when the letter appears on screen -- but the time lag doesn't obviously vary
|
|
with the amount of text on the screen (as was the case previously). Right now,
|
|
the speed of normal text entry makes LyX-1.5 usable on my
|
|
not-fast-but-still-not-outdated computer. (Not sure how it would be on my
|
|
slow-but-still-usable laptop.)
|
|
|
|
* Slowness on MAC 2 (Bennett 3/11/06):
|
|
Speed is still an issue typing in insets: noticeable lag between typing and
|
|
text appearing on screen. This does not seem to be compounded by having nested
|
|
insets, and it seems to be compounded only a little by the amount of text in
|
|
the inset. (This is especially a problem in math environments.)
|
|
|
|
* Slowness on MAC 3 (Bennett 3/11/06): Some operations that with 1.4 are
|
|
pretty much instantaneous (inserting a footnote, dragging the mouse, switching
|
|
to LyX from another application, opening dialogs, etc.) take quite a long time
|
|
to complete in 1.5.
|
|
|
|
* Some math symbols are not displayed (from Enrico Forestieri)
|
|
I noticed that some math symbols are not shown on screen. This seems
|
|
to be platform dependent. The following is a table illustrating the
|
|
situation on three different platforms. Here "no" means that the
|
|
symbol is not shown on screen (the symbol is invisible but occupies
|
|
space: it is as a sort of \phantom), and "yes" that it is shown.
|
|
---------------------------------------
|
|
Symbol Linux Solaris Cygwin
|
|
---------------------------------------
|
|
\Omega no no no
|
|
\int yes yes no
|
|
\oint yes yes no
|
|
\otimes no no no
|
|
\nleqslant no no no
|
|
\spadesuit(*) yes no yes
|
|
---------------------------------------
|
|
(*) On solaris, a square is shown on screen instead of nothing.
|
|
Further comments from Georg: This is probably a qt4 font drawing problem,
|
|
since \Omega works fine in 1.4.3, and my debugging results showed that the
|
|
correct font is found and used (cmr10).
|
|
|
|
|
|
BUILDING
|
|
|
|
* It is ridiculous that you have to call configure with --with-frontend=qt4.
|
|
The existance of config/qt.m4 does not make much sense either.
|
|
|
|
|
|
MAC OS X
|
|
|
|
* Drawing oddities on MAC (Bennett 3/11/06):
|
|
Lines occasionally overlapping vertically, math characters not properly
|
|
aligned vertically.
|
|
|
|
* Many issues with toolbars on MAC (Bennett 3/11/06):
|
|
Most obvious of which are that icons are spaced too widely and that changes in
|
|
the visibility of the toolbars with the GUI do not stick after the screen is
|
|
redrawn).
|
|
|
|
* Many issue with dialogs on MAC (Bennett 3/11/06):
|
|
Most obviously: the Preferences dialog -- which can only be accessed now via
|
|
keyboard command, not from the menu -- appears initially too small and must be
|
|
resized; not possible to select buttons with the keyboard).
|
|
|
|
The prefs dialog size should be better now. See below (JSpitzm-2006-11-07).
|
|
|
|
* Some oddities with View menu on MAC (Bennett 3/11/06): DVI does not appear
|
|
in the menu, even though a converter and viewer are defined in Preferences.
|
|
|
|
* Menu bar disappears on MAC (instead of being disabled) when dialogs appear.
|
|
|
|
* Mac Crash (Bennett 3/11/06):
|
|
On launch from GUI (by double-clicking on the LyX icon). As I reported before,
|
|
this happens only when using the GUI; I can successfully start LyX from the
|
|
Terminal, with or without gdb. Hence the only debug information I get is this,
|
|
printed out in Console.app when I try launching from the GUI (note that the
|
|
number changes everytime):
|
|
|
|
Wrong command line option `-psn_0_182321153'. Exiting.
|
|
|
|
Hint from Andreas Vox: LyX must accept any option starting with '-psn' and
|
|
pass it oon to the Qt initialisation. On Mac this gives the app a link to the
|
|
Window system.
|
|
|
|
* Mac Crash On quit (Bennett).
|
|
Here's the backtrace:
|
|
#0 std::string::compare (this=0x65646f75, __str=@0xdab7edc) at /opt/local/var/db/dports/build/_opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_lang_gcc42/work/build/powerpc-apple-darwin8.8.0/libstdc++-v3/include/bits/basic_string.h:595
|
|
#1 0x006052ec in std::operator< <char, std::char_traits<char>, std::allocator<char> > (__lhs=@0xda5da00, __rhs=@0xbffff0d8) at /opt/local/include/gcc42/c++/bits/stl_pair.h:2217
|
|
#2 0x0070421c in std::_Rb_tree<std::string, std::pair<std::string const, boost::shared_ptr<lyx::graphics::CacheItem> >, std::_Select1st<std::pair<std::string const, boost::shared_ptr<lyx::graphics::CacheItem> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<lyx::graphics::CacheItem> > > >::find (this=0x11e8eb70, __k=@0xbffff0d8) at /opt/local/include/gcc42/c++/bits/stl_tree.h:1376
|
|
#3 0x007042c0 in std::map<std::string, boost::shared_ptr<lyx::graphics::CacheItem>, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<lyx::graphics::CacheItem> > > >::find (this=0x11e8eb70, __x=@0xbffff0d8) at /opt/local/include/gcc42/c++/bits/stl_map.h:541
|
|
#4 0x002857d8 in lyx::graphics::Cache::remove (this=0xb8e248, file=@0xbffff0d8) at GraphicsCache.C:90
|
|
#5 0x00286744 in lyx::graphics::Loader::Impl::resetFile (this=0x11e1f670, file=@0xbffff178) at GraphicsLoader.C:223
|
|
#6 0x00286950 in lyx::graphics::Loader::Impl::~Impl (this=0x11e1f670) at GraphicsLoader.C:204
|
|
#7 0x00706188 in boost::checked_delete<lyx::graphics::Loader::Impl> (x=0x11e1f670) at ../../boost/boost/checked_delete.hpp:34
|
|
#8 0x0014c01c in lyx::graphics::PreviewImage::Impl::~Impl (this=0x140606c0) at PreviewImage.C:121
|
|
#9 0x006b1f80 in boost::checked_delete<lyx::graphics::PreviewImage::Impl> (x=0x140606c0) at ../../boost/boost/checked_delete.hpp:34
|
|
#10 0x006aeea4 in boost::checked_delete<lyx::graphics::PreviewImage> (x=0x11e4d8a0) at ../../boost/boost/checked_delete.hpp:34
|
|
#11 0x005fc478 in boost::detail::sp_counted_base::release (this=0x132a3db0) at ../boost/boost/detail/sp_counted_base_gcc_ppc.hpp:153
|
|
#12 0x006ae044 in std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> >::~pair (this=0x1405efe0) at /opt/local/include/gcc42/c++/bits/stl_pair.h:69
|
|
#13 0x006ae32c in std::_Rb_tree<std::string, std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> >, std::_Select1st<std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> > > >::destroy_node (this=0x11e60e80, __p=0x1405efd0) at /opt/local/include/gcc42/c++/bits/stl_tree.h:400
|
|
#14 0x006ae388 in std::_Rb_tree<std::string, std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> >, std::_Select1st<std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> > > >::_M_erase (this=0x11e60e80, __x=0x1405efd0) at /opt/local/include/gcc42/c++/bits/stl_tree.h:1325
|
|
#15 0x006ae3c0 in std::_Rb_tree<std::string, std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> >, std::_Select1st<std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::shared_ptr<lyx::graphics::PreviewImage> > > >::~_Rb_tree (this=0x65646f75) at /opt/local/include/gcc42/c++/bits/stl_tree.h:592
|
|
#16 0x00141000 in lyx::graphics::PreviewLoader::Impl::~Impl (this=0x11e60e60) at PreviewLoader.C:428
|
|
#17 0x006b03d0 in boost::checked_delete<lyx::graphics::PreviewLoader::Impl> (x=0x11e60e60) at ../../boost/boost/checked_delete.hpp:34
|
|
#18 0x00141560 in lyx::graphics::PreviewLoader::~PreviewLoader (this=0x65646f75) at PreviewLoader.C:286
|
|
#19 0x00680eec in boost::checked_delete<lyx::graphics::PreviewLoader> (x=0x11e618d0) at ../../boost/boost/checked_delete.hpp:34
|
|
#20 0x005fc478 in boost::detail::sp_counted_base::release (this=0x11e5b040) at ../boost/boost/detail/sp_counted_base_gcc_ppc.hpp:153
|
|
#21 0x00680d08 in std::_Rb_tree<lyx::Buffer const*, std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> >, std::_Select1st<std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> > >, std::less<lyx::Buffer const*>, std::allocator<std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> > > >::destroy_node (this=0x11e6ebd0, __p=0x11e5e780) at /opt/local/include/gcc42/c++/bits/stl_tree.h:400
|
|
#22 0x00680d64 in std::_Rb_tree<lyx::Buffer const*, std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> >, std::_Select1st<std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> > >, std::less<lyx::Buffer const*>, std::allocator<std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> > > >::_M_erase (this=0x11e6ebd0, __x=0x11e5e780) at /opt/local/include/gcc42/c++/bits/stl_tree.h:1325
|
|
#23 0x00680d9c in std::_Rb_tree<lyx::Buffer const*, std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> >, std::_Select1st<std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> > >, std::less<lyx::Buffer const*>, std::allocator<std::pair<lyx::Buffer const* const, boost::shared_ptr<lyx::graphics::PreviewLoader> > > >::~_Rb_tree (this=0x65646f75) at /opt/local/include/gcc42/c++/bits/stl_tree.h:592
|
|
#24 0x00680dd8 in boost::checked_delete<lyx::graphics::Previews::Impl> (x=0x11e6ebd0) at ../../boost/boost/checked_delete.hpp:34
|
|
#25 0x000c25f4 in lyx::graphics::Previews::~Previews (this=0x65646f75) at Previews.C:58
|
|
#26 0x00002f38 in cxa_atexit_wrapper (routine_param=0xc260c) at ../../gcc-4.2-20060729/gcc/config/darwin-crt3.c:402
|
|
|
|
|
|
CREDITS:
|
|
--------
|
|
|
|
* Performance on Windows is bad. On my system, scrolling the User Guide takes
|
|
10 seconds with LyX 1.4 and more than 30 seconds with LyX 1.5.
|
|
|
|
FIXED (Abdel 04/11/06): This was due to spurious message in QLPainter.C,
|
|
|
|
* When I have the same document in two windows, only the last selected paragraph
|
|
in one of the windows gets updated.
|
|
|
|
FIXED (Abdel 04/11/06): This was due my singlePar optimization. With my last
|
|
commit, the optimization is enabled only if the WorkArea has the focus.
|
|
|
|
* No icon for "note-next" in the "review" toolbar.
|
|
|
|
ADDED (JSpitzm 2006-11-04).
|
|
|
|
* Branches gui broken (buttons do nothing).
|
|
|
|
FIXED (JSpitzm 2006-11-04).
|
|
|
|
* The title bar does not contain the document name when a new window is opened
|
|
(Joost 4/11/06).
|
|
|
|
FIXED (Abdel 05/11/06): This was due to "last_title" being a static variable
|
|
in LyXView::updateWindowTitle() and also due to a potential bug in Qt:
|
|
an update command to the window title seems to be ignored up until the window
|
|
is shown.
|
|
|
|
* src/frontends/qt4/ui/QCitationUi.ui:70 "&Selected citations:" should be
|
|
"&Selected Citations:".
|
|
|
|
FIXED (MGerz 2006-11-05)
|
|
|
|
* In the "Math Delimiters" dialog, there is no need to repeat the term "Size"
|
|
for all values in the selection box; the label is already named "Size"
|
|
|
|
FIXED (MGerz 2006-11-05)
|
|
|
|
* If you open Document>Settings... or Tools>Preferences... for the first time,
|
|
the dialog is much too small to show its content; if you invoke it the second
|
|
time, everything is fine.
|
|
|
|
This happens with qt 4.2.1 only, it does not happen with 4.1.4/4.1.5!
|
|
|
|
FIXED (JSpitzm-2006-11-06): force updateGeometry() after the panelstack has
|
|
been created (with Qt >= 4.2 only). A brute method, but it works.
|
|
|
|
* If you open Edit>Test Style... for the first time, the choice text for
|
|
"Never Toggled>Size" doesn't fit in the selection box (note that in German,
|
|
texts are a bit longer than in English). Interestingly, if you invoke the
|
|
dialog a second time, its button sizes are adjusted to their content.
|
|
|
|
WONTFIX: This happens with qt >= 4.2 only, it does not happen with 4.1.4/4.1.5!
|
|
(or maybe try to add an updateGeonetry() call somewhere as well; JSpitzm).
|
|
|
|
* All label and button texts in the Qt4 dialogs are not translated.
|
|
|
|
FIXED (MGerz 2006-11-07)
|
|
|
|
* Some English menu items don't have a '&' character. (box, date, paste...)
|
|
|
|
FIXED (MGerz 2006-11-07). I added shortcut whereever possible.
|
|
|
|
* When changing the toolbar settings in the right-button context menu of a
|
|
visible toolbar, the modified settings are not considered for session management
|
|
|
|
REPLACED with a new entry, popup disabled (Peter 2006-11-09)
|
|
|
|
* Toolbars always show on the top of the screen, even though they are set to
|
|
"bottom" in the ui file (Joost 3/11/06).
|
|
|
|
FIXED: use the defaul.ui value only when there is no valid position stored
|
|
(1st start of lyx) (Peter 7/11/2006)
|
|
|
|
* Window positions are not remembered correctly. Each time a window is openend
|
|
window again it has moved towards the bottom of the screen. (Joost 3/11/06)
|
|
|
|
FIXED (Peter 8/11/2006)
|
|
|
|
* Special handling of [[...]] in text messages is disabled in messages.C
|
|
FIXED (Georg 2006-11-12)
|
|
|
|
* broken signal/slot connection:
|
|
Object::connect: No such signal LengthCombo::selectionChanged(LyXLength::UNIT)
|
|
Object::connect: (sender name: 'unitCO')
|
|
Object::connect: (receiver name: 'QVSpaceUi')
|
|
|
|
FIXED (JSpitzm 2006-11-12)
|
|
|
|
* Cursor is still not visible on MAC Bennett (3/11/06).
|
|
FIXED (Abdel 2006-11-13)
|
|
|
|
* crash on Windows/Mac
|
|
1. new document
|
|
2. insert List/TOC->Bibtex Bilio
|
|
3. add a bibliography
|
|
4. View Source ->crash
|
|
FIXED (Peter 2006-11-14)
|
|
|
|
* In the TOC dialog, switching between the different TOC types (TOC, Table,
|
|
Float, etc.) is broken.
|
|
FIXED (Ugras)
|
|
|
|
* In the TOC dialog, the slider for altering the display level is
|
|
non-functional (not implemented).
|
|
FIXED (Ugras 2006-11-17)
|
|
|
|
* The correct list is not selected when right-clicking on a LOF or
|
|
LOT inset.
|
|
FIXED (Ugras 2006-11-17)
|
|
|
|
* When selecting a type which *is* already selected, the content in the
|
|
browser window vanishes
|
|
FIXED (Ugras 2006-11-17)
|
|
|
|
* TOC crashes (simply make a few sections, subsections, sections; then add TOC
|
|
before all sections and click on the left button)
|
|
FIXED (Abdel, sometimes in november 2006).
|
|
|
|
* Items in the TOC cannot be moved using drag & drop (Joost 4/11/06).
|
|
WONTFIX (Abdel 2006-11-17): at least not for 1.5.0, this is just candy anyway.
|
|
|
|
* M-x is broken (does not bring up the minibuffer).
|
|
FIXED (Bo, 2006-11-18): set toolbar flag in display function.
|
|
|