[Import] Segmentation fault when import STEP file

About the development of the Part Design module/workbench. PLEASE DO NOT POST HELP REQUESTS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
dabomian
Posts: 7
Joined: Tue Apr 16, 2019 12:42 pm

[Import] Segmentation fault when import STEP file

Post by dabomian »

Hello FreeCAD Community.

Problem
I am importing step file using Import not ImportGui. For attached model app crash: Segmentation fault.

It happens both:
  1. FreeCAD CMD [/usr/lib/freecad-daily/bin/freecadcmd-python3]
  2. FreeCAD GUI [/usr/lib/freecad-daily/bin/freecad-python3]
FreeCAD Version
OS: Ubuntu 18.04.4 LTS (ubuntu:GNOME/ubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.
Build type: Release
Branch: unknown
Hash: 76e74294894bbce46d006e149315c6274d206278
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/UnitedStates (en_US)

Debug logs
I record logs using gdb fallowing instruction from:
https://wiki.freecadweb.org/Debugging

FreeCAD CMD log

Code: Select all

dabomian@dabomian-desktop:/usr/lib/freecad-daily/bin$ gdb ./freecadcmd-python3
GNU gdb (Ubuntu 8.1-0ubuntu3.2) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./freecadcmd-python3...(no debugging symbols found)...done.
(gdb) handle SIG33 noprint nostop
Signal        Stop	Print	Pass to program	Description
SIG33         No	No	Yes		Real-time event 33
(gdb) run
Starting program: /usr/lib/freecad-daily/bin/freecadcmd-python3 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
FreeCAD 0.19, Libs: 0.19R
(c) Juergen Riegel, Werner Mayer, Yorik van Havre and others 2001-2020
FreeCAD is free and open-source software licensed under the terms of LGPL2+ license.
FreeCAD wouldn't be possible without FreeCAD community.
  #####                 ####  ###   ####  
  #                    #      # #   #   # 
  #     ##  #### ####  #     #   #  #   # 
  ####  # # #  # #  #  #     #####  #   # 
  #     #   #### ####  #    #     # #   # 
  #     #   #    #     #    #     # #   #  ##  ##  ##
  #     #   #### ####   ### #     # ####   ##  ##  ##

[FreeCAD Console mode <Use Ctrl-D (i.e. EOF) to exit.>]
>>> App
<module 'FreeCAD' (built-in)>
>>> App.newDocument('Unnamed')
<Document object at 0x5555559c5630>
>>> import Import
>>> import Part
>>> Import.insert("/home/dabomian/Desktop/Nova_C_Wall.stp","Unnamed")
...
Reading STEP file......
Importing......							
<Import> ImportOCAF2.cpp(541): free shape count 7

Program received signal SIGSEGV, Segmentation fault.
0x00000000000000a1 in ?? ()
(gdb) bt full
#0  0x00000000000000a1 in ?? ()
No symbol table info available.
#1  0x00007fffead7fbd7 in Import::Module::importer(Py::Tuple const&, Py::Dict const&) () from /usr/lib/freecad-daily-python3/lib/Import.so
No symbol table info available.
#2  0x00007fffead76b6d in Py::ExtensionModule<Import::Module>::invoke_method_keyword(void*, Py::Tuple const&, Py::Dict const&) () from /usr/lib/freecad-daily-python3/lib/Import.so
No symbol table info available.
#3  0x00007ffff740e7db in method_keyword_call_handler () from /usr/lib/freecad-daily-python3/lib/libFreeCADBase.so
No symbol table info available.
#4  0x00007ffff6ef658a in _PyCFunction_FastCallDict () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#5  0x00007ffff6e5f1ec in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#6  0x00007ffff6e65303 in _PyEval_EvalFrameDefault () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#7  0x00007ffff6e5ea0f in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#8  0x00007ffff6e5f4ce in PyEval_EvalCodeEx () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#9  0x00007ffff6e6024b in PyEval_EvalCode () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#10 0x00007ffff6e330bf in ?? () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#11 0x00007ffff6e333f6 in PyRun_InteractiveLoopFlags () from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#12 0x00007ffff74429a8 in Base::InterpreterSingleton::runCommandLine(char const*) () from /usr/lib/freecad-daily-python3/lib/libFreeCADBase.so
No symbol table info available.
#13 0x00007ffff7aa5364 in App::Application::runApplication() () from /usr/lib/freecad-daily-python3/lib/libFreeCADApp.so
No symbol table info available.
#14 0x0000555555555dcc in ?? ()
No symbol table info available.
#15 0x00007ffff6372b97 in __libc_start_main (main=0x555555555c00, argc=1, argv=0x7fffffffdca8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdc98)
    at ../csu/libc-start.c:310
        self = <optimized out>
        __self = <optimized out>
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -5979943462332980332, 93824992240448, 140737488346272, 0, 0, -551782970649140332, -551761468448103532}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 
              0x7ffff7de5783 <_dl_init+259>, 0x7ffff7daf158}, data = {prev = 0x0, cleanup = 0x0, canceltype = -136423549}}}
        not_first_call = <optimized out>
#16 0x000055555555636a in ?? ()
No symbol table info available.
(gdb) 
FreeCAD GUI log

Code: Select all

dabomian@dabomian-desktop:/usr/lib/freecad-daily/bin$ gdb ./freecad-python3
GNU gdb (Ubuntu 8.1-0ubuntu3.2) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./freecad-python3...(no debugging symbols found)...done.
(gdb) handle SIG33 noprint nostop
Signal        Stop	Print	Pass to program	Description
SIG33         No	No	Yes		Real-time event 33
(gdb) run
Starting program: /usr/lib/freecad-daily/bin/freecad-python3 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
FreeCAD 0.19, Libs: 0.19R
© Juergen Riegel, Werner Mayer, Yorik van Havre and others 2001-2020
FreeCAD is free and open-source software licensed under the terms of LGPL2+ license.
FreeCAD wouldn't be possible without FreeCAD community.
  #####                 ####  ###   ####  
  #                    #      # #   #   # 
  #     ##  #### ####  #     #   #  #   # 
  ####  # # #  # #  #  #     #####  #   # 
  #     #   #### ####  #    #     # #   # 
  #     #   #    #     #    #     # #   #  ##  ##  ##
  #     #   #### ####   ### #     # ####   ##  ##  ##

[New Thread 0x7fffe0d7b700 (LWP 9675)]
[New Thread 0x7fffd6c20700 (LWP 9676)]
[New Thread 0x7fffd641f700 (LWP 9677)]
[New Thread 0x7fffd4988700 (LWP 9678)]
[New Thread 0x7fffbfee2700 (LWP 9680)]
[New Thread 0x7fffbf6e1700 (LWP 9681)]
[New Thread 0x7fffbeee0700 (LWP 9682)]
[New Thread 0x7fffbe6df700 (LWP 9683)]
[New Thread 0x7fffbdede700 (LWP 9684)]
[New Thread 0x7fffbd6dd700 (LWP 9685)]
[New Thread 0x7fffbcedc700 (LWP 9686)]
[New Thread 0x7fff9ffff700 (LWP 9687)]
[New Thread 0x7fff9f7fe700 (LWP 9688)]
[New Thread 0x7fff9effd700 (LWP 9689)]
[New Thread 0x7fff9e7fc700 (LWP 9690)]
[New Thread 0x7fff9dffb700 (LWP 9691)]
[New Thread 0x7fff9d7fa700 (LWP 9692)]
[New Thread 0x7fff9cff9700 (LWP 9693)]
[New Thread 0x7fff7ffff700 (LWP 9694)]
[New Thread 0x7fff7f7fe700 (LWP 9695)]
[New Thread 0x7fff7edf7700 (LWP 9696)]
[Thread 0x7fff7edf7700 (LWP 9696) exited]
[New Thread 0x7fff7edf7700 (LWP 9719)]
Successfully setup HyperBIM environment.
[New Thread 0x7fff21dff700 (LWP 9720)]
connect failed: No such file or directory
[New Thread 0x7fff141cb700 (LWP 9760)]
[New Thread 0x7fff139ca700 (LWP 9761)]
<Import> ImportOCAF2.cpp(541): free shape count 7
[New Thread 0x7fff11b07700 (LWP 9763)]
[New Thread 0x7fff11706700 (LWP 9764)]
[New Thread 0x7fff11305700 (LWP 9765)]
[New Thread 0x7fff10f04700 (LWP 9766)]
[New Thread 0x7fff10702700 (LWP 9767)]
[New Thread 0x7fff10b03700 (LWP 9768)]
[New Thread 0x7ffefbfff700 (LWP 9769)]

Thread 1 "freecad-python3" received signal SIGSEGV, Segmentation fault.
0x0000000000000571 in ?? ()
(gdb) bt full
#0  0x0000000000000571 in ?? ()
No symbol table info available.
#1  0x00007fff1f5f7bd7 in Import::Module::importer(Py::Tuple const&, Py::Dict const&) () from /usr/lib/freecad-daily-python3/lib/Import.so
No symbol table info available.
#2  0x00007fff1f5eeb6d in Py::ExtensionModule<Import::Module>::invoke_method_keyword(void*, Py::Tuple const&, Py::Dict const&) ()
   from /usr/lib/freecad-daily-python3/lib/Import.so
No symbol table info available.
#3  0x00007ffff62237db in method_keyword_call_handler ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADBase.so
No symbol table info available.
#4  0x00007ffff5d0b58a in _PyCFunction_FastCallDict ()
   from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#5  0x00007ffff5c741ec in ?? ()
   from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#6  0x00007ffff5c7a303 in _PyEval_EvalFrameDefault ()
   from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#7  0x00007ffff5c73a0f in ?? ()
   from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#8  0x00007ffff5c744ce in PyEval_EvalCodeEx ()
   from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#9  0x00007ffff5c7524b in PyEval_EvalCode ()
   from /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0
No symbol table info available.
#10 0x00007ffff7244981 in Gui::InteractiveInterpreter::runCode(PyCodeObject*) const () from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#11 0x00007ffff7244eeb in Gui::InteractiveInterpreter::runSource(char const*) const () from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#12 0x00007ffff7245ebe in Gui::InteractiveInterpreter::push(char const*) ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#13 0x00007ffff724668c in Gui::PythonConsole::runSource(QString const&) ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#14 0x00007ffff7248110 in Gui::PythonConsole::keyPressEvent(QKeyEvent*) ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#15 0x00007ffff5444877 in QWidget::event(QEvent*) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#16 0x00007ffff54e54de in QFrame::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#17 0x00007ffff54ee623 in QAbstractScrollArea::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#18 0x00007ffff55c34f5 in QPlainTextEdit::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#19 0x00007ffff540583c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#20 0x00007ffff540e642 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#21 0x00007ffff706fd48 in Gui::GUIApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#22 0x00007ffff46878d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#23 0x00007ffff54617c5 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#24 0x00007ffff540583c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#25 0x00007ffff540d104 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#26 0x00007ffff706fd48 in Gui::GUIApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#27 0x00007ffff46878d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#28 0x00007ffff4c460f0 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
No symbol table info available.
#29 0x00007ffff4c4b035 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
No symbol table info available.
#30 0x00007ffff4c222eb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<---Type <return> to continue, or q <return> to quit---
QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
No symbol table info available.
#31 0x00007fffe4c2c260 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
No symbol table info available.
#32 0x00007fffeeda3417 in g_main_context_dispatch ()
   from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#33 0x00007fffeeda3650 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#34 0x00007fffeeda36dc in g_main_context_iteration ()
   from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#35 0x00007ffff46e088f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#36 0x00007ffff468590a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#37 0x00007ffff468e9b4 in QCoreApplication::exec() ()
   from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#38 0x00007ffff6fe02c1 in Gui::Application::runApplication() ()
   from /usr/lib/freecad-daily-python3/lib/libFreeCADGui.so
No symbol table info available.
#39 0x0000555555557522 in ?? ()
No symbol table info available.
#40 0x00007ffff3a8cb97 in __libc_start_main (main=0x555555556e20, argc=1, 
    argv=0x7fffffffdca8, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffffffdc98)
    at ../csu/libc-start.c:310
        self = <optimized out>
        __self = <optimized out>
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 7943787424575394619, 
                93824992248304, 140737488346272, 0, 0, 4281610186967749435, 
                4281600986626528059}, mask_was_saved = 0}}, priv = {pad = {
              0x0, 0x0, 0x7ffff7de5783 <_dl_init+259>, 0x7ffff7d698b8}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = -136423549}}}
        not_first_call = <optimized out>
#41 0x000055555555821a in ?? ()
No symbol table info available.
Used STEP file in attachement.

Please, could you give some hints where to look for solution?
Attachments
Nova_C_Wall.zip
Zipped Step file used in example
(211.31 KiB) Downloaded 98 times
openBrain
Veteran
Posts: 9041
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: [Import] Segmentation fault when import STEP file

Post by openBrain »

ATM I can't confirm the problem. I tested in Python console and

Code: Select all

>>> import Import
>>> Import.open(u"/tmp/Nova_C_Wall.stp")
perfectly works. :?
dabomian
Posts: 7
Joined: Tue Apr 16, 2019 12:42 pm

Re: [Import] Segmentation fault when import STEP file

Post by dabomian »

@openBrain

thank you for your answer.
I tested "open" version:

Code: Select all

>>> import Import
>>> Import.open(u"/tmp/Nova_C_Wall.stp")
and it also crash app the same as "insert"

Code: Select all

>>> import Import
>>> Import.insert(u"/tmp/Nova_C_Wall.stp", "Unnamed")
When using FreeCAD stble
OS: Ubuntu 18.04.4 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.4.
Build type: Release
Python version: 3.6.8
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/UnitedStates (en_US)

There is no problem.
openBrain
Veteran
Posts: 9041
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: [Import] Segmentation fault when import STEP file

Post by openBrain »

Could you try resetting your preferences with (to be done when no FreeCAD is running) :

Code: Select all

mv ~/.FreeCAD ~/.FreeCAD.bak
dabomian
Posts: 7
Joined: Tue Apr 16, 2019 12:42 pm

Re: [Import] Segmentation fault when import STEP file

Post by dabomian »

With reset preferences it also crash.
User avatar
apaatsio
Posts: 3
Joined: Mon Aug 17, 2020 6:26 pm

Re: [Import] Segmentation fault when import STEP file

Post by apaatsio »

FWIW, I am able to reproduce the issue in the Python console.

FreeCAD version
OS: Debian GNU/Linux 9 (stretch)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.22267 (Git)
Build type: Debug
Branch: master
Hash: 1cad17c5f59883cf8f07855cecab350d93a25c30
Python version: 3.7.6
Qt version: 5.13.2
Coin version: 4.0.0
OCC version: 7.4.0
Locale: C/Default (C)

gdb backtrace

Code: Select all

Thread 1 "FreeCAD" received signal SIGSEGV, Segmentation fault.
0x0000000000000521 in ?? ()
(gdb) bt full
#0  0x0000000000000521 in ?? ()
No symbol table info available.
#1  0x00007f1c0c344aa8 in Import::Module::importer (this=0x562395feb760, args=..., kwds=...)
    at /mnt/source/src/Mod/Import/App/AppImportPy.cpp:256
        tuple = {<Py::SeqBase<Py::Object>> = {<Py::Object> = {_vptr.Object = 0x7f1c8c66a9a0 <vtable for Py::Tuple+16>, 
              p = 0x7f1c6115cdc0}, <No data fields>}, <No data fields>}
        colors = 
    {<App::PropertyListsT<App::Color, std::vector<App::Color, std::allocator<App::Color> >, App::PropertyLists>> = {<App::PropertyLists> = {<App::Property> = {<Base::Persistence> = {<Base::BaseClass> = {_vptr.BaseClass = 0x7ffc3ffc2894, 
                    static classTypeId = {_vptr.Type = 0x7f1c893481b0 <vtable for Base::Type+16>, index = 1, 
                      static typemap = <optimized out>, 
                      static typedata = {<std::_Vector_base<Base::TypeData*, std::allocator<Base::TypeData*> >> = {
                          _M_impl = {<std::allocator<Base::TypeData*>> = {<__gnu_cxx::new_allocator<Base::TypeData*>> = {<No data fields>}, <No data fields>}, _M_start = 0x5623960001d0, _M_finish = 0x562396000e10, 
                            _M_end_of_storage = 0x5623960011d0}}, <No data fields>}, 
                      static loadModuleSet = <optimized out>}}, static classTypeId = {
                    _vptr.Type = 0x7f1c893481b0 <vtable for Base::Type+16>, index = 4, 
                    static typemap = <optimized out>, 
                    static typedata = {<std::_Vector_base<Base::TypeData*, std::allocator<Base::TypeData*> >> = {
                        _M_impl = {<std::allocator<Base::TypeData*>> = {<__gnu_cxx::new_allocator<Base::TypeData*>> = {<No data fields>}, <No data fields>}, _M_start = 0x5623960001d0, _M_finish = 0x562396000e10, 
                          _M_end_of_storage = 0x5623960011d0}}, <No data fields>}, 
                    static loadModuleSet = <optimized out>}}, static classTypeId = {
                  _vptr.Type = 0x7f1c893481b0 <vtable for Base::Type+16>, index = 7, static typemap = <optimized out>, 
                  static typedata = {<std::_Vector_base<Base::TypeData*, std::allocator<Base::TypeData*> >> = {
                      _M_impl = {<std::allocator<Base::TypeData*>> = {<__gnu_cxx::new_allocator<Base::TypeData*>> = {<No data fields>}, <No data fields>}, _M_start = 0x5623960001d0, _M_finish = 0x562396000e10, 
                        _M_end_of_storage = 0x5623960011d0}}, <No data fields>}, 
                  static loadModuleSet = <optimized out>}, StatusBits = std::bitset = {[5] = 1, [6] = 1, [8] = 1, 
                  [11] = 1, [13] = 1, [18] = 1, [19] = 1, [20] = 1, [21] = 1, [22] = 1, [23] = 1, [24] = 1, [25] = 1, 
                  [26] = 1, [27] = 1, [28] = 1, [29] = 1, [34] = 1, [35] = 1, [36] = 1, [37] = 1, [38] = 1, [39] = 1, 
                  [40] = 1, [41] = 1, [42] = 1, [43] = 1, [44] = 1, [45] = 1, [46] = 1}, father = 0x562393e341b0, 
                myName = 0x4d <error: Cannot access memory at address 0x4d>}, <App::PropertyListsBase> = {
                _vptr.PropertyListsBase = 0x3ffc2ab0, _touchList = std::set with 140721381976576 elements
    <error reading variable: Cannot access memory at address 0x70756f72672078>}, static classTypeId = {
                _vptr.Type = 0x7f1c893481b0 <vtable for Base::Type+16>, index = 9, static typemap = <optimized out>, 
                static typedata = {<std::_Vector_base<Base::TypeData*, std::allocator<Base::TypeData*> >> = {
                    _M_impl = {<std::allocator<Base::TypeData*>> = {<__gnu_cxx::new_allocator<Base::TypeData*>> = {<No data fields>}, <No data fields>}, _M_start = 0x5623960001d0, _M_finish = 0x562396000e10, 
---Type <return> to continue, or q <return> to quit---
                      _M_end_of_storage = 0x5623960011d0}}, <No data fields>}, 
                static loadModuleSet = <optimized out>}}, <App::AtomicPropertyChangeInterface<App::PropertyListsT<App::Color, std::vector<App::Color, std::allocator<App::Color> >, App::PropertyLists> >> = {signalCounter = 0, 
              hasChanged = false}, _lValueList = std::vector of length 0, capacity 8795086373538 = {
              <error reading variable>
        it = @0x562396af9180: {first = 0x5623960bab90, second = std::vector of length 1, capacity 1 = {{
              r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}}}
        __for_range = std::map with 6 elements = {[0x5623960bab90] = std::vector of length 1, capacity 1 = {{
              r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}}, 
          [0x562396c77050] = std::vector of length 1, capacity 1 = {{r = 0.800000012, g = 0.800000012, 
              b = 0.800000012, a = 0}}, [0x562396cb1a10] = std::vector of length 1, capacity 1 = {{r = 0.800000012, 
              g = 0.800000012, b = 0.800000012, a = 0}}, [0x562396d2c810] = std::vector of length 1, capacity 1 = {{
              r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}}, 
          [0x562396d31bc0] = std::vector of length 1, capacity 1 = {{r = 0.800000012, g = 0.800000012, 
              b = 0.800000012, a = 0}}, [0x5623974470b0] = std::vector of length 0, capacity 0}
        __for_begin = 
      {first = 0x5623960bab90, second = std::vector of length 1, capacity 1 = {{r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}}}
        __for_end = 
      {first = 0x6, second = std::vector of length -45419966, capacity 60049414153 = {{r = -3.63499999e-32, g = 4.5598252e-41, b = -3.63501351e-32, a = 4.5598252e-41}, {r = -3.63498412e-32, g = 4.5598252e-41, b = -3.63864226e-32, a = 4.5598252e-41}, {r = -3.7297848e-32, g = 4.5598252e-41, b = -3.72970252e-32, a = 4.5598252e-41}, {r = -3.63864755e-32, g = 4.5598252e-41, b = -3.6452503e-32, a = 4.5598252e-41}, {r = -3.63484365e-32, g = 4.5598252e-41, b = 0, a = 0}, {r = -1.77735874e-31, g = 4.5598252e-41, b = -3.727991e-32, a = 4.5598252e-41}, {r = -3.72800451e-32, g = 4.5598252e-41, b = -3.63457681e-32, a = 4.5598252e-41}, {r = -3.63854175e-32, g = 4.5598252e-41, b = -3.63456564e-32, a = 4.5598252e-41}, {r = -3.72981242e-32, g = 4.5598252e-41, b = -3.63470788e-32, a = 4.5598252e-41}, {r = -3.72985592e-32, g = 4.5598252e-41, b = -3.72989588e-32, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.77736156e-31, a = 4.5598252e-41}, {r = -3.63459268e-32, g = 4.5598252e-41, b = -3.6346062e-32, a = 4.5598252e-41}, {r = -3.72993468e-32, g = 4.5598252e-41, b = -3.63854175e-32, a = 4.5598252e-41}, {r = -3.72995055e-32, g = 4.5598252e-41, b = -3.72981242e-32, a = 4.5598252e-41}, {r = -3.72996171e-32, g = 4.5598252e-41, b = -3.72985592e-32, a = 4.5598252e-41}, {r = -3.72989588e-32, g = 4.5598252e-41, b = 0, a = 0}, {r = -1.77736439e-31, g = 4.5598252e-41, b = -3.72801568e-32, a = 4.5598252e-41}, {r = -3.7280292e-32, g = 4.5598252e-41, b = -3.63451451e-32, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.77736721e-31, a = 4.5598252e-41}, {r = -3.72804037e-32, g = 4.5598252e-41, b = -3.72805389e-32, a = 4.5598252e-41}, {r = -3.63437698e-32, g = 4.5598252e-41, b = -3.63850414e-32, a = 4.5598252e-41}, {r = -3.63439285e-32, g = 4.5598252e-41, b = -3.72998816e-32, a = 4.5598252e-41}, {r = -3.63446102e-32, g = 4.5598252e-41, b = -3.73003165e-32, a = 4.5598252e-41}, {r = -3.73007162e-32, g = 4.5598252e-41, b = 0, a = 0}, {r = -1.77737003e-31, g = 4.5598252e-41, b = -3.63440401e-32, a = 4.5598252e-41}, {r = -3.63441753e-32, g = 4.5598252e-41, b = -3.73011041e-32, a = 4.5598252e-41}, {r = -3.63850414e-32, g = 4.5598252e-41, b = -3.73012628e-32, a = 4.5598252e-41}, {r = -3.72998816e-32, g = 4.5598252e-41, b = -3.73013745e-32, a = 4.5598252e-41}, {r = -3.73003165e-32, g = 4.5598252e-41, b = -3.73007162e-32, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.77737285e-31, a = 4.5598252e-41}, {r = -3.72806505---Type <return> to continue, or q <return> to quit---
e-32, g = 4.5598252e-41, b = -3.72807857e-32, a = 4.5598252e-41}, {r = -3.63432584e-32, g = 4.5598252e-41, b = 0, a = 0}, {r = -1.77737567e-31, g = 4.5598252e-41, b = -3.63488244e-32, a = 4.5598252e-41}, {r = -3.63489596e-32, g = 4.5598252e-41, b = -3.73014744e-32, a = 4.5598252e-41}, {r = -3.63864226e-32, g = 4.5598252e-41, b = -3.7297848e-32, a = 4.5598252e-41}, {r = -3.72970252e-32, g = 4.5598252e-41, b = -3.63864755e-32, a = 4.5598252e-41}, {r = -3.6452503e-32, g = 4.5598252e-41, b = -3.72974601e-32, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.77738413e-31, a = 4.5598252e-41}, {r = -3.6340978e-32, g = 4.5598252e-41, b = -3.63411132e-32, a = 4.5598252e-41}, {r = -3.63413306e-32, g = 4.5598252e-41, b = 3.47522019e-43, a = 0}, {r = 0, g = 0, b = -1.77738601e-31, a = 4.5598252e-41}, {r = -3.63387916e-32, g = 4.5598252e-41, b = -3.63391207e-32, a = 4.5598252e-41}, {r = -nan(0x7fff08), g = -nan(0x7fffff), b = -nan(0x7fff08), a = -nan(0x7fffff)}, {r = -1.77738601e-31, g = 4.5598252e-41, b = -3.63390913e-32, a = 4.5598252e-41}, {r = -3.63392324e-32, g = 4.5598252e-41, b = -1.77703713e-31, a = 4.5598252e-41}, {r = -1.77705217e-31, g = 4.5598252e-41, b = -1.77706158e-31, a = 4.5598252e-41}, {r = -1.77706628e-31, g = 4.5598252e-41, b = -1.77705688e-31, a = 4.5598252e-41}, {r = -1.77704183e-31, g = 4.5598252e-41, b = 3.47522019e-43, a = 0}, {r = 0, g = 0, b = -7.40958558e-37, a = 4.5598252e-41}, {r = 0, g = 0, b = 0, a = 0}, {r = -nan(0x7fff08), g = -nan(0x7fffff), b = -nan(0x7fff08), a = -nan(0x7fffff)}, {r = -7.40958558e-37, g = 4.5598252e-41, b = 0, a = 0}, {r = 0, g = 0, b = 3.47522019e-43, a = 0}, {r = 0, g = 0, b = -7.41216128e-37, a = 4.5598252e-41}, {r = 0, g = 0, b = 0, a = 0}, {r = -nan(0x7fff08), g = -nan(0x7fffff), b = -nan(0x7fff08), a = -nan(0x7fffff)}, {r = -7.41216128e-37, g = 4.5598252e-41, b = 0, a = 0}, {r = 0, g = 0, b = 0, a = 0}, {r = -1.77738884e-31, g = 4.5598252e-41, b = -3.63344246e-32, a = 4.5598252e-41}, {r = -3.63346068e-32, g = 4.5598252e-41, b = -3.63347185e-32, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.77739166e-31, a = 4.5598252e-41}, {r = 0, g = 0, b = 0, a = 0}, {r = -6.0422519e-37, g = 4.5598252e-41, b = -6.0422519e-37, a = 4.5598252e-41}, {r = -6.0422519e-37, g = 4.5598252e-41, b = -6.0422519e-37, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.77739354e-31, a = 4.5598252e-41}, {r = 0, g = 0, b = 0, a = 0}, {r = -6.0422519e-37, g = 4.5598252e-41, b = 0, a = 0}, {r = -1.77739636e-31, g = 4.5598252e-41, b = -3.72242268e-32, a = 4.5598252e-41}, {r = -3.7224362e-32, g = 4.5598252e-41, b = -6.08042103e-37, a = 4.5598252e-41}, {r = 0, g = 0, b = -1.777402e-31, a = 4.5598252e-41}, {r = 0, g = 0, b = 0, a = 0}, {r = -6.0422519e-37, g = 4.5598252e-41, b = -3.63103857e-32, a = 4.5598252e-41}, {r = -6.0422519e-37, g = 4.5598252e-41, b = -6.0422519e-37, a = 4.5598252e-41}, {r = -6.0422519e-37, g = 4.5598252e-41, b = 0, a = 0}, {r = -1.7774067e-31, g = 4.5598252e-41, b = -6.0422519e-37, a = 4.5598252e-41}, {r = -6.0422519e-37, g = 4.5598252e-41, b = 0, a = 0}, {r = 0, g = 0, b = 0, a = 0}, {r = -1.77740858e-31, g = 4.5598252e-41, b = -6.0422519e-37, a = 4.5598252e-41}, {r = -6.0422519e-37, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83312045e-32, g = 4.5598252e-41, b = -1.77711048e-31, a = 4.5598252e-41}, {r = -7.40261182e-37, g = 4.5598252e-41, b = -6.83315807e-32, a = 4.5598252e-41}, {r = 0, g = 2.80259693e-45, b = -1.77711706e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -1.7774067e-31, a = 4.5598252e-41}, {r = -nan(0x7fe803), g = -nan(0x7fffff), b = -7.40261182e-37, a = 4.5598252e-41}, {r = -6.83321449e-32, g = 4.5598252e-41, b = 0, a = 2.80259693e-45}, {r = -1.77739636e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -1.77740858e-31, g = 4.5598252e-41, b = 5.74252111e-42, a = 0}, {r = -7.40111949e-37, g = 4.5598252e-41, b = -6.83327091e-32, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83336495e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83351542e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40111949e-37, g = 4.5598252e-41, b = -6.83368469e-32, a = 4.5598252e-41}, {r = -7.40111949e-37, g = 4.5598252e-41, b = -6.83377873e-32, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83385396e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83398561e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40111949e-37, g = 4.5598252e-41, b = -6.83413608e-32, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83421131e-32, a---Type <return> to continue, or q <return> to quit---
 = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83434296e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40111949e-37, g = 4.5598252e-41, b = -6.83449343e-32, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83458747e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83468151e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83475674e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83481316e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83486959e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83500124e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.8351329e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83524574e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83535859e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83550905e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83565952e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83579117e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83594164e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.8360921e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83624256e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83629899e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83644945e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83659991e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83673157e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83686322e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83701369e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83714534e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.837277e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83731461e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83744627e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83757792e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83769077e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83780362e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83793527e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83806693e-32, g = 4.5598252e-41, b = -1.777402e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83819859e-32, a = 4.5598252e-41}, {r = -1.777402e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83833024e-32, g = 4.5598252e-41, b = -1.77739166e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83844309e-32, a = 4.5598252e-41}, {r = -1.77739166e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83853713e-32, g = 4.5598252e-41, b = -1.77739166e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83863117e-32, a = 4.5598252e-41}, {r = -1.77739166e-31, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83874401e-32, g = 4.5598252e-41, b = -1.7773437e-31, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.84030507e----Type <return> to continue, or q <return> to quit---
32, a = 4.5598252e-41}, {r = -2.71708804e-36, g = 4.5598252e-41, b = -7.40261182e-37, a = 4.5598252e-41}, {r = -6.83878163e-32, g = 4.5598252e-41, b = 0, a = 2.80259693e-45}, {r = -1.77739354e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -1.77741046e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -7.40261182e-37, g = 4.5598252e-41, b = -6.83889448e-32, a = 4.5598252e-41}, {r = 0, g = 2.80259693e-45, b = -1.77739354e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -1.77741235e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -7.40261182e-37, a = 4.5598252e-41}, {r = -6.83898852e-32, g = 4.5598252e-41, b = 0, a = 2.80259693e-45}, {r = -1.77739354e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -1.77741423e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -7.40261182e-37, g = 4.5598252e-41, b = -6.83908256e-32, a = 4.5598252e-41}, {r = 0, g = 2.80259693e-45, b = -1.77739354e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -1.77741611e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -7.40261182e-37, a = 4.5598252e-41}, {r = -6.8391954e-32, g = 4.5598252e-41, b = 0, a = 2.80259693e-45}, {r = -1.77739354e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -1.77741799e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -7.40261182e-37, g = 4.5598252e-41, b = -6.83928944e-32, a = 4.5598252e-41}, {r = 0, g = 2.80259693e-45, b = -1.77739354e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -1.77741987e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -7.40261182e-37, a = 4.5598252e-41}, {r = -6.83938348e-32, g = 4.5598252e-41, b = 0, a = 2.80259693e-45}, {r = -1.77739354e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -1.77742175e-31, g = 4.5598252e-41, b = 2.80259693e-45, a = 0}, {r = -7.40261182e-37, g = 4.5598252e-41, b = -6.83947752e-32, a = 4.5598252e-41}, {r = 0, g = 8.40779079e-45, b = -1.77731831e-31, a = 4.5598252e-41}, {r = 2.80259693e-45, g = 0, b = -1.77732019e-31, a = 4.5598252e-41}, {r = 2.87266185e-42, g = 0, b = -1.77732583e-31, a = 4.5598252e-41}, {r = 5.74252111e-42, g = 0, b = -1.77731643e-31, a = 4.5598252e-41}, {r = 8.61238036e-42, g = 0, b = -1.77732395e-31, a = 4.5598252e-41}, {r = 1.14822396e-41, g = 0, b = -1.77732207e-31, a = 4.5598252e-41}, {r = 1.43520989e-41, g = 0, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83949633e-32, g = 4.5598252e-41, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83951514e-32, g = 4.5598252e-41, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83953395e-32, g = 4.5598252e-41, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83955275e-32, g = 4.5598252e-41, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83957156e-32, g = 4.5598252e-41, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83959037e-32, g = 4.5598252e-41, b = -7.40111949e-37, a = 4.5598252e-41}, {r = -6.83960918e-32, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83962799e-32, g = 4.5598252e-41, b = -7.40316786e-37, a = 4.5598252e-41}, {r = -7.40252572e-37, g = 4.5598252e-41, b = -6.83964679e-32, a = 4.5598252e-41}, {r = -7.40511936e-37, g = 4.5598252e-41, b = -7.40252572e-37, a = 4.5598252e-41}, {r = -6.83968441e-32, g = 4.5598252e-41, b = -1.77733899e-31, a = 4.5598252e-41}...}}
        list = {<Py::SeqBase<Py::Object>> = {<Py::Object> = {_vptr.Object = 0x7f1c8c66bde8 <vtable for Py::List+16>, 
              p = 0x7f1c6116fe60}, <No data fields>}, <No data fields>}
        file = {FileName = "/mnt/files/Nova_C_Wall.stp"}

        pcDoc = 0x562395a74c40
        hDoc = {entity = 0x562396af2c60}
        hApp = {entity = 0x562396af24b0}
        ocaf = {<Import::ImportOCAF2> = {_vptr.ImportOCAF2 = 0x7f1c0c5ee4f0 <vtable for ImportOCAFExt+16>, pDoc = {
              entity = 0x562396af2c60}, pDocument = 0x562395a74c40, aShapeTool = {entity = 0x562396af3210}, 
            aColorTool = {entity = 0x562396af3370}, merge = true, default_name = "Nova_C_Wall", useLinkGroup = true, 
            useBaseName = true, importHidden = true, reduceObjects = true, showProgress = true, expandCompound = true, 
            mode = 0, filePath = "", myShapes = std::unordered_map with 7 elements = {[{myTShape = {
---Type <return> to continue, or q <return> to quit---
                  entity = 0x56239a4f5800}, myLocation = {myItems = {myNode = {entity = 0x0}}}, 
                myOrient = TopAbs_FORWARD}] = {baseName = "Nova C wall", obj = 0x562397304630, propPlacement = 
    0x562397304e18, faceColor = {r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}, edgeColor = {
                  r = 0.0980392173, g = 0.0980392173, b = 0.0980392173, a = 0}, hasFaceColor = false, 
                hasEdgeColor = false, free = 0}, [{myTShape = {entity = 0x56239a380290}, myLocation = {myItems = {
                    myNode = {entity = 0x0}}}, myOrient = TopAbs_FORWARD}] = {
                baseName = "Nova C I Nova C w Br straight metal strip", obj = 0x562396d31bc0, 
                propPlacement = 0x562396d32010, faceColor = {r = 0.800000012, g = 0.800000012, b = 0.800000012, 
                  a = 0}, edgeColor = {r = 0.0980392173, g = 0.0980392173, b = 0.0980392173, a = 0}, 
                hasFaceColor = false, hasEdgeColor = false, free = 1}, [{myTShape = {entity = 0x562399a80ed0}, 
                myLocation = {myItems = {myNode = {entity = 0x0}}}, myOrient = TopAbs_FORWARD}] = {
                baseName = "Nova C w Br single slender rib", obj = 0x562396d2c810, propPlacement = 0x562396d2cc60, 
                faceColor = {r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}, edgeColor = {r = 0.0980392173, 
                  g = 0.0980392173, b = 0.0980392173, a = 0}, hasFaceColor = false, hasEdgeColor = false, free = 1}, [{
                myTShape = {entity = 0x562396fd9b10}, myLocation = {myItems = {myNode = {entity = 0x0}}}, 
                myOrient = TopAbs_FORWARD}] = {baseName = "Nova C Wall leg part 1", obj = 0x5623960bab90, 
                propPlacement = 0x5623960bafe0, faceColor = {r = 0.800000012, g = 0.800000012, b = 0.800000012, 
                  a = 0}, edgeColor = {r = 0.0980392173, g = 0.0980392173, b = 0.0980392173, a = 0}, 
                hasFaceColor = false, hasEdgeColor = false, free = 0}, [{myTShape = {entity = 0x56239a4f5750}, 
                myLocation = {myItems = {myNode = {entity = 0x0}}}, myOrient = TopAbs_FORWARD}] = {
                baseName = "Nova C Wall leg", obj = 0x5623960bb7a0, propPlacement = 0x5623960bbf88, faceColor = {
                  r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}, edgeColor = {r = 0.0980392173, 
                  g = 0.0980392173, b = 0.0980392173, a = 0}, hasFaceColor = false, hasEdgeColor = false, free = 1}, [{
                myTShape = {entity = 0x562399ad46a0}, myLocation = {myItems = {myNode = {entity = 0x0}}}, 
                myOrient = TopAbs_FORWARD}] = {baseName = "Nova C Wall leg part 2", obj = 0x562396cb1a10, 
                propPlacement = 0x562396cb1e60, faceColor = {r = 0.800000012, g = 0.800000012, b = 0.800000012, 
                  a = 0}, edgeColor = {r = 0.0980392173, g = 0.0980392173, b = 0.0980392173, a = 0}, 
                hasFaceColor = false, hasEdgeColor = false, free = 0}, [{myTShape = {entity = 0x562399b6ac70}, 
                myLocation = {myItems = {myNode = {entity = 0x0}}}, myOrient = TopAbs_FORWARD}] = {
                baseName = "Nova C w Br single wide rib", obj = 0x562396c77050, propPlacement = 0x562396c774a0, 
                faceColor = {r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}, edgeColor = {r = 0.0980392173, 
                  g = 0.0980392173, b = 0.0980392173, a = 0}, hasFaceColor = false, hasEdgeColor = false, free = 1}}, 
            myNames = std::unordered_map with 22 elements = {[{myLabelNode = 0x562396af4ce0}] = "Link003.1", [{
                myLabelNode = 0x562396af4ca8}] = "Link003.0", [{myLabelNode = 0x562396af4ae8}] = "Link002.6", [{
                myLabelNode = 0x562396af4ab0}] = "Link002.5", [{myLabelNode = 0x562396af4c38}] = "Link002.12", [{
                myLabelNode = 0x562396af4b90}] = "Link002.9", [{myLabelNode = 0x562396af4848}] = "Link.0", [{
                myLabelNode = 0x562396af4b58}] = "Link002.8", [{myLabelNode = 0x562396af4810}] = "Solid001", [{
                myLabelNode = 0x562396af4bc8}] = "Link002.10", [{myLabelNode = 0x562396af4880}] = "Link.1", [{
                myLabelNode = 0x562396af4c00}] = "Link002.11", [{myLabelNode = 0x562396af4b20}] = "Link002.7", [{
---Type <return> to continue, or q <return> to quit---
                myLabelNode = 0x562396af47a0}] = "Solid", [{myLabelNode = 0x562396af46f8}] = "LinkGroup001", [{
                myLabelNode = 0x562396af4a78}] = "Link002.4", [{myLabelNode = 0x562396af49d0}] = "Link002.1", [{
                myLabelNode = 0x562396af48f0}] = "Link001.0", [{myLabelNode = 0x562396af4a08}] = "Link002.2", [{
                myLabelNode = 0x562396af4928}] = "Link001.1", [{myLabelNode = 0x562396af4998}] = "Link002.0", [{
                myLabelNode = 0x562396af4a40}] = "Link002.3"}, 
            myCollapsedObjects = std::unordered_map with 0 elements, defaultFaceColor = {r = 0.800000012, 
              g = 0.800000012, b = 0.800000012, a = 0}, defaultEdgeColor = {r = 0.0980392173, g = 0.0980392173, 
              b = 0.0980392173, a = 0}, sequencer = 0x0}, partColors = std::map with 6 elements = {
            [0x5623960bab90] = std::vector of length 1, capacity 1 = {{r = 0.800000012, g = 0.800000012, 
                b = 0.800000012, a = 0}}, [0x562396c77050] = std::vector of length 1, capacity 1 = {{r = 0.800000012, 
                g = 0.800000012, b = 0.800000012, a = 0}}, [0x562396cb1a10] = std::vector of length 1, capacity 1 = {{
                r = 0.800000012, g = 0.800000012, b = 0.800000012, a = 0}}, 
            [0x562396d2c810] = std::vector of length 1, capacity 1 = {{r = 0.800000012, g = 0.800000012, 
                b = 0.800000012, a = 0}}, [0x562396d31bc0] = std::vector of length 1, capacity 1 = {{r = 0.800000012, 
                g = 0.800000012, b = 0.800000012, a = 0}}, [0x5623974470b0] = std::vector of length 0, capacity 0}}
        Name = 0x7f1c61133e10 ""
        DocName = 0x0
        importHidden = 0x7f1c885526f0 <_Py_NoneStruct>
        merge = 0x7f1c885526f0 <_Py_NoneStruct>
        useLinkGroup = 0x7f1c885526f0 <_Py_NoneStruct>
        mode = -1
        kwd_list = {0x7f1c0c3b7f0a "name", 0x7f1c0c3b7f0f "docName", 0x7f1c0c3b7f17 "importHidden", 
          0x7f1c0c3b7f24 "merge", 0x7f1c0c3b7f2a "useLinkGroup", 0x7f1c0c3b7f37 "mode", 0x0}
        Utf8Name = "/mnt/files/Nova_C_Wall.stp"
        name8bit = "/mnt/files/Nova_C_Wall.stp"
#2  0x00007f1c0c354496 in Py::ExtensionModule<Import::Module>::invoke_method_keyword (this=0x562395feb760, 
    method_def=0x562395feb8c0, args=..., keywords=...) at /mnt/source/src/CXX/Python3/ExtensionModule.hxx:190
        self = 0x562395feb760
        meth_def = 0x562395feb8c0
#3  0x00007f1c88fd2f77 in Py::method_keyword_call_handler (_self_and_name_tuple=0x7f1c611c12d0, _args=0x7f1c61111d50, 
    _keywords=0x0) at /mnt/source/src/CXX/Python3/cxx_extensions.cxx:1591
        keywords = {<Py::MapBase<Py::Object>> = {<Py::Object> = {
              _vptr.Object = 0x7f1c8c66bd58 <vtable for Py::Dict+16>, 
              p = 0x7f1c6112db90}, <No data fields>}, <No data fields>}
        result = {_vptr.Object = 0x7f1c6111bc80, p = 0xd33c4b686cfff44d}
        self_and_name_tuple = {<Py::SeqBase<Py::Object>> = {<Py::Object> = {
              _vptr.Object = 0x7f1c8c66a9a0 <vtable for Py::Tuple+16>, 
              p = 0x7f1c611c12d0}, <No data fields>}, <No data fields>}
        self_in_cobject = 0x7f1c611c5e10
---Type <return> to continue, or q <return> to quit---
        self_as_void = 0x562395feb760
        self = 0x562395feb760
        args = {<Py::SeqBase<Py::Object>> = {<Py::Object> = {_vptr.Object = 0x7f1c8c66a9a0 <vtable for Py::Tuple+16>, 
              p = 0x7f1c61111d50}, <No data fields>}, <No data fields>}
#4  0x00007f1c880fe753 in _PyMethodDef_RawFastCallKeywords (method=0x562395feb8e0, self=<optimized out>, 
    args=0x5623945bc198, nargs=1, kwnames=<optimized out>) at ../Objects/call.c:694
        kwdict = 0x0
        argtuple = 0x7f1c61111d50
        meth = 0x7f1c88fd2e21 <Py::method_keyword_call_handler(PyObject*, PyObject*, PyObject*)>
        flags = <optimized out>
        nkwargs = <optimized out>
        result = 0x0
#5  0x00007f1c880fe7d5 in _PyCFunction_FastCallKeywords (func=0x7f1c6805eaf0, args=<optimized out>, 
    nargs=<optimized out>, kwnames=<optimized out>) at ../Objects/call.c:734
        result = <optimized out>
#6  0x00007f1c880d6aa8 in call_function (kwnames=0x0, oparg=1, pp_stack=<synthetic pointer>) at ../Python/ceval.c:4568
        tstate = 0x562393c5ffd0
        func = <optimized out>
        w = <optimized out>
        nkwargs = 0
        nargs = 1
        pfunc = 0x5623945bc190
        x = <optimized out>
        stack = 0x5623945bc198
#7  _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>) at ../Python/ceval.c:3093
        sp = 0x5623945bc1a0
        res = <optimized out>
        meth = <optimized out>
        stack_pointer = 0x5623945bc1a0
        next_instr = <optimized out>
        opcode = <optimized out>
        oparg = 1
        why = <optimized out>
        fastlocals = <optimized out>
        freevars = <optimized out>
        retval = 0x0
        tstate = <optimized out>
        co = <optimized out>
        instr_ub = -1
---Type <return> to continue, or q <return> to quit---
        instr_lb = 0
        instr_prev = -1
        first_instr = <optimized out>
        names = <optimized out>
        consts = <optimized out>
        opcode_targets = {0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d1a1d <_PyEval_EvalFrameDefault+9181>, 0x7f1c880d1a71 <_PyEval_EvalFrameDefault+9265>, 
          0x7f1c880d1ac4 <_PyEval_EvalFrameDefault+9348>, 0x7f1c880d1d4a <_PyEval_EvalFrameDefault+9994>, 
          0x7f1c880d1c05 <_PyEval_EvalFrameDefault+9669>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d1c64 <_PyEval_EvalFrameDefault+9764>, 0x7f1c880d1e6d <_PyEval_EvalFrameDefault+10285>, 
          0x7f1c880d1ef8 <_PyEval_EvalFrameDefault+10424>, 0x7f1c880d1857 <_PyEval_EvalFrameDefault+8727>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d18eb <_PyEval_EvalFrameDefault+8875>, 0x7f1c880d1976 <_PyEval_EvalFrameDefault+9014>, 
          0x7f1c880d03d6 <_PyEval_EvalFrameDefault+3478>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d1510 <_PyEval_EvalFrameDefault+7888>, 0x7f1c880d17b0 <_PyEval_EvalFrameDefault+8560>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d160e <_PyEval_EvalFrameDefault+8142>, 
          0x7f1c880d16df <_PyEval_EvalFrameDefault+8351>, 0x7f1c880d0fe5 <_PyEval_EvalFrameDefault+6565>, 
          0x7f1c880d108c <_PyEval_EvalFrameDefault+6732>, 0x7f1c880d1133 <_PyEval_EvalFrameDefault+6899>, 
          0x7f1c880d11da <_PyEval_EvalFrameDefault+7066>, 0x7f1c880d1281 <_PyEval_EvalFrameDefault+7233>, 
          0x7f1c880d1328 <_PyEval_EvalFrameDefault+7400>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337> <repeats 20 times>, 
          0x7f1c880d13cf <_PyEval_EvalFrameDefault+7567>, 0x7f1c880d1488 <_PyEval_EvalFrameDefault+7752>, 
          0x7f1c880d0ba6 <_PyEval_EvalFrameDefault+5478>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d1d9c <_PyEval_EvalFrameDefault+10076>, 
          0x7f1c880d1ca3 <_PyEval_EvalFrameDefault+9827>, 0x7f1c880d30c9 <_PyEval_EvalFrameDefault+14985>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d224c <_PyEval_EvalFrameDefault+11276>, 
          0x7f1c880d32ba <_PyEval_EvalFrameDefault+15482>, 0x7f1c880d3170 <_PyEval_EvalFrameDefault+15152>, 
          0x7f1c880d3213 <_PyEval_EvalFrameDefault+15315>, 0x7f1c880d0cec <_PyEval_EvalFrameDefault+5804>, 
          0x7f1c880d3022 <_PyEval_EvalFrameDefault+14818>, 0x7f1c880d2ed4 <_PyEval_EvalFrameDefault+14484>, 
          0x7f1c880d2f7b <_PyEval_EvalFrameDefault+14651>, 0x7f1c880d2c4a <_PyEval_EvalFrameDefault+13834>, 
          0x7f1c880d2cf8 <_PyEval_EvalFrameDefault+14008>, 0x7f1c880d2d83 <_PyEval_EvalFrameDefault+14147>, 
          0x7f1c880d2e28 <_PyEval_EvalFrameDefault+14312>, 0x7f1c880d07f6 <_PyEval_EvalFrameDefault+4534>, 
          0x7f1c880d085b <_PyEval_EvalFrameDefault+4635>, 0x7f1c880d097d <_PyEval_EvalFrameDefault+4925>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d0a10 <_PyEval_EvalFrameDefault+5072>, 
          0x7f1c880d2749 <_PyEval_EvalFrameDefault+12553>, 0x7f1c880d27f0 <_PyEval_EvalFrameDefault+12720>, 
          0x7f1c880d3938 <_PyEval_EvalFrameDefault+17144>, 0x7f1c880d3ba0 <_PyEval_EvalFrameDefault+17760>, 
          0x7f1c880d1f83 <_PyEval_EvalFrameDefault+10563>, 0x7f1c880d1f8e <_PyEval_EvalFrameDefault+10574>, 
          0x7f1c880d20cc <_PyEval_EvalFrameDefault+10892>, 0x7f1c880d3b88 <_PyEval_EvalFrameDefault+17736>, 
---Type <return> to continue, or q <return> to quit---
          0x7f1c880d3379 <_PyEval_EvalFrameDefault+15673>, 0x7f1c880d35d4 <_PyEval_EvalFrameDefault+16276>, 
          0x7f1c880d368c <_PyEval_EvalFrameDefault+16460>, 0x7f1c880d36b7 <_PyEval_EvalFrameDefault+16503>, 
          0x7f1c880d0280 <_PyEval_EvalFrameDefault+3136>, 0x7f1c880d15be <_PyEval_EvalFrameDefault+8062>, 
          0x7f1c880d0320 <_PyEval_EvalFrameDefault+3296>, 0x7f1c880d1b85 <_PyEval_EvalFrameDefault+9541>, 
          0x7f1c880d047d <_PyEval_EvalFrameDefault+3645>, 0x7f1c880d056f <_PyEval_EvalFrameDefault+3887>, 
          0x7f1c880d39df <_PyEval_EvalFrameDefault+17311>, 0x7f1c880d3ad7 <_PyEval_EvalFrameDefault+17559>, 
          0x7f1c880d05ed <_PyEval_EvalFrameDefault+4013>, 0x7f1c880d075a <_PyEval_EvalFrameDefault+4378>, 
          0x7f1c880d0687 <_PyEval_EvalFrameDefault+4167>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d06fe <_PyEval_EvalFrameDefault+4286>, 0x7f1c880d218c <_PyEval_EvalFrameDefault+11084>, 
          0x7f1c880d21f0 <_PyEval_EvalFrameDefault+11184>, 0x7f1c880d444d <_PyEval_EvalFrameDefault+19981>, 
          0x7f1c880d44ac <_PyEval_EvalFrameDefault+20076>, 0x7f1c880d3f6d <_PyEval_EvalFrameDefault+18733>, 
          0x7f1c880d4517 <_PyEval_EvalFrameDefault+20183>, 0x7f1c880d4000 <_PyEval_EvalFrameDefault+18880>, 
          0x7f1c880d402d <_PyEval_EvalFrameDefault+18925>, 0x7f1c880d0c4c <_PyEval_EvalFrameDefault+5644>, 
          0x7f1c880d4402 <_PyEval_EvalFrameDefault+19906>, 0x7f1c880d42de <_PyEval_EvalFrameDefault+19614>, 
          0x7f1c880d4370 <_PyEval_EvalFrameDefault+19760>, 0x7f1c880d3d60 <_PyEval_EvalFrameDefault+18208>, 
          0x7f1c880d3dbe <_PyEval_EvalFrameDefault+18302>, 0x7f1c880d3e69 <_PyEval_EvalFrameDefault+18473>, 
          0x7f1c880d3f12 <_PyEval_EvalFrameDefault+18642>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d2897 <_PyEval_EvalFrameDefault+12887>, 
          0x7f1c880d66ae <_PyEval_EvalFrameDefault+28782>, 0x7f1c880cff94 <_PyEval_EvalFrameDefault+2388>, 
          0x7f1c880cff94 <_PyEval_EvalFrameDefault+2388>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d1b21 <_PyEval_EvalFrameDefault+9441>, 0x7f1c880d2a53 <_PyEval_EvalFrameDefault+13331>, 
          0x7f1c880d2ac0 <_PyEval_EvalFrameDefault+13440>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d2b42 <_PyEval_EvalFrameDefault+13570>, 0x7f1c880d2b7b <_PyEval_EvalFrameDefault+13627>, 
          0x7f1c880d41b4 <_PyEval_EvalFrameDefault+19316>, 0x7f1c880d0ab7 <_PyEval_EvalFrameDefault+5239>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d0b6e <_PyEval_EvalFrameDefault+5422>, 
          0x7f1c880d2704 <_PyEval_EvalFrameDefault+12484>, 0x7f1c880d3c47 <_PyEval_EvalFrameDefault+17927>, 
          0x7f1c880d22f3 <_PyEval_EvalFrameDefault+11443>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 0x7f1c880d2377 <_PyEval_EvalFrameDefault+11575>, 
          0x7f1c880d2472 <_PyEval_EvalFrameDefault+11826>, 0x7f1c880d263a <_PyEval_EvalFrameDefault+12282>, 
          0x7f1c880d0e80 <_PyEval_EvalFrameDefault+6208>, 0x7f1c880d3ccb <_PyEval_EvalFrameDefault+18059>, 
          0x7f1c880d0ea1 <_PyEval_EvalFrameDefault+6241>, 0x7f1c880d0f36 <_PyEval_EvalFrameDefault+6390>, 
          0x7f1c880d36ff <_PyEval_EvalFrameDefault+16575>, 0x7f1c880d000c <_PyEval_EvalFrameDefault+2508>, 
          0x7f1c880d01f2 <_PyEval_EvalFrameDefault+2994>, 0x7f1c880d0d93 <_PyEval_EvalFrameDefault+5971>, 
          0x7f1c880d000c <_PyEval_EvalFrameDefault+2508>, 0x7f1c880d3766 <_PyEval_EvalFrameDefault+16678>, 
          0x7f1c880d37d0 <_PyEval_EvalFrameDefault+16784>, 0x7f1c880d3856 <_PyEval_EvalFrameDefault+16918>, 
          0x7f1c880d00c0 <_PyEval_EvalFrameDefault+2688>, 0x7f1c880d0180 <_PyEval_EvalFrameDefault+2880>, 
          0x7f1c880d683a <_PyEval_EvalFrameDefault+29178>, 0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337>, 
          0x7f1c880d29ac <_PyEval_EvalFrameDefault+13164>, 0x7f1c880d28c0 <_PyEval_EvalFrameDefault+12928>, 
---Type <return> to continue, or q <return> to quit---
          0x7f1c880d45b1 <_PyEval_EvalFrameDefault+20337> <repeats 94 times>}
#8  0x00007f1c881e95ec in _PyEval_EvalCodeWithName (_co=0x7f1c7beffd20, globals=<optimized out>, 
    locals=<optimized out>, args=args@entry=0x0, argcount=argcount@entry=0, kwnames=kwnames@entry=0x0, kwargs=0x0, 
    kwcount=0, kwstep=2, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0, name=0x0, qualname=0x0)
    at ../Python/ceval.c:3930
        co = 0x7f1c7beffd20
        f = 0x5623945bc020
        retval = 0x0
        fastlocals = 0x5623945bc188
        freevars = 0x5623945bc188
        tstate = 0x562393c5ffd0
        x = <optimized out>
        u = <optimized out>
        total_args = <optimized out>
        i = <optimized out>
        n = 0
        kwdict = 0x0
#9  0x00007f1c881e971e in PyEval_EvalCodeEx (_co=<optimized out>, globals=<optimized out>, locals=<optimized out>, 
    args=args@entry=0x0, argcount=argcount@entry=0, kws=kws@entry=0x0, kwcount=0, defs=0x0, defcount=0, kwdefs=0x0, 
    closure=0x0) at ../Python/ceval.c:3959
No locals.
#10 0x00007f1c881e974b in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>)
    at ../Python/ceval.c:524
No locals.
#11 0x00007f1c8b792a5d in Gui::InteractiveInterpreter::runCode (this=0x5623940cc410, code=0x7f1c7beffd20)
    at /mnt/source/src/Gui/PythonConsole.cpp:327
        lock = {gstate = PyGILState_LOCKED}
        module = 0x7f1c8c886b30
        dict = 0x7f1c8c894b40
        presult = 0x7f1c7beffd20
#12 0x00007f1c8b7928de in Gui::InteractiveInterpreter::runSource (this=0x5623940cc410, 
    source=0x562395f45f88 "Import.open(u\"/mnt/files/Nova_C_Wall.stp\")") at /mnt/source/src/Gui/PythonConsole.cpp:305
        lock = {gstate = PyGILState_LOCKED}
        code = 0x7f1c7beffd20
#13 0x00007f1c8b7930b1 in Gui::InteractiveInterpreter::push (this=0x5623940cc410, 
    line=0x56239407d0e8 "Import.open(u\"/mnt/files/Nova_C_Wall.stp\")") at /mnt/source/src/Gui/PythonConsole.cpp:387
        more = false
        source = {static null = {<No data fields>}, d = 0x562395204de0}
#14 0x00007f1c8b7951e6 in Gui::PythonConsole::runSource (this=0x5623940d6bd0, line=...)
---Type <return> to continue, or q <return> to quit---
    at /mnt/source/src/Gui/PythonConsole.cpp:834
        incomplete = false
        lock = {gstate = PyGILState_UNLOCKED}
        default_stdout = 0x562393d58a18
        default_stderr = 0x562393d58a18
#15 0x00007f1c8b79479d in Gui::PythonConsole::keyPressEvent (this=0x5623940d6bd0, e=0x7ffc3ffc42f0)
    at /mnt/source/src/Gui/PythonConsole.cpp:628
        inputBlock = {p = 0x5623940eaad0, n = 8}
        inputLine = {static null = {<No data fields>}, d = 0x56239509a480}
        inputStrg = {static null = {<No data fields>}, d = 0x562394c326c0}
        restartHistory = true
        cursor = {d = {d = 0x56239509d9a0}}
        inputLineBegin = {d = {d = 0x562395f47080}}
#16 0x00007f1c850174d7 in QWidget::event(QEvent*) () from /usr/local/Qt-5/lib/libQt5Widgets.so.5
No symbol table info available.
#17 0x00007f1c850bd83e in QFrame::event(QEvent*) () from /usr/local/Qt-5/lib/libQt5Widgets.so.5
No symbol table info available.
#18 0x00007f1c850c0523 in QAbstractScrollArea::event(QEvent*) () from /usr/local/Qt-5/lib/libQt5Widgets.so.5
No symbol table info available.
#19 0x00007f1c85185035 in QPlainTextEdit::event(QEvent*) () from /usr/local/Qt-5/lib/libQt5Widgets.so.5
No symbol table info available.
#20 0x00007f1c84fd7f1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/local/Qt-5/lib/libQt5Widgets.so.5
No symbol table info available.

<!------ SNIPPED ------->

#40 0x0000562392b83bd0 in main (argc=2, argv=0x7ffc3ffc5dd8) at /mnt/source/src/Main/MainGui.cpp:301
        stdcout = {<std::basic_streambuf<char, std::char_traits<char> >> = {<No data fields>}, buffer = ""}
        stdclog = {<std::basic_streambuf<char, std::char_traits<char> >> = {<No data fields>}, buffer = ""}
        stdcerr = {<std::basic_streambuf<char, std::char_traits<char> >> = {<No data fields>}, buffer = ""}
        oldcout = 0x7f1c837c86e0
        oldclog = 0x7f1c837c8620
        oldcerr = 0x7f1c837c8620

User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: [Import] Segmentation fault when import STEP file

Post by Kunda1 »

Confirmed crash on
OS: Manjaro Linux (KDE//usr/share/xsessions/plasma)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.22262 (Git) AppImage
Build type: Release
Branch: master
Hash: f56825c79f11b75648a7a0dcc8a9f52bb4574e61
Python version: 3.8.5
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United States (en_US)

Couldn't generate a proper backtrace with gdb
Here's the normal crash output:

Code: Select all

<Import> ImportOCAF2.cpp(541): free shape count 7
Program received signal SIGSEGV, Segmentation fault.
#0  /usr/lib/libc.so.6(+0x3c3e0) [0x7f0c4dc7b3e0]
#1  /tmp/.mount_FreeCAdnBUEm/usr/lib/Import.so(+0x2f9c2) [0x7f0bf47899c2]
#2  /tmp/.mount_FreeCAdnBUEm/usr/lib/Import.so(+0x24a5d) [0x7f0bf477ea5d]
#3  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADBase.so(method_keyword_call_handler+0x375) [0x7f0c4f719c05]
#4  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libpython3.8.so.1.0(PyCFunction_Call+0x66) [0x7f0c4fe96656]
#5  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libpython3.8.so.1.0(_PyObject_MakeTpCall+0x250) [0x7f0c4fe4b860]
#6  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x4e26) [0x7f0c4feda066]
#7  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x2e2) [0x7f0c4fe480f2]
#8  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libpython3.8.so.1.0(PyEval_EvalCodeEx+0x44) [0x7f0c4fe48db4]
#9  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libpython3.8.so.1.0(PyEval_EvalCode+0x1c) [0x7f0c4fefe7bc]
#10  0x7f0c506c1a65 in Gui::InteractiveInterpreter::runCode(PyCodeObject*) const from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0x65
#11  0x7f0c506c2024 in Gui::InteractiveInterpreter::runSource(char const*) const from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0xa4
#12  0x7f0c506c329d in Gui::InteractiveInterpreter::push(char const*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0xbd
#13  0x7f0c506c3cc4 in Gui::PythonConsole::runSource(QString const&) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0xf4
#14  0x7f0c506c993a in Gui::PythonConsole::keyPressEvent(QKeyEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0x67a
#15  0x7f0c4e9d0cbe in QWidget::event(QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0x14e
#16  0x7f0c4ea3a875 in QFrame::event(QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0x27
#17  0x7f0c4ea3cf33 in QAbstractScrollArea::event(QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0x50d
#18  0x7f0c4eac26d8 in QPlainTextEdit::event(QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0x214
#19  0x7f0c4e9a582a in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0xde
#20  0x7f0c4e9a9dd6 in QApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0x4de
#21  0x7f0c504b8999 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0x89
#22  0x7f0c4e17c186 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Core.so.5+0x88
#23  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5(+0x1b063c) [0x7f0c4e9e163c]
#24  0x7f0c4e9a582a in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0xde
#25  0x7f0c4e9ab3f1 in QApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Widgets.so.5+0x1af9
#26  0x7f0c504b8999 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0x89
#27  0x7f0c4e17c186 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Core.so.5+0x88
#28  0x7f0c4e520326 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Gui.so.5+0xce
#29  0x7f0c4e523001 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Gui.so.5+0x17f
#30  0x7f0c4e50fdd4 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Gui.so.5+0x64
#31  /tmp/.mount_FreeCAdnBUEm/usr/plugins/platforms/../../lib/libQt5XcbQpa.so.5(+0x5af0e) [0x7f0c4a0cbf0e]
#32  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/./libglib-2.0.so.0(g_main_context_dispatch+0x2cb) [0x7f0c4b227b3b]
#33  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/./libglib-2.0.so.0(+0x54d81) [0x7f0c4b227d81]
#34  /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/./libglib-2.0.so.0(g_main_context_iteration+0x2e) [0x7f0c4b227e0e]
#35  0x7f0c4e1ab42b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Core.so.5+0x63
#36  0x7f0c4e178bc1 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Core.so.5+0x187
#37  0x7f0c4e17ca39 in QCoreApplication::exec() from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libQt5Core.so.5+0x105
#38  0x7f0c50430c82 in Gui::Application::runApplication() from /tmp/.mount_FreeCAdnBUEm/usr/bin/../lib/libFreeCADGui.so+0x15a2
#39  /tmp/.mount_FreeCAdnBUEm/usr/bin/freecad(+0x37cd) [0x55ddf91967cd]
#40  /usr/lib/libc.so.6(__libc_start_main+0xf2) [0x7f0c4dc66002]
#41  /tmp/.mount_FreeCAdnBUEm/usr/bin/freecad(+0x4521) [0x55ddf9197521]
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
amrit3701
Posts: 343
Joined: Mon Jun 13, 2016 5:37 pm

Re: [Import] Segmentation fault when import STEP file

Post by amrit3701 »

openBrain wrote: Wed Aug 05, 2020 10:53 am ATM I can't confirm the problem. I tested in Python console and

Code: Select all

>>> import Import
>>> Import.open(u"/tmp/Nova_C_Wall.stp")
perfectly works. :?
Hi,

I after a lot of debugging, I found that this Segmentation fault comes only on Linux machine when FreeCAD run in console mode ("FreeCADCmd"). Suppose we are running FreeCAD in console mode and STEP file has more than one object, then it raises Segmentation error and if STEP file have only single object, then it successfully imported.

Here is the basic model:
Screenshot 2020-08-21 at 4.02.47 PM.png
Screenshot 2020-08-21 at 4.02.47 PM.png (178.46 KiB) Viewed 9875 times

FreeCAD FCStd file:
basic_shapes.FCStd
(4.82 KiB) Downloaded 77 times

STEP file (generated from basic_shapes.FCStd):
basic_shapes.step
(23.19 KiB) Downloaded 77 times


Tree Structure after opening `basic_shapes.step` file on MacOS (FreeCAD GUI):
Screenshot 2020-08-21 at 4.03.14 PM.png
Screenshot 2020-08-21 at 4.03.14 PM.png (132.77 KiB) Viewed 9875 times

Tree Structure after opening `basic_shapes.step` file on Linux (FreeCAD GUI):
after_opeing_basic_shape_on_ubuntu.png
after_opeing_basic_shape_on_ubuntu.png (224.49 KiB) Viewed 9875 times

So on Linux machine, FreeCAD compound the list of shapes present in STEP file but on MacOS its showing different objects.


Logs on opening basic_shape.STEP file on Linux:

Code: Select all

λ ~/Desktop/squashfs-root/usr/bin/ ./freecadcmd
FreeCAD 0.19, Libs: 0.19R22262 (Git)
(c) Juergen Riegel, Werner Mayer, Yorik van Havre and others 2001-2020
FreeCAD is free and open-source software licensed under the terms of LGPL2+ license.
FreeCAD wouldn't be possible without FreeCAD community.
  #####                 ####  ###   ####  
  #                    #      # #   #   # 
  #     ##  #### ####  #     #   #  #   # 
  ####  # # #  # #  #  #     #####  #   # 
  #     #   #### ####  #    #     # #   # 
  #     #   #    #     #    #     # #   #  ##  ##  ##
  #     #   #### ####   ### #     # ####   ##  ##  ##

[FreeCAD Console mode <Use Ctrl-D (i.e. EOF) to exit.>]
>>> import FreeCAD, Part, Import
>>> FreeCAD.Version()
['0', '19', '22262 (Git)', '/home/conda/feedstock_root/build_artifacts/git_cache/github.com/FreeCAD/FreeCAD master', '2020/08/14 13:37:14', 'master', 'f56825c79f11b75648a7a0dcc8a9f52bb4574e61']
>>> Part.OCC_VERSION
'7.4.0'
>>> Import.open(u"/home/preetpal/Desktop/basic_shapes.step")
...
Reading STEP file......
Importing......							
<Import> ImportOCAF2.cpp(541): free shape count 3
Program received signal SIGSEGV, Segmentation fault..0 %)	
#0  /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20) [0x7f22222c9f20]
#1  [0x55c0ac225860]
λ ~/Desktop/squashfs-root/usr/bin/
Logs on opening basic_shapes.STEP of MacOS:

Code: Select all

λ /Applications/FreeCAD.app/Contents/Resources/bin/ ./freecadcmd
FreeCAD 0.19, Libs: 0.19R22262 (Git)
(c) Juergen Riegel, Werner Mayer, Yorik van Havre and others 2001-2020
FreeCAD is free and open-source software licensed under the terms of LGPL2+ license.
FreeCAD wouldn't be possible without FreeCAD community.
  #####                 ####  ###   ####
  #                    #      # #   #   #
  #     ##  #### ####  #     #   #  #   #
  ####  # # #  # #  #  #     #####  #   #
  #     #   #### ####  #    #     # #   #
  #     #   #    #     #    #     # #   #  ##  ##  ##
  #     #   #### ####   ### #     # ####   ##  ##  ##

[FreeCAD Console mode <Use Ctrl-D (i.e. EOF) to exit.>]
>>> import FreeCAD, Part
>>> import Import
>>> FreeCAD.Version()
['0', '19', '22262 (Git)', '/Users/runner/miniforge3/conda-bld/git_cache/github.com/FreeCAD/FreeCAD master', '2020/08/14 13:37:14', 'master', 'f56825c79f11b75648a7a0dcc8a9f52bb4574e61']
>>> Part.OCC_VERSION
'7.4.0'
>>> Import.open("/Users/ambu/Documents/bug/basic_shapes.step")
...
Reading STEP file......
[(<Part::PartFeature>, [(0.800000011920929, 0.800000011920929, 0.800000011920929, 0.0)]), (<Part::PartFeature>, [(0.800000011920929, 0.800000011920929, 0.800000011920929, 0.0)])]
>>> FreeCAD.ActiveDocument.Objects
[<Part::PartFeature>, <Part::PartFeature>, <Part object>, <App::Origin object>, <GeoFeature object>, <GeoFeature object>, <GeoFeature object>, <GeoFeature object>, <GeoFeature object>, <GeoFeature object>]
>>> exit()
λ /Applications/FreeCAD.app/Contents/Resources/bin/
I also test this bug on FreeCAD Docker CLI (https://hub.docker.com/r/amrit3701/freecad-cli), and it also failed to open `basic_shapes.step` file.

Too me, maybe there is some check that only executed on MacOS but not on Linux because STEP importer behaves differently on both these OS.


Thanks,
Amritpal Singh
Github, Like my work, sponsor me!
dabomian
Posts: 7
Joined: Tue Apr 16, 2019 12:42 pm

Re: [Import] Segmentation fault when import STEP file

Post by dabomian »

Windows 10 - it works OK

OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.22266 (Git)
Build type: Release
Branch: master
Hash: 1a6bbf8127e8957f64dec5d6d37710542f2a6c83
Python version: 3.8.5
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/Europe (en_150)
Attachments
Windows_test.PNG
Windows_test.PNG (91.03 KiB) Viewed 9849 times
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: [Import] Segmentation fault when import STEP file

Post by vocx »

dabomian wrote: Wed Aug 05, 2020 9:33 am ...
FreeCAD Version
OS: Ubuntu 18.04.4 LTS (ubuntu:GNOME/ubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.
Build type: Release
Branch: unknown
Hash: 76e74294894bbce46d006e149315c6274d206278
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/UnitedStates (en_US)
I cannot reproduce the crash and my version is very similar to yours. I thought that maybe this could be an issue with OCCT 7.3 or OCCT 7.4 but people have reported success and failure with both.

What are the Import_Export_Preferences for STEP files? In my case, the only checkbox enabled is "Enable STEP Compound merge", but the rest are disabled.

Code: Select all

OS: Ubuntu 18.04.5 LTS (ubuntu:GNOME/ubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.22275 (Git)
Build type: Release
Branch: master
Hash: d4a727e7719386835e51c58e6afb95a825029b48
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/UnitedStates (en_US)
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
Post Reply