Hello community,

here is the log from the commit of package cadabra2 for openSUSE:Factory 
checked in at 2017-11-29 10:52:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cadabra2 (Old)
 and      /work/SRC/openSUSE:Factory/.cadabra2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cadabra2"

Wed Nov 29 10:52:20 2017 rev:4 rq:544380 version:2.1.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/cadabra2/cadabra2.changes        2017-11-03 
16:28:56.715267997 +0100
+++ /work/SRC/openSUSE:Factory/.cadabra2.new/cadabra2.changes   2017-11-29 
10:52:22.225280442 +0100
@@ -1,0 +2,7 @@
+Wed Nov 22 09:19:49 UTC 2017 - [email protected]
+
+- Update to version 2.1.6:
+  * Another interim release to fix bugs and sort out the build
+    process on new distros.
+
+-------------------------------------------------------------------

Old:
----
  2.1.6.tar.gz

New:
----
  2.1.7.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cadabra2.spec ++++++
--- /var/tmp/diff_new_pack.Bppapf/_old  2017-11-29 10:52:23.069249823 +0100
+++ /var/tmp/diff_new_pack.Bppapf/_new  2017-11-29 10:52:23.073249678 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           cadabra2
-Version:        2.1.6
+Version:        2.1.7
 Release:        0
 Summary:        A computer algebra system for solving problems in field theory
 License:        GPL-3.0+

++++++ 2.1.6.tar.gz -> 2.1.7.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/CMakeLists.txt 
new/cadabra2-2.1.7/CMakeLists.txt
--- old/cadabra2-2.1.6/CMakeLists.txt   2017-11-01 18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/CMakeLists.txt   2017-11-19 20:27:27.000000000 +0100
@@ -4,7 +4,7 @@
 project(Cadabra)
 set(CADABRA_VERSION_MAJOR 2)
 set(CADABRA_VERSION_MINOR 1)
-set(CADABRA_VERSION_PATCH 6)
+set(CADABRA_VERSION_PATCH 7)
 set(COPYRIGHT_YEARS "2001-2017")
 execute_process(COMMAND git rev-parse --short HEAD OUTPUT_VARIABLE 
GIT_SHORT_SHA     OUTPUT_STRIP_TRAILING_WHITESPACE)
 execute_process(COMMAND git rev-list --count HEAD  OUTPUT_VARIABLE 
GIT_COMMIT_SERIAL OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -70,7 +70,7 @@
        message("-- This is a CentOS system")
    endif(LINUX_ISSUE MATCHES "CentOS")
    if(LINUX_ISSUE MATCHES "Fedora")
-       set(CPACK_GENERATOR   "RPM")
+     set(CPACK_GENERATOR   "RPM")
                 if(LINUX_ISSUE MATCHES "26")
                        message("-- This is a Fedora 26 system")
                        set(CPACK_RPM_PACKAGE_REQUIRES   "python3-libs, pcre, 
gmp, libuuid, sqlite, gtkmm30, boost-system, boost-filesystem, 
boost-program-options, boost-regex, libstdc++, python3-matplotlib, dvipng, 
texlive")
@@ -85,7 +85,17 @@
                        set(CPACK_SYSTEM_NAME "fedora")
                 endif()
    endif()
-else()
+   if(LINUX_ISSUE MATCHES "Scientific")
+       set(CPACK_GENERATOR "RPM")
+       set(CPACK_SYSTEM_NAME "scientific")
+                 if(PACKAGING_MODE)
+                        set(PYTHON_SITE_PATH  
"/usr/lib/python2.7/site-packages")
+                        set(INSTALL_LATEX_DIR  "/usr/share/texmf")
+                 endif()
+                set(CPACK_RPM_PACKAGE_REQUIRES   "python-libs, pcre, gmp, 
libuuid, sqlite, gtkmm30, boost-system, boost-filesystem, 
boost-program-options, boost-regex, libstdc++, python-matplotlib, dvipng, 
texlive")
+       message("-- This is a Scientific Linux system")
+       endif()
+ else()
    if(EXISTS "/etc/issue")
       file(READ "/etc/issue" LINUX_ISSUE)
       if(LINUX_ISSUE MATCHES "openSUSE")
@@ -105,7 +115,12 @@
                  if(LINUX_ISSUE MATCHES "8")
                 set(CPACK_SYSTEM_NAME "jessie")
                         set(CPACK_DEBIAN_PACKAGE_DEPENDS "python3, libpcre3, 
libpcrecpp0, libgmpxx4ldbl, libboost-python1.55.0, libboost-system1.55.0, 
libboost-filesystem1.55.0, libboost-program-options1.55.0, 
libboost-regex1.55.0, libstdc++6, uuid-runtime, libgtkmm-3.0-1, texlive, 
texlive-latex-extra, python3-matplotlib, python3-mpmath, dvipng, python-sympy")
-                message("-- This is a Debian 8.6 system")
+                message("-- This is a Debian 8.x system")
+                 endif()
+                 if(LINUX_ISSUE MATCHES "9")
+                set(CPACK_SYSTEM_NAME "stretch")
+                        set(CPACK_DEBIAN_PACKAGE_DEPENDS "python3, libpcre3, 
libpcrecpp0v5, libgmpxx4ldbl, libboost-python1.62.0, libboost-system1.62.0, 
libboost-filesystem1.62.0, libboost-program-options1.62.0, 
libboost-regex1.62.0, libstdc++6, uuid-runtime, libgtkmm-3.0-1v5, texlive, 
texlive-latex-extra, python3-matplotlib, python3-mpmath, dvipng, python-sympy")
+                message("-- This is a Debian 9.x system")
                  endif()
                endif()
       if(LINUX_ISSUE MATCHES "Ubuntu")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/config/buildbot.sh 
new/cadabra2-2.1.7/config/buildbot.sh
--- old/cadabra2-2.1.6/config/buildbot.sh       2017-11-01 18:34:55.000000000 
+0100
+++ new/cadabra2-2.1.7/config/buildbot.sh       2017-11-19 20:27:27.000000000 
+0100
@@ -53,12 +53,14 @@
 
 # Parameters: VM name, package type, local ssh port, folder name on web server.
 
-#runbuild "Ubuntu_16.04_build" ".deb" 7000 ubuntu1604
-#runbuild "Fedora_24_build" ".rpm" 7001 fedora24
-#runbuild "Mint_18" ".deb" 7002 mint18
-#runbuild "OpenSUSE_Leap" ".rpm" 7003 opensuse421
-#runbuild "CentOS_7" ".rpm" 7004 centos7
-#runbuild "Ubuntu_14.04_build" ".deb" 7005 ubuntu1404
-#runbuild "Fedora_26" ".rpm" 7011 fedora26
+runbuild "Ubuntu_16.04_build" ".deb" 7000 ubuntu1604
+runbuild "Fedora_24_build" ".rpm" 7001 fedora24
+runbuild "Mint_18" ".deb" 7002 mint18
+runbuild "OpenSUSE_Leap" ".rpm" 7003 opensuse421
+runbuild "CentOS_7" ".rpm" 7004 centos7
+runbuild "Ubuntu_14.04_build" ".deb" 7005 ubuntu1404
+runbuild "Fedora_26" ".rpm" 7011 fedora26
 runbuild "Ubuntu_17.10" ".deb" 7012 ubuntu1710
-#runbuild "Debian86" ".deb" 7006 debian86
+runbuild "Debian86" ".deb" 7006 debian86
+runbuild "Scientific_Linux_74" ".rpm" 7013 scientific74
+runbuild "Debian_921" ".deb" 7014 debian9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/config/buildpkg.sh 
new/cadabra2-2.1.7/config/buildpkg.sh
--- old/cadabra2-2.1.6/config/buildpkg.sh       2017-11-01 18:34:55.000000000 
+0100
+++ new/cadabra2-2.1.7/config/buildpkg.sh       2017-11-19 20:27:27.000000000 
+0100
@@ -16,7 +16,7 @@
       cmake .. -DPACKAGING_MODE=ON -DCMAKE_INSTALL_PREFIX=/usr
    fi
 else
-   cmake ..
+   cmake .. -DPACKAGING_MODE=ON -DCMAKE_INSTALL_PREFIX=/usr
 fi
 make
 sudo cpack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/core/Cleanup.cc 
new/cadabra2-2.1.7/core/Cleanup.cc
--- old/cadabra2-2.1.6/core/Cleanup.cc  2017-11-01 18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/core/Cleanup.cc  2017-11-19 20:27:27.000000000 +0100
@@ -6,6 +6,7 @@
 #include "properties/SelfAntiCommuting.hh"
 #include "properties/Diagonal.hh"
 #include "properties/ExteriorDerivative.hh"
+#include "properties/DifferentialForm.hh"
 #include "properties/KroneckerDelta.hh"
 #include "properties/NumericalFlat.hh"
 #include "properties/PartialDerivative.hh"
@@ -158,17 +159,29 @@
                        }
                }
 
-       // Turn wedge products containing two identical siblings to zero.
+       // Turn wedge products containing two identical siblings of odd degree 
to zero.
        if(nm=="\\wedge") {
                auto s1=tr.begin(it);
                auto s2=s1;
                ++s2;
                while(s2!=tr.end(it)) {
                        if(subtree_compare(0, s1, s2)==0) {
-                               tr.erase_children(it);
-                               zero(it->multiplier);
-                               ret=true;                               
-                               break;
+                               auto df1 = 
k.properties.get<DifferentialForm>(s1);
+                               auto df2 = 
k.properties.get<DifferentialForm>(s2);
+                               if(df1 && df2) {
+                                       auto degree1 = 
df1->degree(k.properties, s1);
+                                       auto degree2 = 
df2->degree(k.properties, s2);
+                                       if(degree1.is_rational() && 
degree2.is_rational()) {
+                                               long d1 = 
to_long(degree1.to_rational());
+                                               long d2 = 
to_long(degree2.to_rational());
+                                               if(d1==d2 && d1%2==1) {
+                                                       tr.erase_children(it);
+                                                       zero(it->multiplier);
+                                                       ret=true;               
                
+                                                       break;
+                                                       }
+                                               }
+                                       }
                                }
                        ++s2;
                        ++s1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/core/Compare.cc 
new/cadabra2-2.1.7/core/Compare.cc
--- old/cadabra2-2.1.6/core/Compare.cc  2017-11-01 18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/core/Compare.cc  2017-11-19 20:27:27.000000000 +0100
@@ -1247,8 +1247,9 @@
                        return 1;
                else {
                        if(Ex::is_head(one) || 
*(Ex::parent(one)->name)=="\\wedge") {
-//                             if(df1->degree.is_rational()==false || 
df2->degree.is_rational()==false)
-//                                     throw NotYetImplemented("Cannot yet 
order forms with non-numerical degrees");
+                               if(df1->degree(properties, 
one).is_rational()==false ||
+                                       df2->degree(properties, 
two).is_rational()==false)
+                                       return 0; // Cannot yet order forms 
with non-numerical degrees.
                                long d1 = to_long(df1->degree(properties, 
one).to_rational());
                                long d2 = to_long(df2->degree(properties, 
two).to_rational());
                                if( (d1*d2) % 2 == 1) return -1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/core/DisplaySympy.cc 
new/cadabra2-2.1.7/core/DisplaySympy.cc
--- old/cadabra2-2.1.6/core/DisplaySympy.cc     2017-11-01 18:34:55.000000000 
+0100
+++ new/cadabra2-2.1.7/core/DisplaySympy.cc     2017-11-19 20:27:27.000000000 
+0100
@@ -76,7 +76,12 @@
 
                {"\\partial", "Derivative"},
                {"\\dot",     "dot"},
-               {"\\ddot",    "ddot"}
+               {"\\ddot",    "ddot"},
+
+               // A few symbols are reserved by sympy.
+               {"N", "sympyN"},
+               {"O", "sympyO"},
+               {"S", "sympyS"}
                };
        }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/core/SympyCdb.cc 
new/cadabra2-2.1.7/core/SympyCdb.cc
--- old/cadabra2-2.1.6/core/SympyCdb.cc 2017-11-01 18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/core/SympyCdb.cc 2017-11-19 20:27:27.000000000 +0100
@@ -11,7 +11,7 @@
 
 using namespace cadabra;
 
-//#define DEBUG
+// #define DEBUG
 
 Ex::iterator sympy::apply(const Kernel& kernel, Ex& ex, Ex::iterator& it, 
const std::vector<std::string>& wrap, const std::string& args, 
                                                                  const 
std::string& method)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/examples/exterior.cnb 
new/cadabra2-2.1.7/examples/exterior.cnb
--- old/cadabra2-2.1.6/examples/exterior.cnb    2017-11-01 18:34:55.000000000 
+0100
+++ new/cadabra2-2.1.7/examples/exterior.cnb    2017-11-19 20:27:27.000000000 
+0100
@@ -110,7 +110,7 @@
                                {
                                        "cell_origin" : "server",
                                        "cell_type" : "latex_view",
-                                       "source" : 
"\\begin{dmath*}{}\\text{Attached property ExteriorDerivative to~}{\\rm 
d}{\\#}.\\end{dmath*}"
+                                       "source" : 
"\\begin{dmath*}{}\\text{Attached property ExteriorDerivative 
to~}d{\\#}.\\end{dmath*}"
                                }
                        ],
                        "source" : 
"d{#}::ExteriorDerivative;\nd{#}::LaTeXForm(\"{\\rm d}\")."
@@ -266,7 +266,7 @@
                                {
                                        "cell_origin" : "server",
                                        "cell_type" : "latex_view",
-                                       "source" : 
"\\begin{dmath*}{}\\text{Attached property Indices(position=free) 
to~}\\left\\{a, \\linebreak[0] b, \\linebreak[0] c\\right\\}.\\end{dmath*}"
+                                       "source" : 
"\\begin{dmath*}{}\\text{Attached property Indices(position=free) 
to~}\\left[a,~\\discretionary{}{}{} b,~\\discretionary{}{}{} 
c\\right].\\end{dmath*}"
                                },
                                {
                                        "cell_origin" : "server",
@@ -346,11 +346,11 @@
                                {
                                        "cell_origin" : "client",
                                        "cell_type" : "latex_view",
-                                       "source" : "Some more random assorted 
ramblings below, not finished yet."
+                                       "source" : "Some more random assorted 
ramblings below, not finished yet!!!"
                                }
                        ],
                        "hidden" : true,
-                       "source" : "Some more random assorted ramblings below, 
not finished yet."
+                       "source" : "Some more random assorted ramblings below, 
not finished yet!!!"
                },
                {
                        "cell_origin" : "client",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/tests/derivative.cdb 
new/cadabra2-2.1.7/tests/derivative.cdb
--- old/cadabra2-2.1.6/tests/derivative.cdb     2017-11-01 18:34:55.000000000 
+0100
+++ new/cadabra2-2.1.7/tests/derivative.cdb     2017-11-19 20:27:27.000000000 
+0100
@@ -644,3 +644,17 @@
     print("Test 38 passed")        
 
 test38()
+
+def test39():        
+    __cdbkernel__=create_scope()
+    A0::DifferentialForm(degree=0).        
+    A1::DifferentialForm(degree=1).
+    A2::DifferentialForm(degree=2).
+    A3::DifferentialForm(degree=3).        
+    ex:= A3 ^ A1 - A1 ^ A3 + A2 ^ A2 ^ A0;
+    sort_product(_);
+    tst:= - 2 A1 ^ A3 + A0 ^ A2 ^ A2 - @(ex);
+    assert(tst==0)
+    print("Test 39 passed")        
+
+test39()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/web2/CMakeLists.txt 
new/cadabra2-2.1.7/web2/CMakeLists.txt
--- old/cadabra2-2.1.6/web2/CMakeLists.txt      2017-11-01 18:34:55.000000000 
+0100
+++ new/cadabra2-2.1.7/web2/CMakeLists.txt      2017-11-19 20:27:27.000000000 
+0100
@@ -21,6 +21,7 @@
   string_states
   bianchi_identities
   schwarzschild
+  exterior
   kaluza_klein
   plotting
   scalar_manipulations
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/web2/cadabra2/source/download.html 
new/cadabra2-2.1.7/web2/cadabra2/source/download.html
--- old/cadabra2-2.1.6/web2/cadabra2/source/download.html       2017-11-01 
18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/web2/cadabra2/source/download.html       2017-11-19 
20:27:27.000000000 +0100
@@ -23,47 +23,50 @@
 </p>
 
 <table class="packages">
-  <tr><th>distribution</th><th>package</th></tr>
+  <tr><th>distribution</th></tr>
   <tr>
-        <td class="system">&bullet; Ubuntu Trusty Tahr 14.04</td>
-        <td><a href="/packages/ubuntu1404">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/ubuntu1404">Ubuntu 
Trusty Tahr 14.04</a></td>
   </tr>
   <tr>
-        <td class="system">&bullet; Ubuntu Xenial Xerus 16.04</td>
-        <td><a href="/packages/ubuntu1604">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/ubuntu1604">Ubuntu 
Xenial Xerus 16.04</a></td>
   </tr>
   <tr>
-        <td class="system">&bullet; Ubuntu Artful Aardvark 17.10</td>
-        <td><a href="/packages/ubuntu1710">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/ubuntu1710">Ubuntu 
Artful Aardvark 17.10</a></td>
   </tr>
   <tr>
-        <td class="system">&bullet; Fedora 24</td>
-        <td><a href="/packages/fedora24">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/fedora24">Fedora 
24</a></td>
   </tr>
   <tr>
-        <td class="system">&bullet; Fedora 26</td>
-        <td><a href="/packages/fedora26">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/fedora26">Fedora 
26</a></td>
   </tr>
   <tr>
-        <td class="system">&bullet; Mint Sarah 18</td>
-        <td><a href="/packages/mint18">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/mint18">Mint Sarah 
18</a></td>
   </tr>
   <tr>
-        <td class="system">&bullet; CentOS 7 / Scientific Linux 7</td>
-        <td><a href="/packages/centos7">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/centos7">CentOS 
7</a></td>
   </tr>
   <tr>
         <td colspan=2 class="instructions">
                After installation you also need to run<br/>
-        <code>sudo yum install epel-release</code><br/><code>sudo yum
-        install python-pip</code><br/><code>sudo pip install
-        sympy</code><br/>
+        <code>sudo yum install epel-release; sudo yum
+        install python-pip; sudo pip install sympy</code><br/>
         in order to enable component computations.
         </td>
   </tr>
   <tr>
-        <td class="system">&bullet; OpenSUSE Leap 42.1</td>
-        <td><a href="/packages/opensuse421">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/scientific7x">Scientific
+                 Linux 7x</a></td>
+  </tr>
+  <tr>
+        <td colspan=2 class="instructions">
+               After installation you also need to run<br/>
+        <code>sudo yum install epel-release; sudo yum
+        install python-pip; sudo pip install sympy</code><br/>
+        in order to enable component computations.
+        </td>
+  </tr>
+  <tr>
+        <td class="system">&bullet; <a href="/packages/opensuse421">OpenSUSE 
Leap 42.1</a></td>
   </tr>
   <tr>
         <td colspan=2 class="instructions">
@@ -75,8 +78,10 @@
         </td>
   </tr>
   <tr>
-        <td class="system">&bullet; Debian Jessie 8.6</td>
-        <td><a href="/packages/debian86">download folder</a></td>
+        <td class="system">&bullet; <a href="/packages/debian86">Debian Jessie 
8.6</a></td>
+  </tr>
+  <tr>
+        <td class="system">&bullet; <a href="/packages/debian9">Debian Stretch 
9</a></td>
   </tr>
 
 </table>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cadabra2-2.1.6/web2/cadabra2/source/static/styles/cadabra-web.css 
new/cadabra2-2.1.7/web2/cadabra2/source/static/styles/cadabra-web.css
--- old/cadabra2-2.1.6/web2/cadabra2/source/static/styles/cadabra-web.css       
2017-11-01 18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/web2/cadabra2/source/static/styles/cadabra-web.css       
2017-11-19 20:27:27.000000000 +0100
@@ -398,6 +398,8 @@
 table.packages code {
         font-size: 12px;
         margin-left: 10px;
+        margin-top: 0px;
+        margin-bottom:0px;
 }
 
 /* Young tableaux */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cadabra2-2.1.6/web2/cadabra2/source/tutorials.html 
new/cadabra2-2.1.7/web2/cadabra2/source/tutorials.html
--- old/cadabra2-2.1.6/web2/cadabra2/source/tutorials.html      2017-11-01 
18:34:55.000000000 +0100
+++ new/cadabra2-2.1.7/web2/cadabra2/source/tutorials.html      2017-11-19 
20:27:27.000000000 +0100
@@ -120,7 +120,7 @@
   <a href="notebooks/string_states.cnb">download notebook</a>
 </div>
 
-<h2>Abstract general relativity</h2>
+<h2>Abstract general relativity and differential geometry</h2>
 <p>
   Cadabra was originally written in order to facilitate computations
   in extensions of general relativity. The following example shows how
@@ -132,6 +132,14 @@
   <a href="notebooks/bianchi_identities.html">read online</a>
   <a href="notebooks/bianchi_identities.cnb">download notebook</a>
 </div>
+<p>
+  You can also do computations with abstract differential forms and
+  the exterior derivative, as in the example below.
+<div class="view_options">
+  <span>Differential forms:</span>
+  <a href="notebooks/exterior.html">read online</a>
+  <a href="notebooks/exterior.cnb">download notebook</a>
+</div>
 </p>
 
 <h2>Component computations</h2>


Reply via email to