Fenics-basix

Latest version: v0.8.0

Safety actively analyzes 629723 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

0.8.0

What's Changed
* Switch from pybind11 to nanobind by chrisrichardson in https://github.com/FEniCS/basix/pull/676
* Update version to 0.8.0 by jhale in https://github.com/FEniCS/basix/pull/710
* use blocked element when creating a quadrature element with value shape by mscroggs in https://github.com/FEniCS/basix/pull/711
* Add Spack test to CI by garth-wells in https://github.com/FEniCS/basix/pull/712
* Update Spack test by garth-wells in https://github.com/FEniCS/basix/pull/713
* Update UFL element by mscroggs in https://github.com/FEniCS/basix/pull/703
* reset branches by mscroggs in https://github.com/FEniCS/basix/pull/714
* Remove `setup.py` by garth-wells in https://github.com/FEniCS/basix/pull/715
* Use scikit-build-core to handle minimums. by jhale in https://github.com/FEniCS/basix/pull/716
* Add CI workflow trigger by garth-wells in https://github.com/FEniCS/basix/pull/723
* Improve nanobind bindings and memory management by garth-wells in https://github.com/FEniCS/basix/pull/724
* Use absolute imports in place of relative imports by garth-wells in https://github.com/FEniCS/basix/pull/727
* Allow Spack ci to test specific Basix version by garth-wells in https://github.com/FEniCS/basix/pull/728
* Update install docs by garth-wells in https://github.com/FEniCS/basix/pull/720
* Fix __hash__ and __eq__ for basix.ufl elements by conpierce8 in https://github.com/FEniCS/basix/pull/718
* set gdim equal to tdim by default by mscroggs in https://github.com/FEniCS/basix/pull/729
* rename highest_degree and highest_complete_degree by mscroggs in https://github.com/FEniCS/basix/pull/731
* reset branches by mscroggs in https://github.com/FEniCS/basix/pull/732
* Throw error when trying to create BDM degree 0 by mscroggs in https://github.com/FEniCS/basix/pull/730
* implement embedded degrees for quadrature element by mscroggs in https://github.com/FEniCS/basix/pull/733
* add basix_map_type method by mscroggs in https://github.com/FEniCS/basix/pull/734
* remove unused functions by mscroggs in https://github.com/FEniCS/basix/pull/736
* Add name property to all enums by chrisrichardson in https://github.com/FEniCS/basix/pull/735
* Update wheel build action. by jhale in https://github.com/FEniCS/basix/pull/709
* Enable merge queue by garth-wells in https://github.com/FEniCS/basix/pull/737
* Update OMPI environment variables in DOLFINx integration for openmpi v5 by francesco-ballarin in https://github.com/FEniCS/basix/pull/739
* Rename dof transformation functions by mscroggs in https://github.com/FEniCS/basix/pull/738
* Reset branch name by mscroggs in https://github.com/FEniCS/basix/pull/740
* Add a `pip install --no-build-isolation` test by garth-wells in https://github.com/FEniCS/basix/pull/741
* Fix scikit-build-core version in `pyproject.toml` by garth-wells in https://github.com/FEniCS/basix/pull/745
* Use OpenBLAS in Redhat clone CI by garth-wells in https://github.com/FEniCS/basix/pull/747
* Remove Sphinx Makefile and unpin Sphinx by jhale in https://github.com/FEniCS/basix/pull/744
* More Python versions in wheels by jhale in https://github.com/FEniCS/basix/pull/742
* Update version updater script v2 by jhale in https://github.com/FEniCS/basix/pull/750
* Do not store `.doctrees` binary files on website by francesco-ballarin in https://github.com/FEniCS/basix/pull/751
* Fix Spack CI by garth-wells in https://github.com/FEniCS/basix/pull/753
* Update make_html for new website template by mscroggs in https://github.com/FEniCS/basix/pull/754
* Use lesstall header in web docs by mscroggs in https://github.com/FEniCS/basix/pull/755
* Use jekyll to make website header instead of hacky python code by mscroggs in https://github.com/FEniCS/basix/pull/756
* Add basix_element property to UFL element by mscroggs in https://github.com/FEniCS/basix/pull/757
* Reset branch names by mscroggs in https://github.com/FEniCS/basix/pull/758
* Add `overflow: scroll` to stop sidebar colliding with content in web docs by mscroggs in https://github.com/FEniCS/basix/pull/761
* Add support for float32 and float64 elements from Python by garth-wells in https://github.com/FEniCS/basix/pull/759
* Property fix by garth-wells in https://github.com/FEniCS/basix/pull/762
* Add dtype property to FiniteElement by garth-wells in https://github.com/FEniCS/basix/pull/763
* Fix equality test for different float type elements by garth-wells in https://github.com/FEniCS/basix/pull/764
* Improve type hints by garth-wells in https://github.com/FEniCS/basix/pull/765
* Fix element hash and improve types by garth-wells in https://github.com/FEniCS/basix/pull/766
* Check that dof ordering is the same in element equality check by mscroggs in https://github.com/FEniCS/basix/pull/769
* Wrap functionality in Python with nicer typing and docs by mscroggs in https://github.com/FEniCS/basix/pull/767
* Remove vtk element by mscroggs in https://github.com/FEniCS/basix/pull/770
* Rename keyword argument from lvariant to lagrange_variant by mscroggs in https://github.com/FEniCS/basix/pull/771
* Drop `fenics-devgooglegroups.com` in favor of `fenics-steering-councilgooglegroups.com` by francesco-ballarin in https://github.com/FEniCS/basix/pull/773
* Sonar CI update by garth-wells in https://github.com/FEniCS/basix/pull/775
* Switch to ruff linting by jhale in https://github.com/FEniCS/basix/pull/774
* Bump actions/{download-artifact,upload-artifact} to v4 by francesco-ballarin in https://github.com/FEniCS/basix/pull/777
* Remove packages from pyproject by jhale in https://github.com/FEniCS/basix/pull/743
* Add test_elements.py by mscroggs in https://github.com/FEniCS/basix/pull/778
* add wrap_element function to Basix.UFL by mscroggs in https://github.com/FEniCS/basix/pull/776
* Add Python 3.12 to CI by garth-wells in https://github.com/FEniCS/basix/pull/779
* Add create_tp_element function by mscroggs in https://github.com/FEniCS/basix/pull/780
* Reset branch names by mscroggs in https://github.com/FEniCS/basix/pull/781
* Use black formatting (via ruff) by garth-wells in https://github.com/FEniCS/basix/pull/783
* Improve debug build install instructions. by jhale in https://github.com/FEniCS/basix/pull/784
* Change to the Modified Gram Schmidt algorithm in orthogonalise (679) by ampdes in https://github.com/FEniCS/basix/pull/785
* Fix Python version in `python/pyproject.toml` file by garth-wells in https://github.com/FEniCS/basix/pull/786
* Remove gdim input to UFL elements by mscroggs in https://github.com/FEniCS/basix/pull/772
* Reset CI branches by mscroggs in https://github.com/FEniCS/basix/pull/788
* Improve docstrings and add copyright statements by garth-wells in https://github.com/FEniCS/basix/pull/787
* Fix sonar issues by garth-wells in https://github.com/FEniCS/basix/pull/789
* Correct polyset order in demo by mscroggs in https://github.com/FEniCS/basix/pull/790
* Ruff fixes by garth-wells in https://github.com/FEniCS/basix/pull/791
* Update `mdspan.hpp` by garth-wells in https://github.com/FEniCS/basix/pull/792
* Reset DOLFINx CI branch by garth-wells in https://github.com/FEniCS/basix/pull/793
* Add a hash functions to finite elements by mscroggs in https://github.com/FEniCS/basix/pull/782
* Update cibuildwheel action by jhale in https://github.com/FEniCS/basix/pull/798
* Update `nb::ndarray` constructor in preparation of next nanobind release by francesco-ballarin in https://github.com/FEniCS/basix/pull/799
* Revise transformation names and add docs by garth-wells in https://github.com/FEniCS/basix/pull/802
* reset dolfinx branch by mscroggs in https://github.com/FEniCS/basix/pull/805
* replace `lru_cache` with `cache` by mscroggs in https://github.com/FEniCS/basix/pull/803
* DOF transformation name updates by garth-wells in https://github.com/FEniCS/basix/pull/807
* Small Doxygen config updates by garth-wells in https://github.com/FEniCS/basix/pull/808
* Revert CI to DOLFINx main by garth-wells in https://github.com/FEniCS/basix/pull/809

New Contributors
* conpierce8 made their first contribution in https://github.com/FEniCS/basix/pull/718
* ampdes made their first contribution in https://github.com/FEniCS/basix/pull/785

**Full Changelog**: https://github.com/FEniCS/basix/compare/v0.7.0...v0.8.0

0.7.0

This version of Basix was released alongside UFL `2023.2.0` and FFCx/DOLFINx `v0.7.0` tags.

User facing changes

Iso elements
* Add iso macroelement on an interval by mscroggs in https://github.com/FEniCS/basix/pull/680
* Implement iso element on quadrilateral by mscroggs in https://github.com/FEniCS/basix/pull/683
* Add iso element on hexahedron by mscroggs in https://github.com/FEniCS/basix/pull/684
* Add iso element on a tetrahedron by mscroggs in https://github.com/FEniCS/basix/pull/688

DOF ordering
* Allow permuted dof layout for Lagrange elements by chrisrichardson in https://github.com/FEniCS/basix/pull/654
* Use dof ordering when generating tensor factors by mscroggs in https://github.com/FEniCS/basix/pull/695

UFL wrapper
* Fix degree method in UFL wrapper layer for mixed elements by garth-wells in https://github.com/FEniCS/basix/pull/636
* Fix symmetric tensors by mscroggs in https://github.com/FEniCS/basix/pull/647
* Rename ufl_wrapper -> ufl, and simplify functions in UFL wrapper by mscroggs in https://github.com/FEniCS/basix/pull/655
* Fix blocked element tables by michalhabera in https://github.com/FEniCS/basix/pull/662
* Move QuadratureElement and RealElement from ffcx to Basix by mscroggs in https://github.com/FEniCS/basix/pull/682
* Correct tabulate for blocked elements by mscroggs in https://github.com/FEniCS/basix/pull/698
* Add better warning when using * by mscroggs in https://github.com/FEniCS/basix/pull/701
* Remove rank input to element and blocked_element by mscroggs in https://github.com/FEniCS/basix/pull/708

Installation
* Test scikit-build-core and pyproject.toml for top-level install by chrisrichardson in https://github.com/FEniCS/basix/pull/673
* Enable Python 3.11 by mscroggs in https://github.com/FEniCS/basix/pull/690

Allowing multiple scalar types
* Template polyset over float type by garth-wells in https://github.com/FEniCS/basix/pull/660
* Support `float` and `double` in low-level functions by garth-wells in https://github.com/FEniCS/basix/pull/663
* Template `basix::FiniteElement` over scalar type by garth-wells in https://github.com/FEniCS/basix/pull/664

Performance improvements
* Input orthogonal wcoeffs rather than running `orthogonalise` on input by mscroggs in https://github.com/FEniCS/basix/pull/693

Other changes

* Update `mdspan.hpp` by garth-wells in https://github.com/FEniCS/basix/pull/632
* Run more tests on main by jhale in https://github.com/FEniCS/basix/pull/630
* Dev version bumps by garth-wells in https://github.com/FEniCS/basix/pull/635
* Fix typo in basix.sobolev_spaces module name by francesco-ballarin in https://github.com/FEniCS/basix/pull/638
* Do not run apt-get upgrade in CI by garth-wells in https://github.com/FEniCS/basix/pull/639
* Simplify constructors by chrisrichardson in https://github.com/FEniCS/basix/pull/641
* Fix Sobolev space for discontinuous elements by garth-wells in https://github.com/FEniCS/basix/pull/642
* Remove deprecated funcs by chrisrichardson in https://github.com/FEniCS/basix/pull/643
* Update python create element by chrisrichardson in https://github.com/FEniCS/basix/pull/644
* Simplify transformations by chrisrichardson in https://github.com/FEniCS/basix/pull/646
* Tweak UFL import by mscroggs in https://github.com/FEniCS/basix/pull/650
* Fix bug in N2E on tets: cells are 3D not 2D by mscroggs in https://github.com/FEniCS/basix/pull/653
* Cast scalar types for compatibility by garth-wells in https://github.com/FEniCS/basix/pull/656
* Reset branches in CI by mscroggs in https://github.com/FEniCS/basix/pull/657
* Use np.tile for blocked tabulation by michalhabera in https://github.com/FEniCS/basix/pull/659
* update docs and doc generating script by mscroggs in https://github.com/FEniCS/basix/pull/665
* Update mdspan by garth-wells in https://github.com/FEniCS/basix/pull/666
* Relax some floating point comparisons by garth-wells in https://github.com/FEniCS/basix/pull/670
* Reset FFCx and DOLFINx branches by mscroggs in https://github.com/FEniCS/basix/pull/681
* Seed random test by mscroggs in https://github.com/FEniCS/basix/pull/652
* Fix 685 by mscroggs in https://github.com/FEniCS/basix/pull/686
* Implement degree 0 to 2 macro polynomials on a triangle by mscroggs in https://github.com/FEniCS/basix/pull/687
* Fix compilation with gcc-13 (678) by rmsc in https://github.com/FEniCS/basix/pull/691
* Consistency updates to Python docs by garth-wells in https://github.com/FEniCS/basix/pull/694
* mdspan update by garth-wells in https://github.com/FEniCS/basix/pull/699
* Reset DOLFINx branch to main by garth-wells in https://github.com/FEniCS/basix/pull/700
* Remove IrreducibleInt by mscroggs in https://github.com/FEniCS/basix/pull/702
* use gdim in default shape for an element with a rank by mscroggs in https://github.com/FEniCS/basix/pull/707

New Contributors
* francesco-ballarin made their first contribution in https://github.com/FEniCS/basix/pull/638
* rmsc made their first contribution in https://github.com/FEniCS/basix/pull/691

**Full Changelog**: https://github.com/FEniCS/basix/compare/v0.6.0...v0.7.0

0.6.0

What's Changed
* Update version numbers to v0.5.2.dev0 by jhale in https://github.com/FEniCS/basix/pull/593
* Add Sobolev spaces by mscroggs in https://github.com/FEniCS/basix/pull/589
* reset branches to main by mscroggs in https://github.com/FEniCS/basix/pull/595
* Fix Sobolev space conversion by mscroggs in https://github.com/FEniCS/basix/pull/596
* Make "CG" work and use identity mapping for mixed elements whose subelements all use identity by mscroggs in https://github.com/FEniCS/basix/pull/597
* Add SonarCloud analysis by jhale in https://github.com/FEniCS/basix/pull/601
* use gdim as default for VectorElement (not tdim) by mscroggs in https://github.com/FEniCS/basix/pull/605
* Add deprecation warning when using "CG" by mscroggs in https://github.com/FEniCS/basix/pull/599
* Tidy up CI and packaging by jhale in https://github.com/FEniCS/basix/pull/609
* Don't run SonarCloud on external PRs. by jhale in https://github.com/FEniCS/basix/pull/613
* Try creating ARM MacOS wheels by jhale in https://github.com/FEniCS/basix/pull/390
* Bump version number due to Sobolev space API change. by jhale in https://github.com/FEniCS/basix/pull/614
* Remove unnecessary packages from pyproject by jhale in https://github.com/FEniCS/basix/pull/615
* Optimize num_sub_entities function by tiagovla in https://github.com/FEniCS/basix/pull/616
* Fix mypy (typing.Optional) by mscroggs in https://github.com/FEniCS/basix/pull/618
* Pass manifold cell information to base element of vector elements by jorgensd in https://github.com/FEniCS/basix/pull/617
* reenable mypy checks for Python 3.10 by mscroggs in https://github.com/FEniCS/basix/pull/619
* Fix CI compilers by garth-wells in https://github.com/FEniCS/basix/pull/622
* Run test in serial by garth-wells in https://github.com/FEniCS/basix/pull/623
* Include tensor element symmetry in its hash by TTitscher in https://github.com/FEniCS/basix/pull/620
* Add 'basix' string to element hash by garth-wells in https://github.com/FEniCS/basix/pull/624
* Test with Intel oneAPI and Intel Python. by garth-wells in https://github.com/FEniCS/basix/pull/625
* Fix OneAPI tests by jhale in https://github.com/FEniCS/basix/pull/629
* Bump cmake by jorgensd in https://github.com/FEniCS/basix/pull/627
* Fix oneAPI tests by garth-wells in https://github.com/FEniCS/basix/pull/631

New Contributors
* tiagovla made their first contribution in https://github.com/FEniCS/basix/pull/616
* TTitscher made their first contribution in https://github.com/FEniCS/basix/pull/620

**Full Changelog**: https://github.com/FEniCS/basix/compare/v0.5.1...v0.6.0

0.5.1

Remove Python dependency from the CMake build for the C++ library

0.5.0.post0

**Users should prefer the tag `v0.5.1`.**

This post-release fixed some errors in the Basix wheel build process.

https://github.com/FEniCS/basix/pull/586

The core Basix library is unaffected and users can use `v0.5.0` or `v0.5.0.post0` tags interchangeably.

**Full Changelog**: https://github.com/FEniCS/basix/compare/v0.5.0...v0.5.0.post0

0.5.0

**Users should prefer the tag `v0.5.1`.**

What's Changed
* Fix PyPi wheel upload by jhale in https://github.com/FEniCS/basix/pull/482
* Update basix to 0.4.2.dev0 by jhale in https://github.com/FEniCS/basix/pull/487
* remove numpy version requirement by mscroggs in https://github.com/FEniCS/basix/pull/490
* Do not include `cblas.h` by garth-wells in https://github.com/FEniCS/basix/pull/489
* Turn on mypy checks by mscroggs in https://github.com/FEniCS/basix/pull/491
* Add CPATH to get wheel build working on RedHat by jhale in https://github.com/FEniCS/basix/pull/488
* Remove xarray completely by IgorBaratta in https://github.com/FEniCS/basix/pull/494
* Put true in wrong place in wheel build, fix. by jhale in https://github.com/FEniCS/basix/pull/497
* Add workflow trigger to test dependents against specific versions by garth-wells in https://github.com/FEniCS/basix/pull/496
* Allow UFL and FFCx version to be set when triggering FFCx integration test by garth-wells in https://github.com/FEniCS/basix/pull/499
* FFCx CI fix(handle default case) by garth-wells in https://github.com/FEniCS/basix/pull/500
* Simplify Intel/MKL CI by garth-wells in https://github.com/FEniCS/basix/pull/498
* Allow specification of version in DOLFINx integration test by garth-wells in https://github.com/FEniCS/basix/pull/501
* Bump version to 0.4.3 by jhale in https://github.com/FEniCS/basix/pull/502
* Test version tweaks by jhale in https://github.com/FEniCS/basix/pull/503
* Orthogonalise polynomial sets by mscroggs in https://github.com/FEniCS/basix/pull/495
* Install fixes for new scikit-build by garth-wells in https://github.com/FEniCS/basix/pull/510
* remove "the" from JOSS paper by mscroggs in https://github.com/FEniCS/basix/pull/505
* remove extra {}s in reference in JOSS paper by mscroggs in https://github.com/FEniCS/basix/pull/511
* Add CI to test cmake install by mscroggs in https://github.com/FEniCS/basix/pull/509
* Transpose polysets by mscroggs in https://github.com/FEniCS/basix/pull/512
* Use mdspan in polyset by chrisrichardson in https://github.com/FEniCS/basix/pull/515
* Add Hermite elements by mscroggs in https://github.com/FEniCS/basix/pull/516
* remove ; by mscroggs in https://github.com/FEniCS/basix/pull/521
* add CITATION.cff by mscroggs in https://github.com/FEniCS/basix/pull/522
* Build D to the be the correct shape rather than transposing by mscroggs in https://github.com/FEniCS/basix/pull/520
* Document shapes of xtensors by mscroggs in https://github.com/FEniCS/basix/pull/518
* fix typos in custom element demo by mscroggs in https://github.com/FEniCS/basix/pull/523
* set language to "en" by mscroggs in https://github.com/FEniCS/basix/pull/529
* Correct typing: numpy.ndarray -> numpy.typing.NDArray by mscroggs in https://github.com/FEniCS/basix/pull/527
* Remove logging by mscroggs in https://github.com/FEniCS/basix/pull/528
* Transpose polynomial::tabulate by mscroggs in https://github.com/FEniCS/basix/pull/524
* Add Bernstein variant of Lagrange for simplices by mscroggs in https://github.com/FEniCS/basix/pull/533
* run C++ demos on CI by mscroggs in https://github.com/FEniCS/basix/pull/531
* Automatically generate docs.h by mscroggs in https://github.com/FEniCS/basix/pull/530
* Update `mdspan.hpp` by garth-wells in https://github.com/FEniCS/basix/pull/534
* Attempt at automatic typing for basix by jhale in https://github.com/FEniCS/basix/pull/526
* Run demos on more CI workflows by mscroggs in https://github.com/FEniCS/basix/pull/537
* Remove xtensor code for Lagrange elements by garth-wells in https://github.com/FEniCS/basix/pull/539
* Remove xtensor from BDM by garth-wells in https://github.com/FEniCS/basix/pull/540
* Remove more xtensor by garth-wells in https://github.com/FEniCS/basix/pull/541
* Remove xtensor from `basix::lattice` by garth-wells in https://github.com/FEniCS/basix/pull/542
* make precompute return values clearer by mscroggs in https://github.com/FEniCS/basix/pull/544
* Add VectorElement, TensorElement, MixedElement, etc to UFL wrapper by mscroggs in https://github.com/FEniCS/basix/pull/535
* Reset ffcx branch by mscroggs in https://github.com/FEniCS/basix/pull/547
* Throw runtime error to avoid "may be used uninitialized" warnings by mscroggs in https://github.com/FEniCS/basix/pull/548
* Fix symmetric tensors by mscroggs in https://github.com/FEniCS/basix/pull/549
* Reset FFCx branch by mscroggs in https://github.com/FEniCS/basix/pull/550
* xtensor removal from polynomial code by garth-wells in https://github.com/FEniCS/basix/pull/546
* Reset DOLFINx branch by garth-wells in https://github.com/FEniCS/basix/pull/551
* Remove xtensor from moment code by garth-wells in https://github.com/FEniCS/basix/pull/552
* Remove xtensor from `math` namespace by garth-wells in https://github.com/FEniCS/basix/pull/553
* Remove xtensor from dof-transform code by garth-wells in https://github.com/FEniCS/basix/pull/554
* Final removal of xtensor by garth-wells in https://github.com/FEniCS/basix/pull/555
* Reset DOLFINx branch for CI by garth-wells in https://github.com/FEniCS/basix/pull/557
* Simplify code in `polyset` by garth-wells in https://github.com/FEniCS/basix/pull/558
* Fix overflow problem in matrix-matrix product heuristics by garth-wells in https://github.com/FEniCS/basix/pull/559
* Improve performance of dual matrix construction by garth-wells in https://github.com/FEniCS/basix/pull/561
* Some small optimisations when creating elements by garth-wells in https://github.com/FEniCS/basix/pull/562
* Require C++20 by garth-wells in https://github.com/FEniCS/basix/pull/563
* Revert DOLFINx CI branch back to main by garth-wells in https://github.com/FEniCS/basix/pull/564
* Skip orthogonalisation for Lagrange elements by mscroggs in https://github.com/FEniCS/basix/pull/565
* Make UFL interface consistent with UFL by mscroggs in https://github.com/FEniCS/basix/pull/566
* Only precompute matrices when they are not permutations by mscroggs in https://github.com/FEniCS/basix/pull/567
* Slightly faster `prepare_permutation` by mscroggs in https://github.com/FEniCS/basix/pull/569
* Fix Sphinx version by mscroggs in https://github.com/FEniCS/basix/pull/573
* Update demo by mscroggs in https://github.com/FEniCS/basix/pull/571
* The permutation from an LU decomposition can be used instead of checking the eigenvalues/condition numbers by mscroggs in https://github.com/FEniCS/basix/pull/572
* Change image for DOLFINx integration test by jhale in https://github.com/FEniCS/basix/pull/576
* Simplify prepare_matrix and apply_matrix by mscroggs in https://github.com/FEniCS/basix/pull/577
* remove brackets around asserts by mscroggs in https://github.com/FEniCS/basix/pull/579
* Add `tensor product representation` properties to UFL element wrappers by IgorBaratta in https://github.com/FEniCS/basix/pull/560
* Implement enriched elements by mscroggs in https://github.com/FEniCS/basix/pull/574
* Add long description by chrisrichardson in https://github.com/FEniCS/basix/pull/581


**Full Changelog**: https://github.com/FEniCS/basix/compare/v0.4.2...v0.5.0

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.