On Sat, Oct 19, 2019 at 12:07 AM Sinan Kapçak <sinankap...@gmail.com> wrote: > > on Linux Ubuntu 19.10 - > Sage installed by binaries downloaded by a torrent. > Downloaded and extracted and ./sage.
it would be surprising if a binary for an earlier Ubuntu version worked on 19.10. You might need to build Sage from source... > > > > > *************************************************************************** > > IPython post-mortem report > > {'commit_hash': u'033ab93c7', > 'commit_source': 'installation', > 'default_encoding': 'UTF-8', > 'ipython_path': > '/home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/IPython', > 'ipython_version': '5.8.0', > 'os_name': 'posix', > 'platform': 'Linux-5.3.0-18-generic-x86_64-with-debian-buster-sid', > 'sys_executable': > '/home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/bin/python2', > 'sys_platform': 'linux2', > 'sys_version': '2.7.15 (default, Oct 4 2019, 05:22:55) \n[GCC 7.4.0]'} > > *************************************************************************** > > > > *************************************************************************** > > Crash traceback: > > --------------------------------------------------------------------------- > --------------------------------------------------------------------------- > ImportErrorPython 2.7.15: > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/bin/python2 > Sat Oct 19 01:57:57 2019 > A problem occurred executing Python code. Here is the sequence of function > calls leading up to the error, with the most recent (innermost) call last. > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/src/bin/sage-ipython > in <module>() > 1 #!/usr/bin/env sage-python23 > 2 # -*- coding: utf-8 -*- > 3 """ > 4 Sage IPython startup script. > 5 """ > 6 > 7 # Display startup banner. Do this before anything else to give the > user > 8 # early feedback that Sage is starting. > 9 from sage.misc.banner import banner > 10 banner() > 11 > 12 from sage.repl.interpreter import SageTerminalApp > 13 > 14 app = SageTerminalApp.instance() > ---> 15 app.initialize() > global app.initialize = <bound method SageTerminalApp.initialize of > <sage.repl.interpreter.SageTerminalApp object at 0x7f1a30ef3c50>> > 16 app.start() > > </home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/decorator.py:decorator-gen-110> > in initialize(self=<sage.repl.interpreter.SageTerminalApp object>, argv=None) > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/traitlets/config/application.py > in catch_config_error(method=<function initialize>, > app=<sage.repl.interpreter.SageTerminalApp object>, *args=(None,), > **kwargs={}) > 72 TRAITLETS_APPLICATION_RAISE_CONFIG_FILE_ERROR = False > 73 else: > 74 raise ValueError("Unsupported value for environment variable: > 'TRAITLETS_APPLICATION_RAISE_CONFIG_FILE_ERROR' is set to '%s' which is none > of {'0', '1', 'false', 'true', ''}."% _envvar ) > 75 > 76 > 77 @decorator > 78 def catch_config_error(method, app, *args, **kwargs): > 79 """Method decorator for catching invalid config > (Trait/ArgumentErrors) during init. > 80 > 81 On a TraitError (generally caused by bad config), this will print > the trait's > 82 message, and exit the app. > 83 > 84 For use on init methods, to prevent invoking excepthook on > invalid input. > 85 """ > 86 try: > ---> 87 return method(app, *args, **kwargs) > method = <function initialize at 0x7f1a2d892c80> > app = <sage.repl.interpreter.SageTerminalApp object at 0x7f1a30ef3c50> > args = (None,) > kwargs = {} > 88 except (TraitError, ArgumentError) as e: > 89 app.print_help() > 90 app.log.fatal("Bad config encountered during initialization:") > 91 app.log.fatal(str(e)) > 92 app.log.debug("Config at the time: %s", app.config) > 93 app.exit(1) > 94 > 95 > 96 class ApplicationError(Exception): > 97 pass > 98 > 99 > 100 class LevelFormatter(logging.Formatter): > 101 """Formatter with additional `highlevel` record > 102 > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/IPython/terminal/ipapp.py > in initialize(self=<sage.repl.interpreter.SageTerminalApp object>, argv=None) > 301 > 302 return super(TerminalIPythonApp, > self).parse_command_line(argv) > 303 > 304 @catch_config_error > 305 def initialize(self, argv=None): > 306 """Do actions after construct, but before starting the app.""" > 307 super(TerminalIPythonApp, self).initialize(argv) > 308 if self.subapp is not None: > 309 # don't bother initializing further, starting subapp > 310 return > 311 # print self.extra_args > 312 if self.extra_args and not self.something_to_run: > 313 self.file_to_run = self.extra_args[0] > 314 self.init_path() > 315 # create the shell > --> 316 self.init_shell() > self.init_shell = <bound method SageTerminalApp.init_shell of > <sage.repl.interpreter.SageTerminalApp object at 0x7f1a30ef3c50>> > 317 # and draw the banner > 318 self.init_banner() > 319 # Now a variety of things that happen after the banner is > printed. > 320 self.init_gui_pylab() > 321 self.init_extensions() > 322 self.init_code() > 323 > 324 def init_shell(self): > 325 """initialize the InteractiveShell instance""" > 326 # Create an InteractiveShell instance. > 327 # shell.display_banner should always be False for the terminal > 328 # based app, because we call shell.show_banner() by hand below > 329 # so the banner shows *before* all extension loading stuff. > 330 self.shell = > self.interactive_shell_class.instance(parent=self, > 331 profile_dir=self.profile_dir, > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/repl/interpreter.py > in init_shell(self=<sage.repl.interpreter.SageTerminalApp object>) > 772 self.shell.has_sage_extensions = SAGE_EXTENSION in > self.extensions > 773 > 774 # Load the %lprun extension if available > 775 try: > 776 import line_profiler > 777 except ImportError: > 778 pass > 779 else: > 780 self.extensions.append('line_profiler') > 781 > 782 if self.shell.has_sage_extensions: > 783 self.extensions.remove(SAGE_EXTENSION) > 784 > 785 # load sage extension here to get a crash if > 786 # something is wrong with the sage library > --> 787 > self.shell.extension_manager.load_extension(SAGE_EXTENSION) > self.shell.extension_manager.load_extension = <bound method > ExtensionManager.load_extension of <IPython.core.extensions.ExtensionManager > object at 0x7f1a2b74b550>> > global SAGE_EXTENSION = 'sage' > 788 > 789 > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/IPython/core/extensions.py > in load_extension(self=<IPython.core.extensions.ExtensionManager object>, > module_str='sage') > 70 > 71 Returns the string "already loaded" if the extension is > already loaded, > 72 "no load function" if the module doesn't have a > load_ipython_extension > 73 function, or None if it succeeded. > 74 """ > 75 if module_str in self.loaded: > 76 return "already loaded" > 77 > 78 from IPython.utils.syspathcontext import prepended_to_syspath > 79 > 80 with self.shell.builtin_trap: > 81 if module_str not in sys.modules: > 82 with prepended_to_syspath(self.ipython_extension_dir): > 83 __import__(module_str) > 84 mod = sys.modules[module_str] > ---> 85 if self._call_load_ipython_extension(mod): > self._call_load_ipython_extension = <bound method > ExtensionManager._call_load_ipython_extension of > <IPython.core.extensions.ExtensionManager object at 0x7f1a2b74b550>> > mod = <module 'sage' from > '/home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/__init__.py'> > 86 self.loaded.add(module_str) > 87 else: > 88 return "no load function" > 89 > 90 def unload_extension(self, module_str): > 91 """Unload an IPython extension by its module name. > 92 > 93 This function looks up the extension's name in > ``sys.modules`` and > 94 simply calls ``mod.unload_ipython_extension(self)``. > 95 > 96 Returns the string "no unload function" if the extension > doesn't define > 97 a function to unload itself, "not loaded" if the extension > isn't loaded, > 98 otherwise None. > 99 """ > 100 if module_str not in self.loaded: > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/IPython/core/extensions.py > in > _call_load_ipython_extension(self=<IPython.core.extensions.ExtensionManager > object>, mod=<module 'sage' from > '/home/kapcak/Documents/Sage...al/lib/python2.7/site-packages/sage/__init__.py'>) > 117 """ > 118 from IPython.utils.syspathcontext import prepended_to_syspath > 119 > 120 if (module_str in self.loaded) and (module_str in > sys.modules): > 121 self.unload_extension(module_str) > 122 mod = sys.modules[module_str] > 123 with prepended_to_syspath(self.ipython_extension_dir): > 124 reload(mod) > 125 if self._call_load_ipython_extension(mod): > 126 self.loaded.add(module_str) > 127 else: > 128 self.load_extension(module_str) > 129 > 130 def _call_load_ipython_extension(self, mod): > 131 if hasattr(mod, 'load_ipython_extension'): > --> 132 mod.load_ipython_extension(self.shell) > mod.load_ipython_extension = <function load_ipython_extension at > 0x7f1a31989c08> > self.shell = <sage.repl.interpreter.SageTerminalInteractiveShell > object at 0x7f1a2d893e10> > 133 return True > 134 > 135 def _call_unload_ipython_extension(self, mod): > 136 if hasattr(mod, 'unload_ipython_extension'): > 137 mod.unload_ipython_extension(self.shell) > 138 return True > 139 > 140 def install_extension(self, url, filename=None): > 141 """Download and install an IPython extension. > 142 > 143 If filename is given, the file will be so named (inside the > extension > 144 directory). Otherwise, the name from the URL will be used. > The file must > 145 have a .py or .zip extension; otherwise, a ValueError will be > raised. > 146 > 147 Returns the full path to the installed file. > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/__init__.py > in > load_ipython_extension(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell > object>,)) > 1 __all__ = ['all'] > 2 > 3 # Set sage.__version__ to the current version number. This is > analogous > 4 # to many other Python packages. > 5 from sage.version import version as __version__ > 6 > 7 # Make sure that the correct zlib library is loaded. This is needed > 8 # to prevent the system zlib to be loaded instead of the Sage one. > 9 # See https://trac.sagemath.org/ticket/23122 > 10 import zlib > 11 > 12 # IPython calls this when starting up > 13 def load_ipython_extension(*args): > 14 import sage.repl.ipython_extension > ---> 15 sage.repl.ipython_extension.load_ipython_extension(*args) > sage.repl.ipython_extension.load_ipython_extension = <function > load_ipython_extension at 0x7f1a2f478050> > args = (<sage.repl.interpreter.SageTerminalInteractiveShell object at > 0x7f1a2d893e10>,) > 16 > 17 > 18 # Monkey-patch inspect.isfunction() to support Cython functions. > 19 def isfunction(obj): > 20 """ > 21 Check whether something is a function. > 22 > 23 We assume that anything which has a genuine ``__code__`` > 24 attribute (not using ``__getattr__`` overrides) is a function. > 25 This is meant to support Cython functions. > 26 > 27 EXAMPLES:: > 28 > 29 sage: from inspect import isfunction > 30 sage: def f(): pass > 31 sage: isfunction(f) > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/repl/ipython_extension.py > in wrapper(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell > object>,), **kwargs={}) > 547 ....: if work: > 548 ....: return 'foo worked' > 549 ....: raise RuntimeError("foo didn't work") > 550 sage: foo(False) > 551 Traceback (most recent call last): > 552 ... > 553 RuntimeError: foo didn't work > 554 sage: foo(True) > 555 'foo worked' > 556 sage: foo(False) > 557 sage: foo(True) > 558 """ > 559 @wraps(func) > 560 def wrapper(*args, **kwargs): > 561 if not wrapper.has_run: > --> 562 result = func(*args, **kwargs) > result = undefined > global func = undefined > args = (<sage.repl.interpreter.SageTerminalInteractiveShell object at > 0x7f1a2d893e10>,) > kwargs = {} > 563 wrapper.has_run = True > 564 return result > 565 wrapper.has_run = False > 566 return wrapper > 567 > 568 > 569 @run_once > 570 def load_ipython_extension(ip): > 571 """ > 572 Load the extension in IPython. > 573 """ > 574 # this modifies ip > 575 SageCustomizations(shell=ip) > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/repl/ipython_extension.py > in > load_ipython_extension(ip=<sage.repl.interpreter.SageTerminalInteractiveShell > object>) > 560 def wrapper(*args, **kwargs): > 561 if not wrapper.has_run: > 562 result = func(*args, **kwargs) > 563 wrapper.has_run = True > 564 return result > 565 wrapper.has_run = False > 566 return wrapper > 567 > 568 > 569 @run_once > 570 def load_ipython_extension(ip): > 571 """ > 572 Load the extension in IPython. > 573 """ > 574 # this modifies ip > --> 575 SageCustomizations(shell=ip) > global SageCustomizations = <class > 'sage.repl.ipython_extension.SageCustomizations'> > global shell = undefined > ip = <sage.repl.interpreter.SageTerminalInteractiveShell object at > 0x7f1a2d893e10> > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/repl/ipython_extension.py > in __init__(self=<sage.repl.ipython_extension.SageCustomizations object>, > shell=<sage.repl.interpreter.SageTerminalInteractiveShell object>) > 418 def __init__(self, shell=None): > 419 """ > 420 Initialize the Sage plugin. > 421 """ > 422 self.shell = shell > 423 > 424 self.auto_magics = SageMagics(shell) > 425 self.shell.register_magics(self.auto_magics) > 426 > 427 import sage.misc.edit_module as edit_module > 428 self.shell.set_hook('editor', edit_module.edit_devel) > 429 > 430 self.init_inspector() > 431 self.init_line_transforms() > 432 > --> 433 import sage.all # until sage's import hell is fixed > sage.all = undefined > 434 > 435 self.shell.verbose_quit = True > 436 self.set_quit_hook() > 437 > 438 self.register_interface_magics() > 439 > 440 if SAGE_IMPORTALL == 'yes': > 441 self.init_environment() > 442 > 443 def register_interface_magics(self): > 444 """ > 445 Register magics for each of the Sage interfaces > 446 """ > 447 from sage.repl.interface_magic import InterfaceMagic > 448 InterfaceMagic.register_all(self.shell) > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/all.py > in <module>() > 82 > 83 import sage.misc.lazy_import > 84 from sage.misc.all import * # takes a while > 85 from sage.typeset.all import * > 86 from sage.repl.all import * > 87 > 88 from sage.misc.sh import sh > 89 > 90 from sage.libs.all import * > 91 from sage.data_structures.all import * > 92 from sage.doctest.all import * > 93 > 94 from sage.structure.all import * > 95 from sage.rings.all import * > 96 from sage.arith.all import * > ---> 97 from sage.matrix.all import * > global sage.matrix.all = undefined > 98 > 99 from sage.symbolic.all import * > 100 from sage.modules.all import * > 101 from sage.monoids.all import * > 102 from sage.algebras.all import * > 103 from sage.modular.all import * > 104 from sage.sat.all import * > 105 from sage.schemes.all import * > 106 from sage.graphs.all import * > 107 from sage.groups.all import * > 108 from sage.arith.power import generic_power as power > 109 from sage.databases.all import * > 110 from sage.categories.all import * > 111 from sage.sets.all import * > 112 from sage.probability.all import * > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/matrix/__init__.py > in <module>() > 1 # Resolve a cyclic import > ----> 2 import sage.matrix.args > global sage.matrix.args = undefined > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/matrix/args.pyx > in init sage.matrix.args (build/cythonized/sage/matrix/args.c:21226)() > 10 # This program is free software: you can redistribute it and/or modify > 11 # it under the terms of the GNU General Public License as published by > 12 # the Free Software Foundation, either version 2 of the License, or > 13 # (at your option) any later version. > 14 # http://www.gnu.org/licenses/ > 15 > #***************************************************************************** > 16 > 17 from __future__ import absolute_import, generator_stop > 18 > 19 cimport cython > 20 from cpython.sequence cimport PySequence_Fast > 21 from cysignals.signals cimport sig_check > 22 from cypari2.gen cimport Gen > 23 from cypari2.types cimport typ, t_MAT, t_VEC, t_COL, t_VECSMALL, > t_LIST, t_STR, t_CLOSURE > 24 > ---> 25 from .matrix_space import MatrixSpace > global matrix_space = undefined > global MatrixSpace = undefined > 26 from sage.rings.all import ZZ, RDF, CDF > 27 from sage.structure.coerce cimport (coercion_model, > 28 is_numpy_type, py_scalar_parent) > 29 from sage.structure.element cimport Element, RingElement, Vector > 30 from sage.arith.long cimport pyobject_to_long > 31 from sage.misc.misc_c import sized_iter > 32 from sage.categories import monoids > 33 > 34 > 35 CommutativeMonoids = monoids.Monoids().Commutative() > 36 > 37 > 38 cdef inline bint element_is_scalar(Element x): > 39 """ > 40 Should this element be considered a scalar (as opposed to a > vector)? > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/matrix/matrix_space.py > in <module>() > 31 # (at your option) any later version. > 32 # https://www.gnu.org/licenses/ > 33 # > **************************************************************************** > 34 from __future__ import print_function, absolute_import > 35 from six.moves import range > 36 from six import iteritems, integer_types > 37 > 38 # System imports > 39 import sys > 40 import operator > 41 > 42 # Sage matrix imports > 43 from . import matrix_generic_dense > 44 from . import matrix_generic_sparse > 45 > ---> 46 from . import matrix_modn_sparse > global matrix_modn_sparse = undefined > 47 > 48 from . import matrix_mod2_dense > 49 from . import matrix_gf2e_dense > 50 > 51 from . import matrix_integer_dense > 52 from . import matrix_integer_sparse > 53 > 54 from . import matrix_rational_dense > 55 from . import matrix_rational_sparse > 56 > 57 from . import matrix_polynomial_dense > 58 from . import matrix_mpolynomial_dense > 59 > 60 # Sage imports > 61 from sage.misc.superseded import deprecation > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/matrix/matrix_integer_sparse.pxd > in init sage.matrix.matrix_modn_sparse > (build/cythonized/sage/matrix/matrix_modn_sparse.cpp:16317)() > 1 from sage.modules.vector_integer_sparse cimport mpz_vector > 2 from sage.ext.mod_int cimport mod_int > 3 from .matrix_sparse cimport Matrix_sparse > 4 > ----> 5 cdef class Matrix_integer_sparse(Matrix_sparse): > global cdef = undefined > global Matrix_integer_sparse = undefined > global Matrix_sparse = undefined > 6 cdef mpz_vector* _matrix > 7 > 8 cdef _mod_int_c(self, mod_int p) > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/matrix/matrix_integer_dense.pxd > in init sage.matrix.matrix_integer_sparse > (build/cythonized/sage/matrix/matrix_integer_sparse.cpp:15958)() > 1 from sage.libs.gmp.types cimport * > 2 from sage.libs.flint.types cimport fmpz_mat_t > 3 > 4 from .matrix_dense cimport Matrix_dense > 5 from sage.rings.integer cimport Integer > 6 from sage.ext.mod_int cimport * > 7 > 8 ctypedef long* GEN > 9 > ---> 10 cdef class Matrix_integer_dense(Matrix_dense): > global cdef = undefined > global Matrix_integer_dense = undefined > global Matrix_dense = undefined > 11 cdef fmpz_mat_t _matrix > 12 cdef object _pivots > 13 cdef int mpz_height(self, mpz_t height) except -1 > 14 cdef _mod_int_c(self, mod_int modulus) > 15 cdef _mod_two(self) > 16 cdef _pickle_version0(self) > 17 cdef _unpickle_version0(self, data) > 18 cpdef _export_as_string(self, int base=?) > 19 cdef void set_unsafe_mpz(self, Py_ssize_t i, Py_ssize_t j, const > mpz_t value) > 20 cdef void set_unsafe_si(self, Py_ssize_t i, Py_ssize_t j, long > value) > 21 cdef void set_unsafe_double(self, Py_ssize_t i, Py_ssize_t j, > double value) > 22 cdef inline void get_unsafe_mpz(self, Py_ssize_t i, Py_ssize_t j, > mpz_t value) > 23 cdef inline double get_unsafe_double(self, Py_ssize_t i, > Py_ssize_t j) > 24 > 25 # HNF Modn > 26 cdef int _hnf_modn(Matrix_integer_dense self, > Matrix_integer_dense res, > 27 unsigned int det) except -1 > 28 cdef int* _hnf_modn_impl(Matrix_integer_dense self, unsigned int > det, > 29 Py_ssize_t nrows, Py_ssize_t ncols) except NULL > 30 > 31 cdef Matrix_integer_dense _new(self, Py_ssize_t nrows, Py_ssize_t > ncols) > > /home/kapcak/Documents/Sage89/sage-8.9-Ubuntu_16.04-x86_64/SageMath/local/lib/python2.7/site-packages/sage/matrix/matrix_mod2_dense.pxd > in init sage.matrix.matrix_integer_dense > (build/cythonized/sage/matrix/matrix_integer_dense.c:55466)() > 1 from .matrix_dense cimport Matrix_dense > 2 from sage.libs.m4ri cimport * > 3 > ----> 4 cdef class Matrix_mod2_dense(Matrix_dense): > global cdef = undefined > global Matrix_mod2_dense = undefined > global Matrix_dense = undefined > 5 cdef mzd_t *_entries > 6 cdef object _one > 7 cdef object _zero > 8 > 9 cdef set_unsafe_int(self, Py_ssize_t i, Py_ssize_t j, int value) > 10 > 11 cpdef Matrix_mod2_dense _multiply_m4rm(Matrix_mod2_dense self, > Matrix_mod2_dense right, int k) > 12 cpdef Matrix_mod2_dense _multiply_strassen(Matrix_mod2_dense > self, Matrix_mod2_dense right, int cutoff) > 13 > 14 # For conversion to other systems > 15 cpdef _export_as_string(self) > > ImportError: libpng12.so.0: cannot open shared object file: No such file or > directory > > *************************************************************************** > > History of session input: > *** Last line of input (may not be in above history): > > -- > You received this message because you are subscribed to the Google Groups > "sage-support" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-support+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-support/CAP06J57JrzZvS_fAnPzKatPU5KBv%2BgubrwEoWBe6rnN7bg6S_Q%40mail.gmail.com. -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-support/CAAWYfq16aGbKTb9Ek1Lv_Ea4%3DCTOoaTLx%2B12iNqegXKOEGhYyw%40mail.gmail.com.